PayPal Developer Logo
  • Docs
    OnlineIn-PersonMultiparty3rd-PartyPayoutsDisputesReportsIdentityTrackingDocs Archive
  • APIs & SDKs
    REST APIsJavaScript SDKNVP/SOAP APIsDonate SDKBraintree GraphQL API
  • Tools
    Integration BuilderSandbox Testing GuideAPI ExecutorDemo PortalNegative TestingCodespacesNewVS Code ExtensionNewCredit Card GeneratorWebhooksAPI StatusSecure File Transfer
  • Video Library
  • Support
Log in to Dashboard
    Log in to Dashboard
    REST APIs
    Get Started with PayPal REST APIs
    Authentication
    Postman Guide
    API requests
    API responses
    Core Resources
    Overview
    Add Tracking
    Catalog Products
    Disputes
    Identity
    Invoicing
    Orders
    Partner Referrals
    Payment Experience
    Payment Method Tokens
    Payments
    Payouts
    Referenced Payouts
    Subscriptions
    Transaction Search
    Webhooks Management
    Webhooks
    Overview
    Webhook event names
    Webhooks Events dashboard
    Webhooks simulator
    Integration
    Sandbox
    Overview
    Accounts
    Bulk Accounts
    Card testing
    Codespaces
    PayPal for Visual Studio Code
    Negative Testing
    Go Live
    Production Environment
    PayPal Application Guidelines
    PayPal Security Guidelines
    Rate Limiting Guidelines
    Idempotency
    Reference
    Currency Codes
    Country Codes
    State & Province Codes
    Locale codes
    Deprecated Resources
    Deprecated resources
    Billing Agreements
    Billing Plans
    Invoicing v1
    Orders v1
    Partner Referrals v1
    Payments v1
      Payments
      post
      Create payment
      get
      List payments
      get
      Show payment details
      patch
      Partially update payment
      post
      Execute approved PayPal payment
      get
      Show sale details
      post
      Refund sale
      get
      Show authorization details
      post
      Capture authorization
      post
      Void authorization
      post
      Re-authorize payment
      get
      Show order details
      post
      Capture order
      post
      Void order
      post
      Authorize order
      get
      Show captured payment details
      post
      Refund captured payment
      get
      Show refund details
      Errors
      Definitions

Payments (1)

API Version v1
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Use the Payments REST API to easily and securely accept online and mobile payments. The payments name space contains resource collections for payments, sales, refunds, authorizations, captures, and orders.
Important: The use of the PayPal REST /payments APIs to accept credit card payments is restricted. Instead, you can accept credit card payments with Braintree Direct.
You can enable customers to make PayPal and credit card payments with only a few clicks, depending on the country. You can accept an immediate payment or authorize a payment and capture it later. You can show details for completed payments, refunds, and authorizations. You can make full or partial refunds. You also can void or re-authorize authorizations. For more information, see the Payments overview.

Create payment

post/v1/payments/payment
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Creates a sale, an authorized payment to be captured later, or an order. To create a sale, authorization, or order, include the payment details in the JSON request body. Set the intent to sale, authorize, or order.
Note: TPP Clients (Third Party Providers in the context of PSD2 regulation) are restricted from using authorize and order intents.
Include payer, transaction details, and, for PayPal payments only, redirect URLs. The combination of the payment_method and funding_instrument determines the type of payment that is created. For more information, see Payments REST API.
SecurityOauth2
Request
header Parameters
PayPal-Partner-Attribution-Id
string <= 32 characters
Request Body schema: application/json
intent
required
string

The payment intent. Value is:

  • sale. Makes an immediate payment.
  • authorize. Authorizes a payment for capture later.
  • order. Creates an order.

Enum: "sale" "authorize" "order"
Array of objects (Transaction)

An array of payment-related transactions. A transaction defines what the payment is for and who fulfills the payment. For update and execute payment calls, the transactions object accepts the amount object only.

experience_profile_id
string

Deprecated. The PayPal-generated ID for the merchant's payment experience profile. For information, see create web experience profile. Use application_context instead.

note_to_payer
string <= 165 characters

A free-form field that clients can use to send a note to the payer.

object (Redirect URLs)

A set of redirect URLs that you provide for PayPal-based payments.

required
object (Payer)

The source of the funds for this payment. Payment method is PayPal Wallet payment or bank direct debit.

object (Application Context)

Use the application context resource to customize payment flow experience for your buyers.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows payment details.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "intent": "sale",
  • "payer": {
    • "payment_method": "paypal"
    },
  • "transactions": [
    • {
      • "amount": {
        • "total": "30.11",
        • "currency": "USD",
        • "details": {
          • "subtotal": "30.00",
          • "tax": "0.07",
          • "shipping": "0.03",
          • "handling_fee": "1.00",
          • "shipping_discount": "-1.00",
          • "insurance": "0.01"
          }
        },
      • "description": "The payment transaction description.",
      • "custom": "EBAY_EMS_90048630024435",
      • "invoice_number": "48787589673",
      • "payment_options": {
        • "allowed_payment_method": "INSTANT_FUNDING_SOURCE"
        },
      • "soft_descriptor": "ECHI5786786",
      • "item_list": {
        • "items": [
          • {
            • "name": "hat",
            • "description": "Brown hat.",
            • "quantity": "5",
            • "price": "3",
            • "tax": "0.01",
            • "sku": "1",
            • "currency": "USD"
            },
          • {
            • "name": "handbag",
            • "description": "Black handbag.",
            • "quantity": "1",
            • "price": "15",
            • "tax": "0.02",
            • "sku": "product34",
            • "currency": "USD"
            }
          ],
        • "shipping_address": {
          • "recipient_name": "Brian Robinson",
          • "line1": "4th Floor",
          • "line2": "Unit #34",
          • "city": "San Jose",
          • "country_code": "US",
          • "postal_code": "95131",
          • "phone": "011862212345678",
          • "state": "CA"
          }
        }
      }
    ],
  • "note_to_payer": "Contact us for any questions on your order.",
  • "redirect_urls": {
    • "return_url": "https://example.com/return",
    • "cancel_url": "https://example.com/cancel"
    }
}
Response samples
  • 201
