Buy Now Pay Later

Consumer Journey

BLIK Buy Now Pay Later (BNPL) follows a similar flow as the BLIK Redirect flow. There are two main flows for BLIK BNPL, depending on whether the consumer is choosing BLIK BNPL for the first time, or they have used BLIK BNPL before:

New Consumer

In this flow, the consumer is using BLIK Buy Now Pay Later for the first time, and they need to agree with their bank terms and conditions for the BNPL product:

  1. The consumer picks BLIK BNPL as their payment method in the shop
  2. The consumer is redirected to BLIK's hosted payment page.
  3. The consumer launches their bank app on their mobile device. When the bank app launches, it displays a six-digit BLIK payment code. This code is valid for two minutes.
  4. The consumer enters the six digit code into the field on BLIK's hosted payment page. When the code is accepted, the consumer is redirected to the issuing bank's terms and conditions page.
  5. The consumer agrees to transfer personal data within the personal banking application.
  6. BLIK verifies the consumer through the issuing bank and establishes the credit limit.
  7. The consumer agrees to the terms and executes the first payment with Buy Now Pay Later.
  8. The consumer is returned to the merchant's website and sees a transaction successful message on the merchant side.

Returning Consumer

In this flow, the agreement with the personal bank on the terms of Buy Now Pay Later is established:

  1. On the merchant's website, the consumer chooses BLIK BNPL as the payment method.
  2. The consumer is redirected to BLIK's hosted payment page.
  3. The consumer launches their bank app on their mobile device. When the bank app launches, it displays a six-digit BLIK payment code. This code is valid for two minutes.
  4. The consumer enters the six digit code into the field on BLIK's hosted payment page. When the code is accepted, the consumer is returned to the merchant's website and sees a transaction successful message on the merchant side.


Make a BLIK Buy Now Pay Later payment

BLIK_BNPL payments follow our standardized REDIRECT payment flow. Enabling your consumers to provide the 6-digit BLIK code on your website or in-store experience.

To create a BLIK payment, you'll need to provide the following data at minimum when calling our payment charges API:

FieldDescription
paymentMethodBLIK_BNPL
amount.valueThe amount to be paid in the smallest units of the currency used.
amount.currencyPLN
consumer.nameFull name of the consumer.
consumer.countryThe country where the consumer is shopping.
authenticationSettings: REDIRECT
settings.returnUrl
Add the URL where the consumer should be redirected after they complete the payment. Required for the REDIRECT flow.

Request

POST /v1/payment-charges

{
    "paymentMethod": "BLIK_BNPL",
    "amount": {
        "value": 100,
        "currency": "PLN"
    },
    "consumer": {
        "name": "John Smith",
        "country": "PL"
    },
    "authenticationSettings": [
        {
            "type": "REDIRECT",
            "settings": {
                "returnUrl": "https://www.ppro.com/"
            }
        }
    ]
}

Response

You'll receive our standard payment charge response with the available authentication methods:

{
    "id": "charge_d3PU9htTLOQ2IXSTC988C",
    "paymentMethod": "BLIK_BNPL",
    "paymentMedium": "ECOMMERCE",
    "scheduleType": "UNSCHEDULED",
    "instrumentId": "instr_uEAndU61oZPHWLVMTM3n8",
    "currency": "PLN",
    "country": "PL",
    "status": "AUTHENTICATION_PENDING",
    "consumer": {
        "name": "John Smith",
        "country": "PL"
    },
    "authenticationMethods": [
        {
            "details": {
                "requestUrl": "https://redirection-target.ppro.com",
                "requestMethod": "POST"
            },
            "type": "REDIRECT"
        }
    ],
    "authorizations": [
        {
            "id": "authz_2ZNLCGfjJ03xA6Z1tBnnt",
            "amount": 100,
            "status": "AUTHENTICATION_PENDING",
            "createdAt": "2025-09-05T08:33:10.425Z",
            "updatedAt": "2025-09-05T08:33:10.425Z"
        }
    ],
    "captures": [],
    "refunds": [],
    "voids": [],
    "createdAt": "2025-09-05T08:33:10.094Z",
    "updatedAt": "2025-09-05T08:33:10.425Z",
    "_links": {
        "authorizations": {
            "href": "/v1/payment-charges/charge_d3PU9htTLOQ2IXSTC988C/authorizations"
        },
        "captures": {
            "href": "/v1/payment-charges/charge_d3PU9htTLOQ2IXSTC988C/captures"
        },
        "refunds": {
            "href": "/v1/payment-charges/charge_d3PU9htTLOQ2IXSTC988C/refunds"
        },
        "voids": {
            "href": "/v1/payment-charges/charge_d3PU9htTLOQ2IXSTC988C/voids"
        }
    }
}

Pick the desired authentication method

REDIRECT

  1. Redirect your consumer to the returned $.authenticationMethods[?(@.type == "REDIRECT")].details.requestUrl.
    For example, with the value of https://redirection-target.ppro.com/ using the returned $.authenticationMethods[?(@.type == "REDIRECT")].details.requestMethod HTTP method.
  2. The consumer will be presented with the reference number and instructions to complete the payment.

Handling the payment result

REDIRECT

  1. After the consumer completes the payment, they are redirected to the returnUrl specified in the payment charge creation request.
  2. Upon redirect back to your site, retrieve the latest payment status by performing a GET /v1/payment-charges/{paymentChargeId}. Use the returned status field to determine and display the final payment outcome to the consumer.
  3. Additionally, webhooks are triggered to notify you of the payment result. This ensures you receive the outcome even if the consumer closes their browser or fails to return to your website.

Payment instrument

A PASSTHROUGH_WALLET instrument will be created for BLIK, with no additional data provided.

Request

GET /v1/payment-instruments/{instrument-id}

Response

{
    "id": "instr_K7WokqNcs416KSlLPFo2i",
    "type": "PASSTHROUGH_WALLET"
}

Sandbox testing

On the sandbox environment, use the code 777nnn to simulate a successful payment.