New to the community? Welcome! Please read our Community Rules and Guidelines
There are two ways you could create an order
1. You can create an order using Payment API with intent set to "Order" https://developer.paypal.com/docs/api/payments/#payment_create
2. You can create an order using Order API https://developer.paypal.com/docs/api/orders/#orders_create
What is the difference? Why create an order using Payment API over Order API ?
Hi, the one to use is the creation of an Order via the /v1/payments/payment and intent set to "Order".
The /v1/checkout/orders is only to use if you are enabled to MarketPlace API. This API, not yet fully released, is a limited-release solution aimed at marketplaces, crowd funding, and multi-party commerce platforms. If you want to develop a marketplace then you can register your interest here
I know this may be a 2 year old question, but its even more of a question now-a-days. The difference or reasoning between Orders v2 API and Payments v2 API are more blurry.
You say that Orders API is only for some marketplace setup, yet nowhere in any of the documentation I've been pouring over the past two weeks have mentioned this. In fact, all the SDK's and resources, and examples, keep interchanging betwen /v2/orders and /v2/payments like there is no line. Which compounds the confusion.
So, what of today? In 2020, with the v2 Orders and Payments API... what is the difference between the two?
In v1, you could create a payment and authorize/capture the payment via either payments api or order api.
In v2, it seems like paypal fixed the issue, now you need to create an order via order api and only then you could authrize or capture payments via payments api.
It seems so! (after having now completely gone over the entire set of docs for those)
Really confusing, when coming from prior versions. Rewriting a decade old system from NVP/SOAP to v1, putting that project on hold another couple years, and then coming back to and stumbling into the v2 code... its, been a week ... 😉
Definitely confusing as a first-time user.
For simple transactions, you can completely ignore the Payments API. It appears that even PayPal doesn't use it for their smart buttons:
I was also confused because I didn't understand the difference between creating, authorizing, and capturing payments/orders. This page helped me understand:
API onboarding could be organized better. I've been staring at the GitHub readme example trying to understand what in the world is going on.