Update order

PATCH {{base_url}}/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.
purchaseunitsreplace, add
purchaseunits[].customidreplace, add, remove
purchaseunits[].descriptionreplace, add, remove
purchaseunits[].payee.emailreplace
purchaseunits[].shipping.namereplace, add
purchaseunits[].shipping.addressreplace, add
purchaseunits[].shipping.typereplace, add
purchaseunits[].softdescriptorreplace, remove
purchaseunits[].amountreplace
purchaseunits[].invoiceidreplace, add, remove
purchaseunits[].paymentinstructionreplace
purchaseunits[].paymentinstruction.disbursementmodereplaceBy default, disbursementmode is INSTANT.
purchaseunits[].paymentinstruction.platformfeesreplace, add, remove

Request Body

{"0"=>{"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"}}, "1"=>{"op"=>"add", "path"=>"/purchase_units/@reference_id=='default'/invoice_id", "value"=>"03012022-3303-01"}}

HEADERS

KeyDatatypeRequiredDescription
Content-TypestringThe 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.
PreferstringThe preferred server response upon successful completion of the request. Value is:<ul><li><code>return=minimal</code>. The server returns a minimal response to optimize communication between the API caller and the server. A minimal response includes the <code>id</code>, <code>status</code> and HATEOAS links.</li><li><code>return=representation</code>. The server returns a complete resource representation, including the current state of the resource.</li></ul>
PayPal-Request-IdstringThe server stores keys for 6 hours. The API callers can request the times to up to 72 hours by speaking to their Account Manager.
PayPal-Client-Metadata-IdstringOptional. Verifies that the payment originates from a valid, user-consented device and application. Reduces fraud and decreases declines. Transactions that do not include a client metadata ID are not eligible for PayPal Seller Protection.
PayPal-Partner-Attribution-IdstringOptional. Identifies the caller as a PayPal partner. To receive revenue attribution, specify a unique build notation (BN) code. BN codes provide tracking on all transactions that originate or are associated with a particular partner. To find your BN code, see Code and Credential Reference.
PayPal-Auth-AssertionstringAn API client-provided JSON Web Token (JWT) assertion that identifies the merchant. To use this header, you must get consent to act on behalf of a merchant.