Skip to main content

BLIK Payment Integration

BLIK is a hugely popular mobile payment method in Poland. Customers approve the payment in their banking app. This guide explains how to accept BLIK payments with the Netvalve Payment Gateway.

Availability
Customer countryCurrencypaymentOption
Poland (PL)PLNapm_blik

The order currency must be PLN for BLIK to be offered.

For the shared redirect flow, webhook handling, and Checkout SDK notes, see the European Payment Methods overview.


How to offer BLIK​

Contact the Netvalve team to enable BLIK on your account before going live.


Step 1 — Create the order​

Send a POST request to the Create Order endpoint with paymentOption set to "apm_blik" and the order currency set to PLN.

POST /order — request body
{
"amount": 199.00,
"currency": "PLN",
"siteId": "f76fb7ed-3312-4791-a216-45918f899271",
"clientOrderId": "{{clientOrderId}}",
"orderDesc": "Order #12345",
"successUrl": "https://merchantsite.com/success.html",
"cancelUrl": "https://merchantsite.com/cancel.html",
"failedUrl": "https://merchantsite.com/failed.html",
"pendingUrl": "https://merchantsite.com/pending.html",
"paymentOption": "apm_blik",
"customerDetails": {
"customerAddress": "1 Test Street",
"customerCity": "Warsaw",
"customerCountryCode": "PL",
"customerEmail": "customer@example.com",
"customerIp": "123.123.123.123",
"customerName": "Piotr",
"customerLastName": "Kowalski",
"customerPhone": "800-1234567",
"customerZipCode": "00-001"
}
}
tip

paymentOption accepts a comma-separated list. For example, "card,apm_blik" shows both card and BLIK on the hosted page.


Step 2 — Redirect and handle the outcome​

On success the response contains a redirectUrl (verify responseCode === "GTW_1000" first). Send the customer there; Netvalve takes them to BLIK to authorise, then returns them to one of your URLs:

OutcomeRedirect target
Payment succeededsuccessUrl
Customer cancelledcancelUrl
Payment failedfailedUrl
Payment pendingpendingUrl

Treat the webhook or an Inquiry poll as the source of truth for the final result.


Sandbox testing​

Create the order against the Sandbox / UAT base URL and follow the redirectUrl. On the BLIK test page:

  1. Enter any 6-digit code — for example 999009 — to simulate a successful payment. No banking app is needed in sandbox.
  2. Check that the customer lands on your successUrl and that your webhook records the same result.

To exercise the failure paths, abandon or cancel the payment on the test page instead of submitting a code, and verify your cancelUrl / failedUrl handling.

See Testing in sandbox for the shared setup, amount limits, and how to test the pending path.


ResourceLink
European Payment Methods overviewOverview
Hosted Payment Page guideHosted Payment Page
Swagger API referenceAPI Reference
Webhook Message guideWebhook Message
Error Codes referenceError Codes