v1

latestOpenAPI 3.1.0CC-BY-NC-SA-4.02026-07-2413803.8 MB
Orders API

Update order

⚠️ We no longer recommend using the Orders API. Please refer to the Payments API instead.

Certain details of an existing order can be updated.

For an in-depth explanation of each parameter, see Create order.

🔑 Access with

API key

Advanced access token with orders.write

OAuth access with orders.write

patch/orders/{orderId}

Request body

orderNumberstring

The order number for this order. We recommend each order number to be unique.

redirectUrlstring nullable

The URL your customer will be redirected to after the payment process.

It could make sense for the redirectUrl to contain a unique identifier – like your order ID – so you can show the right page referencing the order when your customer returns.

The parameter is normally required, but can be omitted for recurring payments (sequenceType: recurring) and for Apple Pay payments with an applePayPaymentToken.

cancelUrlstring

The URL your customer will be redirected to when the customer explicitly cancels the payment. If this URL is not provided, the customer will be redirected to the redirectUrl instead — see above.

Mollie will always give you status updates via webhooks, including for the canceled status. This parameter is therefore entirely optional, but can be useful when implementing a dedicated customer-facing flow to handle payment cancellations.

webhookUrlstring

The webhook URL where we will send order status updates to.

The webhookUrl is optional, but without a webhook you will miss out on important status changes to your order.

The webhookUrl must be reachable from Mollie's point of view, so you cannot use localhost. If you want to use webhook during development on localhost, you must use a tool like ngrok to have the webhooks delivered to your local machine.

testmodeboolean

Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.

Most API credentials are specifically created for either live mode or test mode, in which case this parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting testmode to true.

Example request

{
  "redirectUrl": "https://www.example.com/redirect",
  "cancelUrl": "https://www.example.com/cancel",
  "webhookUrl": "https://www.example.com/webhook",
  "billingAddress": {
    "title": "Mr.",
    "givenName": "John",
    "familyName": "Doe",
    "organizationName": "Mollie B.V.",
    "streetAndNumber": "Keizersgracht 126",
    "streetAdditional": "4th floor",
    "postalCode": "5678AB",
    "email": "example@email.com",
    "city": "Amsterdam",
    "region": "Noord-Holland",
    "country": "NL"
  },
  "shippingAddress": {
    "title": "Mr.",
    "givenName": "John",
    "familyName": "Doe",
    "organizationName": "Mollie B.V.",
    "streetAndNumber": "Keizersgracht 126",
    "streetAdditional": "4th floor",
    "postalCode": "5678AB",
    "email": "example@email.com",
    "city": "Amsterdam",
    "region": "Noord-Holland",
    "country": "NL"
  }
}

Response

The updated order object.