Skip to main content
POST
/
v2
/
payments
/
authorizations
/
{authorization_id}
/
capture
Capture authorized payment
curl --request POST \
  --url https://api-m.sandbox.paypal.com/v2/payments/authorizations/{authorization_id}/capture \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data @- <<EOF
{
  "amount": {
    "value": "10.99",
    "currency_code": "USD"
  },
  "invoice_id": "INVOICE-123",
  "final_capture": true,
  "note_to_payer": "If the ordered color is not available, we will substitute with a different color free of charge.",
  "soft_descriptor": "Bob's Custom Sweaters"
}
EOF
{
  "status": "COMPLETED",
  "status_details": {
    "reason": "BUYER_COMPLAINT"
  },
  "id": "<string>",
  "amount": {
    "currency_code": "<string>",
    "value": "<string>"
  },
  "invoice_id": "<string>",
  "custom_id": "<string>",
  "network_transaction_reference": {
    "id": "<string>",
    "date": "<string>",
    "network": "VISA",
    "acquirer_reference_number": "<string>"
  },
  "seller_protection": {
    "status": "ELIGIBLE",
    "dispute_categories": [
      "ITEM_NOT_RECEIVED"
    ]
  },
  "final_capture": false,
  "seller_receivable_breakdown": {
    "gross_amount": {
      "currency_code": "<string>",
      "value": "<string>"
    },
    "paypal_fee": {
      "currency_code": "<string>",
      "value": "<string>"
    },
    "paypal_fee_in_receivable_currency": {
      "currency_code": "<string>",
      "value": "<string>"
    },
    "net_amount": {
      "currency_code": "<string>",
      "value": "<string>"
    },
    "receivable_amount": {
      "currency_code": "<string>",
      "value": "<string>"
    },
    "exchange_rate": {
      "source_currency": "<string>",
      "target_currency": "<string>",
      "value": "<string>"
    },
    "platform_fees": [
      {
        "amount": {
          "currency_code": "<string>",
          "value": "<string>"
        },
        "payee": {
          "email_address": "<string>",
          "merchant_id": "<string>"
        }
      }
    ]
  },
  "disbursement_mode": "INSTANT",
  "links": [
    {
      "href": "<string>",
      "rel": "<string>",
      "method": "GET"
    }
  ],
  "processor_response": {
    "avs_code": "A",
    "cvv_code": "E",
    "response_code": "0000",
    "payment_advice_code": "01"
  },
  "create_time": "<string>",
  "update_time": "<string>",
  "supplementary_data": {
    "related_ids": {
      "order_id": "<string>",
      "authorization_id": "<string>",
      "capture_id": "<string>"
    }
  },
  "payee": {
    "email_address": "<string>",
    "merchant_id": "<string>"
  }
}

Authorizations

Authorization
string
header
required

OAuth 2.0 authentication

Headers

PayPal-Request-Id
string

The server stores keys for 45 days.

Prefer
string
default:return=minimal

The preferred server response upon successful completion of the request. Value is:

  • return=minimal. The server returns a minimal response to optimize communication between the API caller and the server. A minimal response includes the id, status and HATEOAS links.
  • return=representation. The server returns a complete resource representation, including the current state of the resource.

PayPal-Auth-Assertion
string

An API-caller-provided JSON Web Token (JWT) assertion that identifies the merchant. For details, see PayPal-Auth-Assertion.

Note:For three party transactions in which a partner is managing the API calls on behalf of a merchant, the partner must identify the merchant using either a PayPal-Auth-Assertion header or an access token with target_subject.

Path Parameters

authorization_id
string
required

The PayPal-generated ID for the authorized payment to void.

Body

application/json

Captures either a portion or the full authorized amount of an authorized payment.

invoice_id
string

The API caller-provided external invoice number for this order. Appears in both the payer's transaction history and the emails that the payer receives.

Required string length: 1 - 127
note_to_payer
string

An informational note about this settlement. Appears in both the payer's transaction history and the emails that the payer receives.

Required string length: 1 - 255
amount
Money · object

The amount to capture. To capture a portion of the full authorized amount, specify an amount. If amount is not specified, the full authorized amount is captured. The amount must be a positive number and in the same currency as the authorization against which the payment is being captured.

final_capture
boolean
default:false

Indicates whether you can make additional captures against the authorized payment. Set to true if you do not intend to capture additional payments against the authorization. Set to false if you intend to capture additional payments against the authorization.

payment_instruction
Payment Instruction · object

Any additional payment instructions to be consider during payment processing. This processing instruction is applicable for Capturing an order or Authorizing an Order.

soft_descriptor
string

The payment descriptor on the payer's account statement.

Maximum string length: 22

Response

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

A captured payment.

status
enum<string>

The status of the captured payment.

Available options:
COMPLETED,
DECLINED,
PARTIALLY_REFUNDED,
PENDING,
REFUNDED,
FAILED
status_details
Capture Status Details · object

The details of the captured payment status.

id
string

The PayPal-generated ID for the captured payment.

amount
Money · object

The amount for this captured payment.

invoice_id
string

The API caller-provided external invoice number for this order. Appears in both the payer's transaction history and the emails that the payer receives.

custom_id
string

The API caller-provided external ID. Used to reconcile API caller-initiated transactions with PayPal transactions. Appears in transaction and settlement reports.

Maximum string length: 255
network_transaction_reference
Network Transaction · object

Reference values used by the card network to identify a transaction.

seller_protection
Seller Protection · object

The level of protection offered as defined by PayPal Seller Protection for Merchants.

final_capture
boolean
default:false

Indicates whether you can make additional captures against the authorized payment. Set to true if you do not intend to capture additional payments against the authorization. Set to false if you intend to capture additional payments against the authorization.

seller_receivable_breakdown
Seller Receivable Breakdown · object

The detailed breakdown of the capture activity. This is not available for transactions that are in pending state.

disbursement_mode
enum<string>
default:INSTANT

The funds that are held on behalf of the merchant.

Available options:
INSTANT,
DELAYED
Required string length: 1 - 16

An array of related HATEOAS links.

processor_response
Processor Response · object

An object that provides additional processor information for a direct credit card transaction.

create_time
string<ppaas_date_time_v3>

The date and time when the transaction occurred, in Internet date and time format.

Required string length: 20 - 64
update_time
string<ppaas_date_time_v3>

The date and time when the transaction was last updated, in Internet date and time format.

Required string length: 20 - 64
supplementary_data
Payment Supplementary Data · object

An object that provides supplementary/additional data related to a payment transaction.

payee
Payee Base · object

The details associated with the merchant for this transaction.