Paypal account upgrade to express from standard - paypal

We are currently using PayPal standard checkout and we need to upgrade to express checkout.
From PayPal documentation, standard checkout will reach their site and each checkout process will be handled by PayPal and return confirmation alone to our site.
But express checkout is different in workflow that everything need to be done with API and script.
How to upgrade easily from standard checkout ?
Or write up the API only be the solution to upgrade.
We are looking for .Net library based integration process. Any NuGet package available for this integration.

Make two routes on your server, one for 'Create Order' and one for 'Capture Order', documented here; there is a Checkout-NET-SDK you can use. These two routes should return only JSON data (no HTML or text). The latter one should (on success) store the payment details in your database before it does the return (particularly purchase_units[0].payments.captures[0].id, the PayPal transaction ID)
Pair your two routes with the following approval flow: https://developer.paypal.com/demo/checkout/#/pattern/server

Related

Saving Payment Methods with PayPal Checkout

Is it possible to attach payment methods to customers when PayPal uses the card checkout? I'm asking this because it seems like in order to have the PayPal buttons on the checkout, trying to use PayPal's hosted payment fields seems to not support having external customers with saved cards.
My goal is to have it so I can have the PayPal button along with the PayPal hosted fields for cards, and then if a user does checkout with the hosted fields, it will save their card somehow. This sort of functionality doesn't really seem to be supported by PayPal's API according to the docs unless I'm missing something.
I'm just trying to figure out a way if you can use previous cards in paypal's hosted checkout if that is possible.
Saving payment methods requires a feature variously called reference transactions or vaulting (the v2 vault API, not v1). The feature is not enable by default. The business owner should contact PayPal's general business support (not technical support) or an account manager to inquire about the reference transactions feature and explain the business need.
If approved for the feature, PayPal can then guide you on which API to integrate.

What are the returned parameters for the PayPal Success Return

I am integrating PayPal Payments blind, this means I have no means to test, I've researched this more than a lot of times, and I can't seem to find any information about this.
When my client successfully pays me (integrated using REST API), and they are returned to the specified return URL, what are the exact parameters returned, primarily, what are the parameter keys for the Payment ID and the Payer ID.
Thank you for your assistance.
I am integrating PayPal Payments blind, this means I have no means to test
This doesn't make any sense; you should fully test your integration as you develop it, using the PayPal sandbox environment.
Redirecting away from your site is an old way to integrate PayPal, used by old websites. Current integrations do not use any redirects. At all.
Follow the Set up standard payments guide and make 2 routes on your server, one for 'Create Order' and one for 'Capture Order', documented here. Both routes should return only JSON data (no HTML or text). Inside the 2nd route, when the capture API is successful you should store its resulting payment details in your database (particularly purchase_units[0].payments.captures[0].id, which is the PayPal transaction ID) and perform any necessary business logic (such as sending confirmation emails or reserving product) immediately before forwarding your return JSON to the frontend caller.
Pair those 2 routes with the frontend approval flow: https://developer.paypal.com/demo/checkout/#/pattern/server

Is paypal-rest-sdk still a valid approach or should we switch to braintree?

I am reading this paypal-rest-sdk based payment integration approach from a blog, but I can't find it on Paypal's official developer pages. Question: If someone can help me link that blog's approach to a Paypal's developer page explained method, I'd appreciate.
Instead, I see a Braintree based payment integration approach listed on official Paypal developer page. Question: Is this one more preferable than the previous one? Plus, can this approach accept credit card payment (reading the doc, it seems to only support Paypal payment)
The PayPal-Node-SDK is deprecated, and the Express Checkout via Braintree Mobile SDK is only worth using if you need a native mobile SDK. So the answer to your question, based on the information provided, is most probably: neither.
Instead, you need to do a better job of reviewing the information on https://developer.paypal.com , namely https://developer.paypal.com/docs/checkout/
For a good server-side integration, the front-end at https://developer.paypal.com/demo/checkout/#/pattern/server will be particularly useful.
Note that the fetch() routes it calls need to be placed with actual routes on your server, which will call the PayPal APIs for creation and capture during teh checkout. For those API operations from your server, use the supported Checkout-NodeJS-SDK.

Which paypal solution to use?

I just noticed that paypal now has a number of solutions to accept payment, and per this own page, it doesn't really compare their difference in a nice way:
https://developer.paypal.com/docs/accept-payments/
Does anyone happen to know (I am using C#/.net, but JS is also OK), if I want to have a customized checkout, in which I can customize the look and feel, and allow customers to enter/select shipping address (which is saved in the site's own database), which paypal method I should use?
Thanks! (also if any document that explain better the differences of the above different ways of accept payment, it would be great!)
If you want to completely customize everything then the PayPal Payments Pro Payflow Edition is a viable solution.
Here is the link to Sample Code C# is one of the programming languages offered in the Sample Payflow Code.
You will need to build your form/shopping cart and then the Sample Code can be used to make the payment request to process the payments. The Entire Transaction will take place place on your website from start to finish.
If you want PayPal to handle the payment portion with a customer leaving your site to use PayPal as the Payment method and then returning to your site to complete the payment, Express Checkout is the other option that will work.
You can make an API call to PayPal to get the Shipping information from PayPal and then store the shipping info in your own database.
Here is the Express Checkout Sample Code

Create paypal form which handles both recurring and one off payments

Wanted to know if paypal allowed this functionality within one form or if I have to create two separate forms in order to obtain this functionality. Currently building a donation widget for a client per their request.
If there are any documentation regarding this within paypal a link would be greatly appreciated.
Cheers.
You can do that no problem. Just build your form with options for one-time or recurring payments, and then use the Express Checkout API to process the checkout accordingly.
If you're working with PHP you can take a look at my class library for PayPal, which will make the Express Checkout API calls very simple for you.
The calls you'd be utilizing are:
SetExpressCheckout
GetExpressCheckoutDetails
DoExpressCheckoutPayment (for one-time payments)
CreateRecurringPaymentsProfile (for subscriptions)