Bizum for Payment Setup API
Last updated: May 13, 2026
To accept Bizum payments, you must:
- Create a payment setup.
- Confirm the payment.
- Redirect the customer to Bizum.
Call the Create a payment setup endpoint.
Information
Your base URL's {prefix} value is unique to your account and environment. To learn how to retrieve your base URLs for the sandbox and production environments, see API endpoints.
post
https://{prefix}.api.checkout.com/payments/setups
1{2"amount": 100,3"currency": "EUR",4"customer": {5"phone": {6"country_code": "34",7"number": "700000000"8}9},10"settings": {11"success_url": "https://example.com/payments/success",12"failure_url": "https://example.com/payments/failure"13},14"processing_channel_id": "pc_3wuuqzzjbrzexbu4osjacmk7q4"15}
In the request body, provide the following:
| Field | Description |
|---|---|
number | The payment amount, in the minor currency unit. |
string | Three-letter ISO 4217 currency code. |
string | The customer's phone country code. |
string | The customer's phone number. |
string | The processing channel's unique identifier. |
string | The URL to redirect the customer to if the payment fails. |
string | The URL to redirect the customer to if the payment succeeds. |
string | A description of the payment. |
string | A reference you can use to identify the payment. |
1{2"id": "set_rcmepwrchqab2wsergcafvijfy",3"processing_channel_id": "pc_wzjki6hw5puepb5fnvqlizj2e4",4"amount": 100,5"currency": "EUR",6"payment_type": "Regular",7"reference": "ORDER_01234",8"description": "Bizum payment",9"payment_methods": {10"bizum": {11"status": "ready",12"flags": []13}14},15"available_payment_methods": [16"bizum"17],18"settings": {19"success_url": "https://example.com/payments/success",20"failure_url": "https://example.com/payments/failure"21}22}
The response returns a payment_methods object, which contains the payment methods enabled on your account.
When all required fields are present, the payment_methods.bizum object shows a ready status.
Confirm the payment by calling the Confirm a payment setup endpoint and provide:
- The payment setup
idas the{id}path parameter. bizumas the{payment_method_name}path parameter.
post
https://{prefix}.api.checkout.com/payments/setups/{id}/confirm/bizum
If you receive a 202 Accepted response with a payment id value and the status field set to Pending, your request was successful.
1{2"id": "pay_7ehiotldrlvujfpiyeo42i2roe",3"status": "Pending",4"reference": "ORDER_01234",5"customer": {6"id": "cus_urx7wggzcpzufjjynbn7t6l5mq",7"phone": {8"country_code": "34",9"number": "700000000"10}11},12"_links": {13"self": {14"href": "https://{prefix}.api.checkout.com/payments/pay_7ehiotldrlvujfpiyeo42i2roe"15}16}17}
The customer confirms the payment using their online banking app. After confirmation, the customer is redirected back to your settings.success_url or settings.failure_url.
In production, Bizum payments expire after four minutes if the customer does not confirm the payment in their online banking app.