Custom discount with V2 Orders API?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The V1 API let you add custom discounts by supplying any field name at all with a negative money value. In the V2 API I can't get this to work at all, nor is it documented. Is it still possible to have custom discounts that aren't "Shipping discount"?
- Labels:
-
Payments REST APIs
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The weird thing is that, it should be possible to set negative values as described in the regular expression applied on the money value object used for item amount. Doing so, however, results in Paypal API error response as mentioned in the topic post.
P.S. This topic did not turn up when I used Paypal search function when I search for "discount" keyword. I unnecessarily created a new one before I found this.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
At the moment you can't have custom discounts what you can potentially use "discount" breakdown as part of - https://developer.paypal.com/docs/api/orders/v2/#definition-amount_breakdown
We previously used to allow negative values but there were certain challenges as the display is not as good as it could have been in the buyer checkout experience.
Please let me know if the above works for you if not I can think if there is any other recommendation.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are in 2021 now.
We want to use coupons like maybe 98% of ecommerce companies do. On Stripe this ability is native. On PayPal still not. Yay!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2022 and discounting is still not supported as far as I can tell. How can this be possible?
The simple solution is to support a single value for total discount amount across all items. Include it in the purchase_unit.amount object breakdown, similar to shipping information. shipping_discount exists already (though not for Orders), please just add an items_discount or item_total_discount property.
I cannot understand why this is so hard to implement in over 2 years.

Haven't Found your Answer?
It happens. Hit the "Login to Ask the community" button to create a question for the PayPal community.
- Identification data for PayPal Express payments is required to integrate them into an API code in REST APIs
- Custom Order details on Express checkout in PayPal Payments Standard
- Problem with adding metadata in PayPal Developer RestAPIs to Create a payment in REST APIs
- PAYER_ACTION_REQUIRED returned for Capture intent when calling v2 checkout orders in Sandbox Environment
- Need Help Upgrading to PayPal complete payments in PayPal Upgrade Community