application/json
{
  • "id": "PAY-1B56960729604235TKQQIYVY",
  • "create_time": "2017-09-22T20:53:43Z",
  • "update_time": "2017-09-22T20:53:44Z",
  • "state": "CREATED",
  • "intent": "sale",
  • "payer": {
    • "payment_method": "paypal"
    },
  • "transactions": [
    • {
      • "amount": {
        • "total": "30.11",
        • "currency": "USD",
        • "details": {
          • "subtotal": "30.00",
          • "tax": "0.07",
          • "shipping": "0.03",
          • "handling_fee": "1.00",
          • "insurance": "0.01",
          • "shipping_discount": "-1.00"
          }
        },
      • "description": "The payment transaction description.",
      • "custom": "EBAY_EMS_90048630024435",
      • "invoice_number": "48787589673",
      • "item_list": {
        • "items": [
          • {
            • "name": "hat",
            • "sku": "1",
            • "price": "3.00",
            • "currency": "USD",
            • "quantity": "5",
            • "description": "Brown hat.",
            • "tax": "0.01"
            },
          • {
            • "name": "handbag",
            • "sku": "product34",
            • "price": "15.00",
            • "currency": "USD",
            • "quantity": "1",
            • "description": "Black handbag.",
            • "tax": "0.02"
            }
          ],
        • "shipping_address": {
          • "recipient_name": "Brian Robinson",
          • "line1": "4th Floor",
          • "line2": "Unit #34",
          • "city": "San Jose",
          • "state": "CA",
          • "phone": "011862212345678",
          • "postal_code": "95131",
          • "country_code": "US"
          }
        }
      }
    ],
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-1B56960729604235TKQQIYVY",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-60385559L1062554J",
      • "rel": "approval_url",
      • "method": "REDIRECT"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-1B56960729604235TKQQIYVY/execute",
      • "rel": "execute",
      • "method": "POST"
      }
    ]
}

List payments

get/v1/payments/payment
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Lists payments that are completed. Payments that you just created with the create payment call do not appear in the list.

The list shows the payments that are made to the merchant who makes the call. To filter the payments that appear in the response, you can specify one or more optional query and pagination parameters. See Filtering and pagination.
SecurityOauth2
Request
query Parameters
count
integer <= 20
Default: 10

The number of items to list in the response.

start_id
string

The ID of the starting resource in the response. When results are paged, you can use the next_id value as the start_id to continue with the next set of results.

start_index
integer

The start index of the payments to list. Typically, you use the start_index to jump to a specific position in the resource history based on its cart. For example, to start at the second item in a list of results, specify ?start_index=2.

start_time
string

The start date and time for the range to show in the response, in Internet date and time format. For example, start_time=2016-03-06T11:00:00Z.

end_time
string

The end date and time for the range to show in the response, in Internet date and time format. For example, end_time=2016-03-06T11:00:00Z.

payee_id
string

Filters the payments in the response by a PayPal-assigned merchant ID that identifies the payee.

sort_by
string

Sorts the payments in the response by a create time.

Value: "create_time"
sort_order
string

Sorts the payments in the response in descending order.

Value: "desc"
Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that lists payments with payment details.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/payment?count=10&start_index=0&sort_by=create_time&sort_order=desc \
  
Response samples
  • 200
