Blik
General Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only PLN currency.
Request
Send a payment request with the following additional data:
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"test": true,
"amount": 1500,
"currency": "PLN",
"language": "en",
"ip": "127.0.0.1",
"description": "description",
"return_url": "https://return.com",
"method": {
"type": "blik"
},
"customer": {
"first_name": "John",
"last_name": "Kohl",
"middle_name": "James",
"external_id": "123abc",
"phone": "0123456789",
"email": "email@example.com",
"country": "GB",
"city": "City",
"address": "First street, 8",
"zip": "10115",
"birth-date": "1990-01-01"
}
}
}
Response
Redirect your customer to the URL received as the value of the form.action parameter.
Response example
{
"transaction": {
"uid": "193d6738-76de-4895-8ba7-bae9f445125d",
"type": "payment",
"status": "pending",
"amount": 1500,
"currency": "PLN",
"description": "description",
"created_at": "2025-01-23T14:01:09Z",
"updated_at": "2025-01-23T14:01:09Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/193d6738-76de-4895-8ba7-bae9f445125d/d7f9bf41df62deb99ce1bc97792e99e7d23fa72f4fef9270525a3a4a793d1e29?language=en",
"payment": {
"status": "pending",
"gateway_id": 4879,
"message": "Transaction was initialized."
},
"blik": {
"type": "blik"
},
"customer": {
"email": "test@example.com",
"ip": null
},
"manually_corrected_at": null,
"version": 0,
"message": "Transaction was initialized.",
"test": true,
"language": "en",
"billing_address": {
"email": "test@example.com"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "https://example/en/checkout?address=TGmEwV1RrNiF9f1Dk7By1Xk8F63P5jcbT1",
"method": "GET",
"fields": []
}
}
}
Refund
Refunds are supported by PG and DC integration options.
Request
Send a standard refund request. The amount value must not exceed the amount of the parent transaction. It is possible to make multiple refunds for the same payment transaction, in this case the sum of refund amounts must not exceed the amount of the corresponding payment transaction.
MH Integration option
Payment
Payment Flow
- The customer selects Blik as a payment method on the merchant's website.
- The merchant sends a payment request to the PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
- The merchant displays the payment status to the customer.
Info
This integration option supports only PLN and EUR currencies.
Request
Send a payment request with the following additional data:
|
|||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 500,
"currency": "PLN",
"description": "description",
"test": true,
"return_url": "https://return.com",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe",
"phone": "17777777777",
"email": "example@example.com",
"country": "PL"
},
"method": {
"type": "blik",
"user_id": "fdsaf345"
}
}
}
Response
The blik response object will have the parameters from the request as well as the form object with a link to which you need to redirect the customer to finalize the payment.
Response example
{
"transaction": {
"uid": "0c317a6e-6484-4d3f-9880-362e44a177b3",
"type": "payment",
"status": "pending",
"amount": 500,
"currency": "PLN",
"description": "description",
"created_at": "2024-03-14T12:52:34Z",
"updated_at": "2024-03-14T12:52:34Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/0c317a6e-6484-4d3f-9880-362e44a177b3/c464dc235b72b3cdf5cc5eee22493e13020bf89b1311aca6b9102a1f406a6d1d?language=en",
"payment": {
"status": "pending",
"gateway_id": 3806,
"ref_id": "1710420754629",
"message": "Transaction was initialized",
"rrn": 33761341
},
"blik": {
"user_id": "fdsaf345",
"type": "blik"
},
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": "example@example.com",
"country": "PL",
"phone": "17777777777",
"ip": "null"
},
"manually_corrected_at": null,
"message": "Transaction was initialized",
"test": true,
"language": "en",
"billing_address": {
"first_name": "John",
"last_name": "Doe",
"email": "example@example.com",
"country": "PL",
"phone": "17777777777"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "https://mh/v1/paymentpage/1298/1710420754629",
"method": "GET",
"fields": []
}
}
}
CA Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only PLN currency.
Request
Send a payment request with the following additional data:
|
|||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 1010,
"currency": "PLN",
"description": "description",
"skip_duplicate_check": true,
"test": false,
"tracking_id": "189",
"notification_url": "https://notification-url",
"return_url": "https://return-url",
"ip": "127.0.0.1",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe",
"country": "PL",
"city": "Warsaw",
"zip": "00-669",
"email": "john@example.com",
"address": "1st Street",
"phone": "17777777777",
"external_id": "123bh7"
},
"method": {
"type": "blik"
}
}
}
Response
Redirect the customer to the URL received as the value of the form.action parameter.
Response example
{
"transaction": {
"uid": "b9265cbb-1a18-4276-ba32-7508a93eec4d",
"type": "payment",
"status": "pending",
"amount": 1010,
"currency": "PLN",
"description": "description",
"created_at": "2026-04-23T13:57:16Z",
"updated_at": "2026-04-23T13:57:16Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/b9265cbb-1a18-4276-ba32-7508a93eec4d/3d8e6b0e0d2a8ef787d70cc3d150496681e7a1b388f4602c36e41e77cb37c673?language=en",
"payment": {
"status": "pending",
"gateway_id": 6539,
"ref_id": "ca096dc9-4924-4b67-869f-2ed3ace1c579",
"message": "Transaction was initialized."
},
"blik": {
"type": "blik",
"use_pending_page": true
},
"customer": {
"zip": "00-669",
"city": "Warsaw",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "PL",
"last_name": "Doe",
"first_name": "John",
"external_id": "123bh7",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 2,
"message": "Transaction was initialized.",
"tracking_id": "189",
"test": false,
"language": "en",
"billing_address": {
"zip": "00-669",
"city": "Warsaw",
"email": "john@example.com",
"phone": "17777777777",
"address": "1st Street",
"country": "PL",
"last_name": "Doe",
"first_name": "John"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"smart_routing_verification": {
"status": "successful"
},
"gateway": {
"iframe": false
},
"form": {
"action": "link-to-payment-page",
"fields": [],
"method": "GET"
}
}
}
PFN Integration option
Payment
This integration option supports two payment flows. In the first flow, the customer enters a BLIK code on the merchant’s website, and the code is sent in the payment request. In the second flow, the customer is redirected to the provider’s page to complete the payment. Contact your manager or the Tech Support Team to confirm which flow is available for your shop.
Payment with BLIK code entry on the merchant’s website
- The customer initiates the payment on the merchant's website and submits the 6-digit BLIK code.
- The merchant sends a payment request to PaySage.io.
- PaySage.io sends a response with the pending status.
- The customer confirms the payment in their banking app.
- PaySage.io sends a webhook notification with the final payment status to the merchant.
Payment with a redirect to the provider’s page
- The customer initiates the payment on the merchant's website.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with a link to the payment page.
- The merchant redirects the customer to the payment page.
- The customer completes the payment.
- PaySage.io sends a webhook notification with the payment status to the merchant.
Info
This integration option supports only PLN currency.
Request
Send a payment request with the following additional data:
|
|||||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 100,
"currency": "PLN",
"description": "Order description",
"test": false,
"tracking_id": "Tracking-123",
"notification_url": "https://example.com/notification",
"return_url": "https://example.com/return",
"ip": "127.0.0.1",
"language": "en",
"customer": {
"first_name": "John",
"last_name": "Doe",
"birth_date": "1990-01-25",
"email": "john@example.com",
"phone": "48500111222",
"city": "Warsaw",
"address": "Main Str. 1",
"zip": "00669",
"external_id": "123bh7"
},
"method": {
"type": "blik",
"password": "123456"
}
}
}
Response
Response example
{
"transaction": {
"uid": "0fa0eb13-d58b-4cac-b39a-0fb9604410e6",
"type": "payment",
"status": "pending",
"amount": 100,
"currency": "PLN",
"description": "Order description",
"created_at": "2026-09-30T08:18:04Z",
"updated_at": "2026-09-30T08:18:04Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/0fa0eb13-d58b-4cac-b39a-0fb9604410e6/ba9a1640045b7feca38c200475eb1cf2f16e2f779e0ecaa0111b1b2d2d8d0262?language=en",
"payment": {
"status": "pending",
"gateway_id": 7371,
"ref_id": "665735860496205854",
"message": "Transaction was initialized."
},
"blik": {
"type": "blik"
},
"customer": {
"zip": "00669",
"city": "Warsaw",
"email": "john@example.com",
"phone": "48500111222",
"address": "Main Str. 1",
"last_name": "Doe",
"birth_date": "1990-01-25",
"first_name": "John",
"external_id": "123bh7",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 1,
"message": "Transaction was initialized.",
"tracking_id": "Tracking-123",
"test": false,
"language": "en",
"billing_address": {
"zip": "00669",
"city": "Warsaw",
"email": "john@example.com",
"phone": "48500111222",
"address": "Main Str. 1",
"last_name": "Doe",
"birth_date": "1990-01-25",
"first_name": "John"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"smart_routing_verification": {
"status": "skipped"
},
"gateway": {
"iframe": false
}
}
}
APR Integration option
Payment
Payment Flow
- The customer initiates the payment on the merchant's website and submits a 6-digit BLIK code.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with the
pendingstatus. - The customer confirms the payment in their banking app.
- PaySage.io sends a webhook notification with the final payment status to the merchant.
Info
This integration option supports only PLN currency.
Request
Send a payment request with the following data:
|
|||||||||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 100,
"currency": "PLN",
"description": "Order 1234",
"return_url": "https://example.com/return",
"customer": {
"external_id": "customer-1234",
"first_name": "Anna",
"last_name": "Nowak",
"birth_date": "1990-01-25",
"email": "anna@example.com",
"phone": "48500111222",
"city": "Warsaw",
"address": "Main Street 1",
"zip": "00669"
},
"method": {
"type": "blik",
"password": "123456"
}
}
}
Response
The payment initially has the pending status. The customer confirms it in their banking app. Use the webhook notification to get the final status.
Response example
{
"transaction": {
"uid": "0be95466-c46d-47d8-a1d9-e7570ed65316",
"type": "payment",
"status": "pending",
"amount": 100,
"currency": "PLN",
"description": "Order 1234",
"created_at": "2026-10-02T09:14:27Z",
"updated_at": "2026-10-02T09:14:27Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/0be95466-c46d-47d8-a1d9-e7570ed65316/d5da7a2d71df1bba2fefb78f9bf059a25d42ff8bd14b3cff02fa934c09245342",
"payment": {
"status": "pending",
"gateway_id": 7494,
"ref_id": "30066568314",
"message": "Transaction was initialized."
},
"blik": {
"type": "blik"
},
"customer": {
"zip": "00669",
"city": "Warsaw",
"email": "anna@example.com",
"phone": "48500111222",
"address": "Main Street 1",
"last_name": "Nowak",
"birth_date": "1990-01-25",
"first_name": "Anna",
"external_id": "customer-1234",
"ip": null
},
"manually_corrected_at": null,
"version": 1,
"message": "Transaction was initialized.",
"test": false,
"billing_address": {
"zip": "00669",
"city": "Warsaw",
"email": "anna@example.com",
"phone": "48500111222",
"address": "Main Street 1",
"last_name": "Nowak",
"birth_date": "1990-01-25",
"first_name": "Anna"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"smart_routing_verification": {
"status": "skipped"
},
"gateway": {
"iframe": true
}
}
}
PPZ Integration option
Payment
Payment flow
- The customer initiates the payment on the merchant's website and enters a six-digit BLIK code.
- The merchant sends a payment request to PaySage.io.
- PaySage.io responds with the
pendingstatus. - The customer confirms the payment in their banking app.
- PaySage.io sends a webhook notification with the final payment status. The merchant may also use the status query.
Info
This integration option supports only PLN. The minimum payment amount is 5 PLN.
Request
Send a payment request with the following data:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Request example
{
"request": {
"amount": 500,
"currency": "PLN",
"return_url": "https://example.com/return",
"description": "Order 1234",
"ip": "203.0.113.10",
"method": {
"type": "blik",
"password": "123456"
},
"customer": {
"first_name": "Anna",
"last_name": "Nowak",
"email": "anna@example.com",
"external_id": "customer-1234",
"phone": "+48500111222",
"address": "Main Street 1",
"city": "Warsaw",
"zip": "00-669",
"country": "PL"
},
"additional_data": {
"browser": {
"user_agent": "Mozilla/5.0 (iPhone)"
}
}
}
}
Response
The payment initially has the pending status. The customer confirms it in their banking app. Use the webhook notification or status query to get the final status.
Response example
{
"transaction": {
"uid": "68c9b124-8c36-4cfb-bbba-4b6f39efe30f",
"type": "payment",
"status": "pending",
"amount": 500,
"currency": "PLN",
"description": "Order 1234",
"created_at": "2026-10-02T14:59:05Z",
"updated_at": "2026-10-02T14:59:06Z",
"method_type": "blik",
"receipt_url": "https://backoffice.paysage.io/customer/transactions/68c9b124-8c36-4cfb-bbba-4b6f39efe30f/22fd22ec6dedc1d8e83fa0300a749dd4cdfb9bc2d1563b1f502f0f7dc9e6973d",
"payment": {
"status": "pending",
"gateway_id": 7514,
"ref_id": "248797710577",
"message": "Transaction was initialized."
},
"blik": {
"type": "blik"
},
"customer": {
"zip": "00-669",
"city": "Warsaw",
"email": "anna@example.com",
"phone": "+48500111222",
"address": "Main Street 1",
"country": "PL",
"last_name": "Nowak",
"first_name": "Anna",
"external_id": "customer-1234",
"ip": "203.0.113.10"
},
"manually_corrected_at": null,
"version": 1,
"message": "Transaction was initialized.",
"test": false,
"billing_address": {
"zip": "00-669",
"city": "Warsaw",
"email": "anna@example.com",
"phone": "+48500111222",
"address": "Main Street 1",
"country": "PL",
"last_name": "Nowak",
"first_name": "Anna"
},
"additional_data": {
"browser": {
"user_agent": "Mozilla/5.0 (iPhone)"
},
"payment_method": {
"type": "alternative"
}
},
"smart_routing_verification": {
"status": "skipped"
},
"gateway": {
"iframe": false
}
}
}
Refund
Request
Send a standard refund request. The amount value must equal the amount of the corresponding payment transaction. Only one full refund is supported for each payment transaction.