Delay Paypal payment - Braintree APIs - laravel

I am developing a website that offers car-washings in all places publicly available through geolocation. However, due to weather instability, bookings can be cancelled at any time; instead of issuing expensive refunds, I would like to charge customers only once the washing has been performed.
I would like to accept Paypal payments and was suggested to use Braintree. Do you know if it is possible to delay charges with Braintree APIs on Paypal accounts?
I use Laravel 5.1.
Thank you

I would recommend using PayPal Preapproval profiles, specifically the Preapproval API to setup the profile, and then you would use the Pay API to process payments using the preapproval key for a given customer.
This PayPal PHP SDK makes all of those API calls very quick and easy, and it's available on Packagist so you can load it up in your composer.json for Laravel and be running in no time.
It has samples and empty templates for you to work with to make the Preapproval and Pay calls.

Related

can we use payment network tokenization in the backened code?

as a part of our project we would like to implement a few more functionalities like Apple Pay,Google Pay and PayPal using autherize.net for billing payment transactions.
In our project we already implemented autherize.net for card payments.
Payment methods are implemented in the backend code side (using Laravel 5.5) with autherize.net APIs.There is no front end code interactions for card payment. User details needed for billing payments like Card details, auth_customer_id etc are fetched (today's user payment transaction due ) by running a crone job everyday.
In Autherize.net documentation it is written Apple Pay uses payment network tokenization.
We would like to know, is it possible to use payment network tokenization in the backend development(using Laravel 5.5) to implement Apple Pay,Google Pay, PayPal for billing payment transactions.

Google Pay or Phone Pay or Paytm UPI API payout in Laravel

I have a customer who have google pay or phone pay or paytm account they give the details of phone number.
Now I need to withdraw the amount from there google pay or phone pay or paytm account without using payment_link.
I could not find it in API Documentation . I want to know if this possible.
Is it possible with Razor pay API payment gateway integration.
I found this link useful But it is using JavaScript. can I do it in using Razor PAY PHP SDK
Google Pay Checkout using Razor Pay
Same way is it possible Phone Pay and Paytm Pay using Razor Pay
I don't know about GPay, Paytm, PhonePe provides withdrawal API or Not. But RazorPay provides it. Please check RazorpayX. I was used RazorPay's Payment Gateway as well as Withdrawals. it is very easy to integrate it
Refer RazorPayX documentation
Updated:- Paytm Now Provides Money Transfer API See Docs link ... when I was integrated paytm payment gateway at there time they was provides only payment gateway. but I check it today they provides more API Support for different different features. check it using above link. may be this one helps to you
I hope this one helps to you
Thank you

How to provide authorization for a Laravel App to charge customer from services and products availed (NOT SUBSCRIPTION OR RECURRING)

I just want to ask how to implement this process in my Laravel 7 app.
On a logged user, he will setup his payment method using Paypal account (some redirection to Paypal page)
After success registration/setup of Paypal account, the app can now charge customer with service/products he availed.
This is not a subscription or recurring payments.
I'm reading the Paypal API Docs but I don't know where should I focus since I don't know the real Paypal Terminology for that kind of process.
NOTE: I already implement this kind of process but on Stripe only where the customer setup his Card or Bank Account then the app can charge the customer.
On PayPal this used to be known as "Reference Transactions with Billing Agreements", and in very new integrations it's called Vault (v2 REST API vault, not the old v1 REST Vault which is of no use)
This functionality is only available if PayPal turns in on for your production account, so you need to contact PayPal about it, specifically the business side of PayPal via https://www.paypal.com/smarthelp/contact-us (not the MTS technical support, they don't enable new features)
If reference transactions does get enabled and approved for your live/production business account (no guarantee of this), then PayPal will guide you on which specific API to use, which could be the newest v2 Vault or something else.

Using cashier capabilities without stripe?

Stripe and Braintree are not available in my location, so I've to use Paypal.
I'm trying to figure out the technicalities and best practices , since it's my first time integrating payments.
I'm also trying to figure how to smoothly go from a register + free access, to register + pay to access
Questions:
I want to make it a smooth transition when I decide to start charging my users for access. What do I need to set-up beforehand? Currently I haven't launched yet so I want to prepare everything I need.
Can I use cashier to manage access for users that paid but while I'm using paypal and not stripe like cashier use? (i mean to use some of cashier functionality).
note: I found a package on github (https://github.com/srmklive/laravel-paypal) that integrates paypal into a laravel app, but it uses a deprecated api from 2017.

Coinbase delay payment

I would like to accept payments in Bitcoin through Coinbase but I would like the charge to happen only after a certain period of time. In fact, the website I manage offers car-washings that, due to weather, can be cancelled at any time; instead of issuing expensive refunds, I have opted for charging customers only once the washing has been performed.
The website is built upon Laravel 5.1 and for Bitcoin payments I would like to use Coinbase as its APIs are very well documented.
Do you know if it is possible to delay payments with Coinbase PHP APIs?
Thank you
There is no direct support for this unfortunately, though it's not hard to issue refunds via the API for orders not completed.

Resources