application/json
{
  • "payments": [
    • {
      • "id": "PAY-0US81985GW1191216KOY7OXA",
      • "create_time": "2017-06-30T23:48:44Z",
      • "update_time": "2017-06-30T23:49:27Z",
      • "state": "APPROVED",
      • "intent": "order",
      • "payer": {
        • "payment_method": "paypal"
        },
      • "transactions": [
        • {
          • "amount": {
            • "total": "41.15",
            • "currency": "USD",
            • "details": {
              • "subtotal": "30.00",
              • "tax": "1.15",
              • "shipping": "10.00"
              }
            },
          • "description": "The payment transaction description.",
          • "item_list": {
            • "items": [
              • {
                • "name": "hat",
                • "sku": "1",
                • "price": "3.00",
                • "currency": "USD",
                • "quantity": "5"
                },
              • {
                • "name": "handbag",
                • "sku": "product34",
                • "price": "15.00",
                • "currency": "USD",
                • "quantity": "1"
                }
              ],
            • "shipping_address": {
              • "recipient_name": "John Doe",
              • "line1": "4th Floor, One Lagoon Drive",
              • "line2": "Unit #34",
              • "city": "Redwood City",
              • "state": "CA",
              • "phone": "4084217591",
              • "postal_code": "94065",
              • "country_code": "US"
              }
            },
          • "related_resources": [
            • {
              • "authorization": {
                • "id": "53P09338XY5426455",
                • "create_time": "2017-06-30T23:50:01Z",
                • "update_time": "2017-06-30T23:50:01Z",
                • "amount": {
                  • "total": "41.15",
                  • "currency": "USD"
                  },
                • "parent_payment": "PAY-0US81985GW1191216KOY7OXA",
                • "valid_until": "2017-07-29T23:49:52Z",
                • "links": [
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0US81985GW1191216KOY7OXA",
                    • "rel": "parent_payment",
                    • "method": "GET"
                    }
                  ]
                }
              }
            ]
          }
        ],
      • "links": [
        • {
          • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0US81985GW1191216KOY7OXA",
          • "rel": "self",
          • "method": "GET"
          }
        ]
      },
    • {
      • "id": "PAY-53485002LD6169910KOZQ25I",
      • "create_time": "2017-07-01T19:35:17Z",
      • "update_time": "2017-07-01T19:36:05Z",
      • "state": "APPROVED",
      • "intent": "order",
      • "payer": {
        • "payment_method": "paypal"
        },
      • "transactions": [
        • {
          • "amount": {
            • "total": "33.00",
            • "currency": "USD",
            • "details": {
              • "subtotal": "21.00",
              • "tax": "2.00",
              • "shipping": "10.00"
              }
            },
          • "description": "The payment transaction description.",
          • "item_list": {
            • "items": [
              • {
                • "name": "hat",
                • "sku": "1",
                • "price": "3.00",
                • "currency": "USD",
                • "quantity": "2"
                },
              • {
                • "name": "handbag",
                • "sku": "product34",
                • "price": "15.00",
                • "currency": "USD",
                • "quantity": "1"
                }
              ],
            • "shipping_address": {
              • "recipient_name": "Hannah Lu",
              • "line1": "1602 Crane ct",
              • "line2": "",
              • "city": "San Jose",
              • "state": "CA",
              • "phone": "4084217591",
              • "postal_code": "95052",
              • "country_code": "US"
              }
            },
          • "related_resources": [
            • {
              • "authorization": {
                • "id": "91527087GH224122L",
                • "create_time": "2017-07-01T19:36:22Z",
                • "update_time": "2017-07-01T19:36:22Z",
                • "amount": {
                  • "total": "33.00",
                  • "currency": "USD"
                  },
                • "parent_payment": "PAY-53485002LD6169910KOZQ25I",
                • "valid_until": "2017-07-30T19:36:22Z",
                • "links": [
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-53485002LD6169910KOZQ25I",
                    • "rel": "parent_payment",
                    • "method": "GET"
                    }
                  ]
                }
              }
            ]
          }
        ],
      • "links": [
        • {
          • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-53485002LD6169910KOZQ25I",
          • "rel": "self",
          • "method": "GET"
          }
        ]
      },
    • {
      • "id": "PAY-7F5790198P134484LKOZSG7Q",
      • "create_time": "2017-07-01T21:09:18Z",
      • "update_time": "2017-07-01T22:31:56Z",
      • "state": "APPROVED",
      • "intent": "order",
      • "payer": {
        • "payment_method": "paypal"
        },
      • "transactions": [
        • {
          • "amount": {
            • "total": "42.00",
            • "currency": "USD",
            • "details": {
              • "subtotal": "36.00",
              • "tax": "1.00",
              • "shipping": "5.00"
              }
            },
          • "description": "The payment transaction description.",
          • "item_list": {
            • "items": [
              • {
                • "name": "handbag",
                • "sku": "product34",
                • "price": "36.00",
                • "currency": "USD",
                • "quantity": "1"
                }
              ],
            • "shipping_address": {
              • "recipient_name": "Anna Joseph",
              • "line1": "2525 North 1st street",
              • "line2": "unit 4",
              • "city": "San Jose",
              • "state": "CA",
              • "phone": "011862212345678",
              • "postal_code": "95031",
              • "country_code": "US"
              }
            },
          • "related_resources": [
            • {
              • "capture": {
                • "id": "26062838D7499294V",
                • "create_time": "2017-07-01T21:16:22Z",
                • "update_time": "2017-07-01T21:16:24Z",
                • "amount": {
                  • "total": "7.00",
                  • "currency": "USD"
                  },
                • "state": "COMPLETED",
                • "parent_payment": "PAY-7F5790198P134484LKOZSG7Q",
                • "links": [
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/26062838D7499294V",
                    • "rel": "self",
                    • "method": "GET"
                    },
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/26062838D7499294V/refund",
                    • "rel": "refund",
                    • "method": "POST"
                    },
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-7F5790198P134484LKOZSG7Q",
                    • "rel": "parent_payment",
                    • "method": "GET"
                    }
                  ]
                }
              },
            • {
              • "capture": {
                • "id": "0YU20012P1477553M",
                • "create_time": "2017-07-01T22:31:54Z",
                • "update_time": "2017-07-01T22:31:56Z",
                • "amount": {
                  • "total": "35.00",
                  • "currency": "USD"
                  },
                • "state": "COMPLETED",
                • "parent_payment": "PAY-7F5790198P134484LKOZSG7Q",
                • "links": [
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/0YU20012P1477553M",
                    • "rel": "self",
                    • "method": "GET"
                    },
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/0YU20012P1477553M/refund",
                    • "rel": "refund",
                    • "method": "POST"
                    },
                  • {
                    • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-7F5790198P134484LKOZSG7Q",
                    • "rel": "parent_payment",
                    • "method": "GET"
                    }
                  ]
                }
              }
            ]
          }
        ],
      • "links": [
        • {
          • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-7F5790198P134484LKOZSG7Q",
          • "rel": "self",
          • "method": "GET"
          }
        ]
      }
    ],
  • "count": 3,
  • "next_id": "PAY-9X4935091L753623RKOZTRHI"
}

