v1

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

Create order payment

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

An order has an automatically created payment that your customer can use to pay for the order. When the payment expires you can create a new payment for the order using this endpoint. A maximum of 25 payments can be created for an order.

A new payment can only be created while the status of the order is created, and when the status of the existing payment is either expired, canceled or failed.

The endpoint accepts virtually all parameters accepted by the regular Create payment endpoint. Please refer to that endpoint for the full documentation of all parameters.

The payment inherits certain properties, such as the amount and webhookUrl, directly from the order. These cannot be changed via this endpoint.

🔑 Access with

API key

Advanced access token with payments.write

OAuth access with payments.write

post/orders/{orderId}/payments

Request body

methodstring[]

undefined

Possible values: alma applepay bacs bancomatpay bancontact banktransfer belfius billie bizum blik creditcard directdebit eps giftcard ideal in3 kbc klarna mbway mobilepay multibanco mybank paybybank paypal paysafecard pointofsale przelewy24 riverty satispay swish trustly twint vipps voucher

customerIdstring
mandateIdstring nullable

Only relevant for recurring payments and stored cards.

When creating recurring or stored cards payments, the ID of a specific mandate can be supplied to indicate which of the customer's accounts should be debited.

sequenceType'oneoff' | 'first' | 'recurring'
webhookUrlstring nullable

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

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

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.

Example request

{
  "method": [
    "ideal"
  ],
  "customerId": "cst_5B8cwPMGnU",
  "mandateId": "mdt_5B8cwPMGnU",
  "sequenceType": "oneoff",
  "webhookUrl": "https://example.org/webhooks",
  "applicationFee": {
    "amount": {
      "currency": "EUR",
      "value": "10.00"
    }
  }
}