View as Markdown
API Spec (JSON)
API Spec (YAML)
Compact modeHides field descriptions and other prose for a more compact, scannable view of the API reference.Notes:
PayPal does not process duplicate payouts. If you specify a
sender_batch_idthat was used in the last 30 days, the API rejects the request with an error message that shows the duplicatesender_batch_idand includes a HATEOAS link to the original payout with the samesender_batch_id.If you receive an HTTP
5nnstatus code, you can safely retry the request with the samesender_batch_id.The Payouts API does not support build notation (BN) codes. In a future Payouts release, you can optionally provide BN codes in the
PayPal-Partner-Attribution-Idrequest header.For information about the
PayPal-Partner-Attribution-Idheader, see HTTP request headers. To learn about or request a BN code, contact your partner manager or see PayPal Partner Program.
Client CredentialsToken URLhttps://api-m.sandbox.paypal.com/v1/oauth2/tokenInheaderScopes
https://uri.paypal.com/payments/payoutsapplication/json
TypeScript Definitions
Use the request body type in TypeScript.
sender_batch_headerobject<sender_batch_header>Requiredsender_batch_idstringOptionalNote:PayPal does not process duplicate payouts. If you specify a
sender_batch_idthat was used in the last 30 days, the API rejects the request with an error message that shows the duplicatesender_batch_idand includes a HATEOAS link to the original payout with the samesender_batch_id.If you receive an HTTP
5nnstatus code, you can safely retry the request with the samesender_batch_id. The API completes a payment only once for asender_batch_idthat is used within 30 days.
itemsobject<payout_item_request>[]Requiredrecipient_typestringOptionalEMAIL. The unencrypted email. Value is a string of up to 127 single-byte characters.
PHONE. The unencrypted phone number.
Note: The PayPal sandbox does not support the PHONE recipient type.PAYPAL_ID. The encrypted PayPal account number.
USER_HANDLE. User handle (or) Username associated with Venmo account.
sender_batch_header includes the recipient_type attribute, payout items use the recipient_type of the sender_batch_header, unless a payout item has its own recipient_type attribute. If the sender_batch_header omits the recipient_type attribute, each payout item must include its own recipient_type value.amountobject<currency>RequiredvaluestringRequiredalternate_notification_methodobject<alternate_notification_method>Optionalphoneobject<phone>Optionalcountry_codestringRequirednational_numberstringRequirednotification_languagestring<language>Optionalapplication_contextobject<application_context>Optionalpurposeenum<purpose_enum>Optionalapplication/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/payments/payouts" \ -H "Content-Type: application/json" \ -d '{ "sender_batch_header": {}, "items": [ { "amount": { "currency": "string", "value": "string" }, "receiver": "string" } ] }'{ "batch_header": { "payout_batch_id": "string", "batch_status": "DENIED", "time_created": "2019-08-24T14:15:22Z", "sender_batch_header": { "sender_batch_id": "string", "recipient_type": "EMAIL", "email_subject": "string", "email_message": "string" } }, "links": [ { "href": "string", "rel": "string", "method": "GET" } ]}