Show payment details

get/v1/payments/payment/{payment_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Shows details for a payment, by ID, that has yet to complete. For example, shows details for a payment that was created, approved, or failed.
SecurityOauth2
Request
path Parameters
payment_id
required
string

The ID of the payment for which to show details.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows payment details.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0US81985GW1191216KOY7OXA \
  
Response samples
  • 200
application/json
{
  • "id": "PAY-0US81985GW1191216KOY7OXA",
  • "create_time": "2017-06-30T23:48:44Z",
  • "update_time": "2017-06-30T23:49:27Z",
  • "state": "APPROVED",
  • "intent": "order",
  • "payer": {
    • "payment_method": "paypal"
    },
  • "transactions": [
    • {
      • "amount": {
        • "total": "41.15",
        • "currency": "USD",
        • "details": {
          • "subtotal": "30.00",
          • "tax": "1.15",
          • "shipping": "10.00"
          }
        },
      • "description": "The payment transaction description.",
      • "item_list": {
        • "items": [
          • {
            • "name": "hat",
            • "sku": "1",
            • "price": "3.00",
            • "currency": "USD",
            • "quantity": "5"
            },
          • {
            • "name": "handbag",
            • "sku": "product34",
            • "price": "15.00",
            • "currency": "USD",
            • "quantity": "1"
            }
          ],
        • "shipping_address": {
          • "recipient_name": "John Doe",
          • "line1": "4th Floor, One Lagoon Drive",
          • "line2": "Unit #34",
          • "city": "Redwood City",
          • "state": "CA",
          • "phone": "4084217591",
          • "postal_code": "94065",
          • "country_code": "US"
          }
        },
      • "related_resources": [
        • {
          • "authorization": {
            • "id": "53P09338XY5426455",
            • "create_time": "2017-06-30T23:50:01Z",
            • "update_time": "2017-06-30T23:50:01Z",
            • "amount": {
              • "total": "41.15",
              • "currency": "USD"
              },
            • "parent_payment": "PAY-0US81985GW1191216KOY7OXA",
            • "valid_until": "2017-07-29T23:49:52Z",
            • "links": [
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0US81985GW1191216KOY7OXA",
                • "rel": "parent_payment",
                • "method": "GET"
                }
              ]
            }
          }
        ]
      }
    ],
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0US81985GW1191216KOY7OXA",
      • "rel": "self",
      • "method": "GET"
      }
    ]
}

Partially update payment

patch/v1/payments/payment/{payment_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Partially updates a payment, by ID. You can update the amount, shipping address, invoice ID, and custom data. You cannot update a payment after the payment executes.
Note: TPP Clients (Third Party Providers in the context of PSD2 regulation) are restricted from patching amount once authorized.
SecurityOauth2
Request
path Parameters
payment_id
required
string

The ID of the payment to update.

Request Body schema: application/json
Array
op
required
string

The operation.

Enum: Description
add

Depending on the target location reference, completes one of these functions:

  • The target location is an array index. Inserts a new value into the array at the specified index.
  • The target location is an object parameter that does not already exist. Adds a new parameter to the object.
  • The target location is an object parameter that does exist. Replaces that parameter's value.
The value parameter defines the value to add. For more information, see 4.1. add.

remove

Removes the value at the target location. For the operation to succeed, the target location must exist. For more information, see 4.2. remove.

replace

Replaces the value at the target location with a new value. The operation object must contain a value parameter that defines the replacement value. For the operation to succeed, the target location must exist. For more information, see 4.3. replace.

move

Removes the value at a specified location and adds it to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to move the value. For the operation to succeed, the from location must exist. For more information, see 4.4. move.

copy

Copies the value at a specified location to the target location. The operation object must contain a from parameter, which is a string that contains a JSON pointer value that references the location in the target document from which to copy the value. For the operation to succeed, the from location must exist. For more information, see 4.5. copy.

test

Tests that a value at the target location is equal to a specified value. The operation object must contain a value parameter that defines the value to compare to the target location's value. For the operation to succeed, the target location must be equal to the value value. For test, equal indicates that the value at the target location and the value that value defines are of the same JSON type. The data type of the value determines how equality is defined:

TypeConsidered equal if both values
stringsContain the same number of Unicode characters and their code points are byte-by-byte equal.
numbersAre numerically equal.
arraysContain the same number of values, and each value is equal to the value at the corresponding position in the other array, by using these type-specific rules.
objectsContain the same number of parameters, and each parameter is equal to a parameter in the other object, by comparing their keys (as strings) and their values (by using these type-specific rules).
literals (false, true, and null)Are the same. The comparison is a logical comparison. For example, whitespace between the parameter values of an array is not significant. Also, ordering of the serialization of object parameters is not significant.
For more information, see 4.6. test.

path
string

The JSON Pointer to the target document location at which to complete the operation.

value
object (Patch Value)

The value to apply. The remove operation does not require a value.

from
string

The JSON Pointer to the target document location from which to move the value. Required for the move operation.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows payment details.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
[
  • {
    • "op": "replace",
    • "path": "/transactions/0/amount",
    • "value": {
      • "total": "18.37",
      • "currency": "EUR",
      • "details": {
        • "subtotal": "13.37",
        • "shipping": "5.00"
        }
      }
    },
  • {
    • "op": "add",
    • "path": "/transactions/0/item_list/shipping_address",
    • "value": {
      • "recipient_name": "Anna Gruneberg",
      • "line1": "Kathwarinenhof 1",
      • "city": "Flensburg",
      • "postal_code": "24939",
      • "country_code": "DE"
      }
    }
]
Response samples
  • 200
application/json
{
  • "id": "PAY-5YK922393D847794YKER7MUI",
  • "intent": "authorize",
  • "create_time": "2017-04-24T14:26:59.059Z",
  • "payer": {
    • "payer_info": {
      • "country_code": "DE",
      • "email": "payer@example.com",
      • "first_name": "Gruneberg",
      • "last_name": "Anna",
      • "payer_id": "8J4VWY56VUXQ6",
      • "phone": "605-521-1234"
      },
    • "payment_method": "paypal",
    • "status": "VERIFIED"
    },
  • "state": "APPROVED",
  • "transactions": [
    • {
      • "amount": {
        • "total": "18.37",
        • "currency": "EUR",
        • "details": {
          • "subtotal": "13.37",
          • "shipping": "5.00"
          }
        },
      • "description": "Uber",
      • "item_list": {
        • "items": [
          • {
            • "currency": "EUR",
            • "name": "iPad",
            • "price": "13.37",
            • "quantity": "1"
            }
          ],
        • "shipping_address": {
          • "recipient_name": "Anna Gruneberg",
          • "line1": "Kathwarinenhof 1",
          • "city": "Flensburg",
          • "postal_code": "24939",
          • "country_code": "DE"
          }
        },
      • "payee": {
        • "email": "payee@example.com"
        }
      }
    ],
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-5YK922393D847794YKER7MUI",
      • "method": "GET",
      • "rel": "self"
      }
    ]
}

