Using Braintree with Laravel to create customer id to use for future purchases - laravel

Not too long ago Payment gateways allowed you to create customer profile accounts and store their credit card info with the gateway and use the returned customer id to make future purchases with ease.
I am trying to do this with Laravel cashier and Braintree. I followed the docs here https://laravel.com/docs/5.5/billing#braintree-configuration and it set up fine. I am able to do one time charges and subscriptions.
Is there a way to store the customers credit card info on Braintree ( Vault? ) and retrieve it using their customer id everytime they want to buy something?
I can retrieve the Payment Nonce but that seems to be for a one time use.

Since the Laravel Cashier API wrapper provides the ability to create subscriptions within Braintree, it is certainly creating customers with saved payment methods prior to creating the subscriptions, since that is a Braintree requirement.
The Laravel Cashier docs don't show a standalone customer create call, so you may need to use the Braintree Customer Create API Call.

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.

Is creating Stripe Payment Backend API secure?

I want to process Stripe payment to create stripe subscription.
For that I need to pass card number, expiration date, cvc to my backend api.
Is it secure to create Stripe payment this way?
If it is not secure, what methods can I use to secure the subscription request to the backend api?
This is not recommended. Instead, you should collect payment details securely with Stripe Elements (docs)and use the safe IDs returned by that to collect payments.
If you are PCI compliant, you should contact Stripe support for assistance with enabling your account to process card details directly.

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.

Paypal Pre-aapproved Payments with Laravel and handle recuring payments later

My Scenario
I am trying to allow user to add paypal payment methods on my webiste (in Laravel) so later he can use the added payment methods to make payment.
right now i am using the https://github.com/srmklive/laravel-paypal to handle the recurring payment methods but now we want user to add multiple paypal payment methods so when he want to purchase the subscription then he can be able to select the added payment method.
My Question
Is there a package or method for use with laravel that allows me to implement pre-approved payments and handle the recurring payment methods later?
Guarv, thanks for using my package. Pre-approved payments are part of PayPal AdaptivePayments API. My package supports it partially though. Hopefully we can work together to implement this in the package.
If you look at this link:
https://developer.paypal.com/docs/classic/adaptive-payments/ht_ap-basicPreapproval-curl-etc/
It specifically says if you are using pre-approved payments, you should use the Adaptive Payments endpoint to process any future payments.

Delay Paypal payment - Braintree APIs

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.

Resources