Create Payment Request

Creates an online payment request for the cart and returns a checkout URL
in params.checkout_url. Share that URL with the end customer to collect
the payment.

Important Notes

  • Requires carts:write scope.
  • Online payments must be enabled for the company; otherwise the request fails.
  • The payment channel is always online; it cannot be selected through the public API.
  • Booking reservation errors proxied from platform-sales use legacy single-key codes (e.g. company_payments_disabled, invalid_start_time, booking_already_sold), not the {error, detail} shape.
  • The payment request always covers the full cart total.
  • When the cart contains service items with on-demand booking instances, the bookings are created and reserved at this point, and params.expires_at is set (about 15 minutes): if the payment is not completed by then, the payment request expires and the reserved bookings are released automatically.
  • Creating a new payment request on a cart cancels any previous pending one.

Errors Dictionary

StatusErrorDetailDescription
401unauthorizedinvalid_api_keyMissing or invalid Bearer token.
401unauthorizedapi_config_inactiveAPI access is inactive for this company.
403forbiddenscope_deniedAPI key lacks carts:write scope.
404cart_not_foundCart not found for this company.
422company_payments_disabledOnline payments are not enabled for the company or the cart items are not payable online.
429rate_limitedburst_limit_exceededPer-minute request limit exceeded.
429rate_limiteddaily_quota_exceededDaily request quota exceeded.
502upstream_unavailableThe upstream service is unavailable.
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
int64
required
≥ 1

Cart unique identifier.

Responses

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json