Execute approved PayPal payment

post/v1/payments/payment/{payment_id}/execute
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Executes a PayPal payment that the customer has approved. You can optionally update one or more transactions when you execute the payment.
Important: This call works only after a customer has approved the payment. For more information, learn about PayPal payments.
SecurityOauth2
Request
path Parameters
payment_id
required
string

The ID of the payment to execute.

header Parameters
PayPal-Request-Id
string <= 78 characters

The server stores keys for 30 days.

PayPal-Partner-Attribution-Id
string <= 32 characters
Request Body schema: application/json
payer_id
string

The ID of the payer that PayPal passes in the return_url.

Array of objects (Cart Base)

An array of transaction details. Includes the amount and item details. For update and execute payment calls, the transactions object accepts only the amount object.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows details for the executed payment.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "payer_id": "CR87QHB7JTRSC"
}
Response samples
  • 200
application/json
{
  • "id": "PAY-9N9834337A9191208KOZOQWI",
  • "create_time": "2017-07-01T16:56:57Z",
  • "update_time": "2017-07-01T17:05:41Z",
  • "state": "APPROVED",
  • "intent": "order",
  • "payer": {
    • "payment_method": "paypal",
    • "payer_info": {
      • "email": "qa152-biz@example.com",
      • "first_name": "Thomas",
      • "last_name": "Miller",
      • "payer_id": "PUP87RBJV8HPU",
      • "shipping_address": {
        • "line1": "4th Floor, One Lagoon Drive",
        • "line2": "Unit #34",
        • "city": "Redwood City",
        • "state": "CA",
        • "postal_code": "94065",
        • "country_code": "US",
        • "phone": "011862212345678",
        • "recipient_name": "Thomas Miller"
        }
      }
    },
  • "transactions": [
    • {
      • "amount": {
        • "total": "41.15",
        • "currency": "USD",
        • "details": {
          • "subtotal": "30.00",
          • "tax": "0.15",
          • "shipping": "11.00"
          }
        },
      • "description": "The payment transaction description.",
      • "item_list": {
        • "items": [
          • {
            • "name": "hat",
            • "sku": "1",
            • "price": "3.00",
            • "currency": "USD",
            • "quantity": "5"
            },
          • {
            • "name": "handbag",
            • "sku": "product34",
            • "price": "15.00",
            • "currency": "USD",
            • "quantity": "1"
            }
          ],
        • "shipping_options": [
          • {
            • "id": "PICKUP0000001",
            • "label": "Free Shipping",
            • "type": "PICKUP",
            • "amount": {
              • "currency_code": "USD",
              • "value": "5.00"
              },
            • "selected": true
            }
          ],
        • "shipping_address": {
          • "recipient_name": "Thomas Miller",
          • "line1": "4th Floor, One Lagoon Drive",
          • "line2": "Unit #34",
          • "city": "Redwood City",
          • "state": "CA",
          • "phone": "011862212345678",
          • "postal_code": "94065",
          • "country_code": "US"
          }
        },
      • "related_resources": [
        • {
          • "order": {
            • "id": "O-3SP845109F051535C",
            • "create_time": "2017-07-01T16:56:58Z",
            • "update_time": "2017-07-01T17:05:41Z",
            • "state": "PENDING",
            • "amount": {
              • "total": "41.15",
              • "currency": "USD"
              },
            • "parent_payment": "PAY-9N9834337A9191208KOZOQWI",
            • "links": [
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-3SP845109F051535C",
                • "rel": "self",
                • "method": "GET"
                },
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-9N9834337A9191208KOZOQWI",
                • "rel": "parent_payment",
                • "method": "GET"
                },
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-3SP845109F051535C/void",
                • "rel": "void",
                • "method": "POST"
                },
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-3SP845109F051535C/authorize",
                • "rel": "authorization",
                • "method": "POST"
                },
              • {
                • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-3SP845109F051535C/capture",
                • "rel": "capture",
                • "method": "POST"
                }
              ]
            }
          }
        ]
      }
    ],
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-9N9834337A9191208KOZOQWI",
      • "rel": "self",
      • "method": "GET"
      }
    ]
}

