Poland
BLIK payments in PLN
Before you start
Authorization
How to sign your requests with the API token.
Create payment
The base order request that this page extends.
This payment method is not enabled for all merchants. Check availability with your manager.
Overview
| Currency | Country code | Payment method |
|---|---|---|
PLN | PL | BLIK |
The payer is redirected to paymentLink, enters the 6-digit BLIK code from their banking app and confirms the payment in the app.
amount is in Polish złoty with up to two decimal places, for example 150.00.
What is different from a regular order
The order is created through the standard POST /v1/orders endpoint. The base fields (amount, currency, successUrl, failUrl, callbackUrl, etc.) are the same as for a regular order; on top of them you pass the customer object with payer details.
| Field | Type | Description |
|---|---|---|
customer | object | Payer details. The required set is listed below |
Customer fields
| Field | Type | Required | Description |
|---|---|---|---|
firstName | string | ✅ Yes | First name |
lastName | string | ✅ Yes | Last name |
email | string | ✅ Yes | Payer email |
phone | string | ✅ Yes | Phone number in international format, e.g. +48 600123456. A 9-digit number without a country code is treated as Polish |
country | string | ❌ No | Payer country, ISO 3166-1 alpha-2 (e.g. PL) |
If any of the required fields is missing, the order is not created and the API responds with 400 Bad Request listing the missing fields.
Request example
{
"purpose": "Payment for order #1234",
"amount": "150.00",
"currency": "PLN",
"externalId": "23456789",
"externalUserId": "437568",
"successUrl": "https://example.com/success",
"failUrl": "https://example.com/fail",
"callbackUrl": "https://example.com/webhooks/payments",
"customer": {
"firstName": "Jan",
"lastName": "Kowalski",
"email": "jan.kowalski@example.com",
"phone": "+48 600123456"
}
}Response
The response is a standard order object. The order is created with the CREATED status; redirect the payer to paymentLink to complete the payment.
Order object fields
The final amount may differ from the requested one. In that case the order still moves to COMPLETED and amount in the order object is updated to the amount actually received. Compare it with the expected amount before fulfilling the order.