Paypal API
  1. Orders
Paypal API
  • Authorization
    • Generate access_token
      POST
    • Terminate access_token
      POST
    • User Info
      GET
    • Generate client_token
      POST
  • Orders
    • Create order
      POST
    • Show order details
      GET
    • Update order
      PATCH
    • Authorize payment for order
      POST
    • Capture payment for order
      POST
  • Payments
    • Show details for authorized payment
      GET
    • Reauthorize authorized payment
      POST
    • Void authorized payment
      POST
    • Capture authorized payment
      POST
    • Show captured payment details
      GET
    • Refund captured payment
      POST
    • Show refund details
      GET
  • Invoices
    • Invoices
      • Generate invoice number
      • Create draft invoice
      • Show invoice details
      • List invoices
      • Generate QR code
      • Fully update invoice
      • Send invoice
      • Send invoice reminder
      • Cancel sent invoice
      • Delete invoice
      • Search for invoices
      • Record payment for invoice
      • Delete external payment
      • Record refund for invoice
      • Delete external refund
    • Templates
      • List templates
      • Create template
      • Show template details
      • Fully update template
      • Delete template
  • Subscriptions
    • Catalog Products
      • Create product
      • List products
      • Show product details
      • Update product
    • Plans
      • Create plan
      • List plans
      • Show plan details
      • Update plan
      • Deactivate plan
      • Activate plan
      • Update pricing
    • Subscriptions
      • Create subscription
      • Show subscription details
      • Update subscription
      • Revise plan or quantity of subscription
      • Suspend subscription
      • Activate subscription
      • Cancel subscription
      • Capture authorized payment on subscription
      • List transactions for subscription
  • Payouts
    • Create batch payout
      POST
    • Show payout batch details
      GET
    • Show payout item details
      GET
    • Cancel unclaimed payout item
      POST
  • Webhooks
    • List available events
    • Create webhook
    • List webhooks
    • Show webhook details
    • List event notifications
    • List event subscriptions for webhook
    • Show event notification details
    • Trigger a sample event
    • Verify webhook signature
    • Resend event notification
    • Simulate webhook event
    • Update webhook
    • Delete webhook
  • Shipment Tracking
    • Add tracking information for multiple PayPal transactions
    • Show tracking information
    • Update or cancel tracking information for PayPal transaction
  • Transaction Search
    • List transactions
    • List all balances
  • Disputes
    • List disputes
    • Show dispute details
    • Accept claim
    • Appeal dispute
    • Settle dispute
    • Update dispute status
    • Make offer to resolve dispute
    • Provide evidence
    • Acknowledge returned item
    • Provide supporting information for dispute
    • Escalate dispute to claim
    • Accept offer to resolve dispute
    • Send message about dispute to other party
    • Deny offer to resolve dispute
    • Partially update dispute
  • Onboarding (Limited Release)
    • Manage Accounts
      • Create managed account
      • Search managed account through external id
      • Search managed account by Seller Id
      • Partially updates information for a managed account
      • Shows collection of registered wallet domains
  1. Orders

Update order

PATCH
/v2/checkout/orders/{order_id}
Updates an order with a CREATED or APPROVED status. You cannot update an order with the COMPLETED status.

To make an update, you must provide a reference_id. If you omit this value with an order that contains only one purchase unit, PayPal sets the value to default which enables you to use the path: "/purchase_units/@reference_id=='default'/{attribute-or-object}".
Note: For error handling and troubleshooting, see Orders v2 errors.
Patchable attributes or objects:

AttributeOpNotes
intentreplace
payerreplace, addUsing replace op for payer will replace the whole payer object with the value sent in request.
purchase_unitsreplace, add
purchase_units[].custom_idreplace, add, remove
purchase_units[].descriptionreplace, add, remove
purchase_units[].payee.emailreplace
purchase_units[].shipping.namereplace, add
purchase_units[].shipping.addressreplace, add
purchase_units[].shipping.typereplace, add
purchase_units[].soft_descriptorreplace, remove
purchase_units[].amountreplace
purchase_units[].invoice_idreplace, add, remove
purchase_units[].payment_instructionreplace
purchase_units[].payment_instruction.disbursement_modereplaceBy default, disbursement_mode is INSTANT.
purchase_units[].payment_instruction.platform_feesreplace, add, remove

请求参数

Authorization
在 Header 添加参数
Authorization
,其值为在 Basic 之后拼接空格,以及经过 Base64 编码的 username:password
示例:
Authorization: Basic *****************
Path 参数
order_id
string 
必需
示例值:
{{order_id}}
Header 参数
Content-Type
string 
必需
The Content-Type header field is used to specify the nature of the data in the body of an entity. PayPal REST APIs support application/json.
示例值:
application/json
PayPal-Request-Id
string 
必需
The server stores keys for 6 hours. The API callers can request the times to up to 72 hours by speaking to their Account Manager.
示例值:
{{$guid}}
Body 参数application/json
array of:
op
string 
必需
path
string 
必需
value
object  | string 
必需
address_line_1
string 
必需
address_line_2
string 
必需
admin_area_2
string 
必需
admin_area_1
string 
必需
postal_code
string 
必需
country_code
string 
必需
示例
[
    {
        "op": "add",
        "path": "/purchase_units/@reference_id=='default'/shipping/address",
        "value": {
            "address_line_1": "123 Townsend St",
            "address_line_2": "Floor 6",
            "admin_area_2": "San Francisco",
            "admin_area_1": "CA",
            "postal_code": "94107",
            "country_code": "US"
        }
    },
    {
        "op": "add",
        "path": "/purchase_units/@reference_id=='default'/invoice_id",
        "value": "03012022-3303-01"
    }
]

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location -g --request PATCH 'https://api-m.sandbox.paypal.com/v2/checkout/orders/{{order_id}}' \
--header 'PayPal-Request-Id: ' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic Og==' \
--data-raw '[
    {
        "op": "add",
        "path": "/purchase_units/@reference_id=='\''default'\''/shipping/address",
        "value": {
            "address_line_1": "123 Townsend St",
            "address_line_2": "Floor 6",
            "admin_area_2": "San Francisco",
            "admin_area_1": "CA",
            "postal_code": "94107",
            "country_code": "US"
        }
    },
    {
        "op": "add",
        "path": "/purchase_units/@reference_id=='\''default'\''/invoice_id",
        "value": "03012022-3303-01"
    }
]'

返回响应

🟢204204 No Content - Add Invoice Number
application/json
Body
object {0}
示例
{}
🟢204204 No Content - Add Shipping Address
🟢204204 No Content - Update Amount To Include Shipping
🟢204204 No Content - Update Seller's Email Address
🟢204204 No Content - Add/Update Multiple Fields
🟠400400 Bad Request - Invalid Parameter Value
🟠401401 Unauthorized - Invalid Token
🟠404404 Not Found - Order Not Found
🟠422422 Unprocessable Entity - Order Already Completed
🟠422422 Unprocessable Entity - Can Not Modify Intent
上一页
Show order details
下一页
Authorize payment for order
Built with