Show sale details

get/v1/payments/sale/{sale_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Shows details for a sale, by ID. Returns only sales that were created through the REST API.
SecurityOauth2
Request
path Parameters
sale_id
required
string

The ID of the sale for which to show details.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows sale details.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/sale/36C38912MN9658832 \
  
Response samples
  • 200
application/json
{
  • "id": "36C38912MN9658832",
  • "create_time": "2017-02-19T22:01:53Z",
  • "update_time": "2017-02-19T22:01:55Z",
  • "state": "COMPLETED",
  • "amount": {
    • "total": "7.47",
    • "currency": "USD"
    },
  • "protection_eligibility": "ELIGIBLE",
  • "protection_eligibility_type": "ITEM_NOT_RECEIVED_ELIGIBLE,UNAUTHORIZED_PAYMENT_ELIGIBLE",
  • "transaction_fee": {
    • "value": "1.75",
    • "currency": "USD"
    },
  • "parent_payment": "PAY-5YK922393D847794YKER7MUI",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/sale/36C38912MN9658832",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/sale/36C38912MN9658832/refund",
      • "rel": "refund",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-5YK922393D847794YKER7MUI",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Refund sale

post/v1/payments/sale/{sale_id}/refund
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Refunds a sale, by ID. For a full refund, do not include the amount object in the JSON request body. For a partial refund, include an amount object in the JSON request body.
SecurityOauth2
Request
path Parameters
sale_id
required
string

The ID of the sale transaction to refund.

header Parameters
PayPal-Request-Id
string <= 78 characters

The server stores keys for 30 days.

Request Body schema: application/json
description
string <= 255 characters

The refund description. Value is a string of single-byte alphanumeric characters.

reason
string <= 30 characters

The refund reason description.

invoice_number
string <= 127 characters

The invoice number that tracks this payment. Value is a string of single-byte alphanumeric characters.

object (Amount)

The refund amount. Includes both the amount to refund to the payer and the fee amount to refund to the payee.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows details for the refunded sale.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "amount": {
    • "total": "2.34",
    • "currency": "USD"
    },
  • "invoice_number": "INV-1234567"
}
Response samples
  • 201
application/json
{
  • "id": "5CY176817C379973E",
  • "create_time": "2018-08-15T17:11:32Z",
  • "update_time": "2018-08-15T17:11:32Z",
  • "state": "COMPLETED",
  • "amount": {
    • "total": "2.34",
    • "currency": "USD"
    },
  • "refund_from_transaction_fee": {
    • "currency": "USD",
    • "value": "0.06"
    },
  • "total_refunded_amount": {
    • "currency": "USD",
    • "value": "2.34"
    },
  • "refund_from_received_amount": {
    • "currency": "USD",
    • "value": "2.28"
    },
  • "sale_id": " 2MU78835H4515710F ",
  • "parent_payment": "PAY-9EH2230144138005NLN2F4EA",
  • "invoice_number": "INV-1234567",
  • "links": [
    • {
      • "href": "https://sandbox.paypal.com/v1/payments/refund/5CY176817C379973E",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://sandbox.paypal.com/v1/payments/payment/PAY-9EH2230144138005NLN2F4EA",
      • "rel": "parent_payment",
      • "method": "GET"
      },
    • {
      • "href": "https://sandbox.paypal.com/v1/payments/sale/ 2MU78835H4515710F",
      • "rel": "sale",
      • "method": "GET"
      }
    ]
}

Show authorization details

get/v1/payments/authorization/{authorization_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Shows details for an authorization, by ID.
SecurityOauth2
Request
path Parameters
authorization_id
required
string

The ID of the authorization for which to show details.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows authorization details.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/authorization/2DC87612EK520411B \
  
Response samples
  • 200
application/json
{
  • "id": "2DC87612EK520411B",
  • "create_time": "2017-06-25T21:39:15Z",
  • "update_time": "2017-06-25T21:39:17Z",
  • "state": "AUTHORIZED",
  • "amount": {
    • "total": "7.47",
    • "currency": "USD",
    • "details": {
      • "subtotal": "7.47"
      }
    },
  • "parent_payment": "PAY-36246664YD343335CKHFA4AY",
  • "valid_until": "2017-07-24T21:39:15Z",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/2DC87612EK520411B",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/2DC87612EK520411B/capture",
      • "rel": "capture",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/2DC87612EK520411B/void",
      • "rel": "void",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-36246664YD343335CKHFA4AY",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Capture authorization

post/v1/payments/authorization/{authorization_id}/capture
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Captures and processes an authorization, by ID. The original payment call must specify an intent of authorize.
SecurityOauth2
Request
path Parameters
authorization_id
required
string

The ID of the authorization to capture.

Request Body schema: application/json
is_final_capture
boolean
Default: false

Indicates whether to release all remaining held funds.

invoice_number
string <= 127 characters

The invoice number to track this payment.

note_to_payer
string <= 255 characters

A free-form field that clients can use to send a note to the payer.

object (Amount)

The amount to capture. If the amount matches the originally authorized amount, the state of the authorization changes to captured. Otherwise, the state changes to partially_captured.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows details for the captured authorization.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "amount": {
    • "currency": "USD",
    • "total": "4.54"
    },
  • "is_final_capture": true
}
Response samples
  • 201
application/json
{
  • "id": "6BA17599X0950293U",
  • "create_time": "2017-05-06T22:32:24Z",
  • "update_time": "2017-05-06T22:32:25Z",
  • "amount": {
    • "total": "4.54",
    • "currency": "USD"
    },
  • "is_final_capture": true,
  • "state": "COMPLETED",
  • "parent_payment": "PAY-44664305570317015KGEC5DI",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/6BA17599X0950293U",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/6BA17599X0950293U/refund",
      • "rel": "refund",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/5RA45624N3531924N",
      • "rel": "authorization",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-44664305570317015KGEC5DI",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Void authorization

post/v1/payments/authorization/{authorization_id}/void
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Voids, or cancels, an authorization, by ID. You cannot void a fully captured authorization.
SecurityOauth2
Request
path Parameters
authorization_id
required
string

The ID of the authorization to void.

header Parameters
PayPal-Request-Id
string <= 78 characters

The server stores keys for 30 days.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows details for the voided authorization.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X POST https://api-m.sandbox.paypal.com/v1/payments/authorization/2DC87612EK520411B/void \
  
Response samples
  • 200
application/json
{
  • "id": "6CR34526N64144512",
  • "create_time": "2017-05-06T21:56:50Z",
  • "update_time": "2017-05-06T21:57:51Z",
  • "state": "VOIDED",
  • "amount": {
    • "total": "110.54",
    • "currency": "USD",
    • "details": {
      • "subtotal": "110.54"
      }
    },
  • "parent_payment": "PAY-0PL82432AD7432233KGECOIQ",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/6CR34526N64144512",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0PL82432AD7432233KGECOIQ",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Re-authorize payment

post/v1/payments/authorization/{authorization_id}/reauthorize
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Re-authorizes a PayPal account payment, by authorization ID. To ensure that funds are still available, re-authorize a payment after the initial three-day honor period. Supports only the amount request parameter. You can re-authorize a payment only once from four to 29 days after three-day honor period for the original authorization expires. If 30 days have passed from the original authorization, you must create a new authorization instead. A re-authorized payment itself has a new three-day honor period. You can re-authorize a transaction once for up to 115% of the originally authorized amount, not to exceed an increase of $75 USD.
SecurityOauth2
Request
path Parameters
authorization_id
required
string

The ID of the authorization to re-authorize.

Request Body schema: application/json
object (FMF Details)

The Fraud Management Filter (FMF) details that are applied to the payment that result in an accept, deny, or pending action. Returned in a payment response only if the merchant has enabled FMF in the profile settings and one of the fraud filters was triggered based on those settings. For more information, see Fraud Management Filters Summary.

object (Processor Response)

The processor-provided response codes that describe the submitted payment. Supported only when the payment_method is credit_card.

required
object (Amount)

The payment amount, with details.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows details for the re-authorized authorization.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "amount": {
    • "currency": "USD",
    • "total": "7.00"
    }
}
Response samples
  • 201
application/json
{
  • "id": "8AA831015G517922L",
  • "create_time": "2017-06-25T21:39:15Z",
  • "update_time": "2017-06-25T21:39:17Z",
  • "state": "AUTHORIZED",
  • "amount": {
    • "total": "7.00",
    • "currency": "USD"
    },
  • "parent_payment": "PAY-7LD317540C810384EKHFAGYA",
  • "valid_until": "2017-07-24T21:39:15Z",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/8AA831015G517922L",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-7LD317540C810384EKHFAGYA",
      • "rel": "parent_payment",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/8AA831015G517922L/capture",
      • "rel": "capture",
      • "method": "POST"
      }
    ]
}

Show order details

get/v1/payments/orders/{order_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Shows details for an order, by ID.
SecurityOauth2
Request
path Parameters
order_id
required
string

The ID of the order for which to show details.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows details for the voided authorization.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/orders/O-0PW72302W3743444R \
  
Response samples
  • 200
application/json
{
  • "id": "O-0PW72302W3743444R",
  • "create_time": "2017-06-19T22:05:06Z",
  • "update_time": "2017-06-19T22:08:36Z",
  • "state": "PENDING",
  • "amount": {
    • "total": "41.15",
    • "currency": "USD"
    },
  • "pending_reason": "order",
  • "parent_payment": "PAY-4D805864V5423372TKOQLRUQ",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-0PW72302W3743444R",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-4D805864V5423372TKOQLRUQ",
      • "rel": "parent_payment",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-0PW72302W3743444R/authorization",
      • "rel": "authorize",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-0PW72302W3743444R/capture",
      • "rel": "capture",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-0PW72302W3743444R/void",
      • "rel": "void",
      • "method": "POST"
      }
    ]
}

Capture order

post/v1/payments/orders/{order_id}/capture
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Captures a payment for an order, by ID. To use this call, the original payment call must specify an order intent. In the JSON request body, include the payment amount and indicate whether this capture is the final capture for the authorization.
SecurityOauth2
Request
path Parameters
order_id
required
string

The ID of the order to capture.

Request Body schema: application/json
is_final_capture
boolean
Default: false

Indicates whether to release all remaining held funds.

invoice_number
string <= 127 characters

The invoice number to track this payment.

note_to_payer
string <= 255 characters

A free-form field that clients can use to send a note to the payer.

object (Amount)

The amount to capture. If the amount matches the originally authorized amount, the state of the authorization changes to captured. Otherwise, the state changes to partially_captured.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows details for the captured order.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "amount": {
    • "currency": "USD",
    • "total": "4.54"
    },
  • "is_final_capture": true
}
Response samples
  • 201
application/json
{
  • "id": "51366113MA710110S",
  • "create_time": "2017-07-01T17:13:45Z",
  • "update_time": "2017-07-01T17:13:47Z",
  • "amount": {
    • "total": "7.00",
    • "currency": "USD"
    },
  • "is_final_capture": false,
  • "state": "COMPLETED",
  • "parent_payment": "PAY-9N9834337A9191208KOZOQWI",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/51366113MA710110S",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/capture/51366113MA710110S/refund",
      • "rel": "refund",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-3SP845109F051535C",
      • "rel": "order",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-9N9834337A9191208KOZOQWI",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Void order

post/v1/payments/orders/{order_id}/do-void
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Voids, or cancels, an order, by ID. You can only void orders that are either in the PENDING or AUTHORIZED states or those in the CAPTURED state that are not fully captured.
SecurityOauth2
Request
path Parameters
order_id
required
string

The ID of the order to void.

header Parameters
PayPal-Request-Id
string <= 78 characters

The server stores keys for 30 days.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows details for the voided order.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X POST https://api-m.sandbox.paypal.com/v1/payments/orders/O-0NR488530V5211123/do-void \
  
Response samples
  • 200
application/json
{
  • "id": "O-0NR488530V5211123",
  • "create_time": "2017-06-28T07:35:08Z",
  • "update_time": "2017-06-28T07:36:25Z",
  • "state": "VOIDED",
  • "amount": {
    • "total": "41.15",
    • "currency": "USD",
    • "details": {
      • "subtotal": "30.00",
      • "tax": "0.15",
      • "shipping": "11.00"
      }
    },
  • "parent_payment": "PAY-0AY778532K612520BKOXHAKY",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/O-0NR488530V5211123",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0AY778532K612520BKOXHAKY",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Authorize order

post/v1/payments/orders/{order_id}/authorize
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Authorizes an order, by ID. In the JSON request body, include an amount object.
SecurityOauth2
Request
path Parameters
order_id
required
string

The ID of the order to authorize.

Request Body schema: application/json
object (FMF Details)

The Fraud Management Filter (FMF) details that are applied to the payment that result in an accept, deny, or pending action. Returned in a payment response only if the merchant has enabled FMF in the profile settings and one of the fraud filters was triggered based on those settings. For more information, see Fraud Management Filters Summary.

required
object (Amount)

The amount to collect.

Note: For an order authorization, you cannot include amount details.

Responses
201

A successful request returns the HTTP 201 Created status code and a JSON response body that shows details for the authorized order.

Request samples
  • Payload
  • cURL
  • Node.js
  • Java
  • Python
application/json
{
  • "amount": {
    • "currency": "USD",
    • "total": "4.54"
    }
}
Response samples
  • 201
application/json
{
  • "id": "0PG032325D352531H",
  • "create_time": "2017-06-28T07:38:10Z",
  • "update_time": "2017-06-28T07:38:12Z",
  • "state": "PENDING",
  • "amount": {
    • "total": "41.15",
    • "currency": "USD"
    },
  • "parent_payment": "O-0NR488530V5211123",
  • "links": [
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/orders/O-0NR488530V5211123",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/0PG032325D352531H",
      • "rel": "self",
      • "method": "GET"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/authorization/0PG032325D352531H/capture",
      • "rel": "capture",
      • "method": "POST"
      },
    • {
      • "href": "https://api-m.sandbox.paypal.com/v1/payments/payment/PAY-0AY778532K612520BKOXHAKY",
      • "rel": "parent_payment",
      • "method": "GET"
      }
    ]
}

Show captured payment details

get/v1/payments/capture/{capture_id}
Deprecation notice: The /v1/payments endpoint is deprecated. Use the /v2/payments endpoint instead. For details, see PayPal Checkout Basic Integration.
Shows details for a captured payment, by ID.
SecurityOauth2
Request
path Parameters
capture_id
required
string

The ID of the captured payment for which to show details.

Responses
200

A successful request returns the HTTP 200 OK status code and a JSON response body that shows details for the captured payment.

Request samples
  • cURL
  • Node.js
  • Java
  • Python
curl -v -X GET https://api-m.sandbox.paypal.com/v1/payments/capture/8F148933LY9388354 \
  
Response samples
  • 200
application/json