worldline Direct
Sign up

BLIK

Intro

In pilot

BLIK is the most popular mobile payment method in Poland for online payments. It enables e-commerce payments, POS payments (including contactless payments), ATM cash withdrawals, and mobile P2P payments. 

BLIK is linked to a bank account rather than a physical card. With 90% of Polish bank customers having access to BLIK through their banking apps, it offers a broad reach and convenience.

To complete a payment with BLIK, customers generate a unique 6-digit code within their banking app and enter it at checkout. They then confirm the transaction in their app, ensuring seamless and secure authentication without third-party involvement.

Integrating BLIK is simple and requires only a few additional properties in the request. Merchants can easily enable BLIK payments through hosted checkout solutions, plugins, or direct API integration.

Overview

Payment group:
Payment product id:
3204
Key benefits
  • Easy integration
  • Wide coverage 
  • Secure payments
  • Allows Direct Sales, Multiple/partial/refunds

Countries & currencies

Supported countries

Supported currencies

  • Polish zloty (PLN)

Integration

Requirements  

Merchant must have an Acceptance contract with Worldline e-commerce solutions: 
• Merchant must have an Acquiring contract with WL Red (EU). 
• Self-activation of payment method via Back Office or RB Merchant 
Portal. 

Hosted Checkout Page 

For merchants using our Hosted Checkout Page, our secure payment page handles the BLIK payment interface for you. This approach eliminates the need to develop your own payment form and manage PCI compliance concerns. 
Advantages of Using Hosted Payment Page for BLIK:

  • Reduced development effort and time to market. 
  • No need to handle sensitive BLIK codes on your servers. 
  • PCI-compliant payment solution provided by us. 
  • Customizable look and feel to match your brand using our Template builder. 
  • Built-in handling payment status updates. Your customers see exact payment status updates in real-time and in natural language, to improve trust, transaction recovery and conversion rates. 

          Integration Steps for Hosted Payment Page 

          Create a Hosted Checkout
           

          When your customer proceeds to checkout, initiate a hosted checkout session by calling our API. Add the following properties to a standard CreateHostedCheckout request: 


          "order":{ 
          "amountOfMoney":{ 
          "currencyCode":"PLN", 
          "amount":1700 
          }, 
          "redirectPaymentMethodSpecificInput":{ 
          "paymentProductId":3204, 
          "requiresApproval":false 


          Properties 

          Remarks 

          order.amountOfMoney 
          amount 
          currencyCode 

          amount : The gross amount you want to charge for this order. 
          currencyCode : The ISO 4217 currency code for this amount. 

          redirectPaymentMethodSpecificInput 
          paymentProductId 
          requiresApproval 

          paymentProductId: The numeric identifier of the payment method on our platform. Find 
          this id in the "Overview" chapter. It instructs our platform to send your customers 
          directly to the TWINT-branded version of our Hosted Checkout Page. If omitted, our 
          platform sends your customers to the Hosted Checkout Page instead, allowing them 
          to choose this or any other payment method that is active in your account. 
          requiresApproval: Set to either "true" or "false" depending on whether you want to 
          process payments in authorisation/direct sale mode 

          Process flows

          Depending on your customers' device(s) used, the checkout flow for BLIK is the same: 
          With a desktop or a mobile device. 

          1. Your customers finalise an order on their desktop or mobile browser in your shop and select BLIK as a payment method.
          2. You send this CreateHostedCheckout request to our platform.
          3. You redirect your customers on their desktop or mobile browser via the redirectUrl to our Hosted Checkout Page. Your customers type and enter the 6-digit BLIK code that is generated in their banking application.
          4. Your customers confirms the payment in their banking application.
          5. We receive the transaction result.
          6. We redirect your customers to your redirectUrl on their desktop or mobile browser.
          7. You request the transaction result from our platform via GetHostedCheckout or receive the result via webhooks.
          8. If the transaction was successful, you can deliver the goods / service. 

          Setting Up Webhooks for Payment Status Updates

          For real-time updates on payment status changes, you should configure webhooks in your merchant account:

          1. Log in to the Merchant Portal. 
          2. Navigate to Configuration > Technical settings > Webhook configuration.
          3. Configure a webhook endpoint URL that will receive payment status updates.
          4. Select the events you want to receive notifications for (e.g., "PAYMENT_STATUS_CHANGED"). 
            Our platform will send webhook notifications to your endpoint whenever a payment status changes, allowing you to update your order status in real-time. 

          Integration Flow

          Testing

          Test Environment 

          Before going live, we advise you thoroughly test your BLIK integration in the test environment. You can test all scenarios including: 

          • Successful payment flows 
          • Refund processes 
          • Error scenarios 

              In the test environment, you'll need to use test BLIK codes provided below. Contact your account manager or our customer support for further support.

              Test cases 

              Test case 

              Description 

              Expected Result 

              Test code 

              Successful payment 

              Complete a payment with a valid test BLIK code 

              Transaction completes successfully and order status updates accordingly 

              999 000 

              Expired BLIK code 

              Attempt payment with a BLIK code older than 2 minutes 

              Transaction fails with appropriate error message. 

               

              “Incorrect BLIK code was entered. Please try again.” 

              989 111 

               

              Note: This statement must be included in the test scenario. To replicate this behavior, set the merchant's website URL as 'mock' in the Backoffice (BO) and use the amount 48400 in the request (484.00 zloty). 

              General error 

              General scheme errors 

              Transaction fails with appropriate error message. 

              961 111 

              User declined 

              The transaction authentication declined by the shopper in the banking app 

              Transaction fails with appropriate error message.  

              “Payment rejected in a banking application.” 

               

              934 111 

              Insufficient funds 

              Attempt to pay with insufficient balance in the bank account 

              Transaction fails with appropriate error message.  

               

              “Payment failed. Insufficient funds.” 

               

              960 111 

              Timeout 

              The shopper did not authorize the payment within the 2-minute BLIK code expiry time 

              Transaction fails with appropriate error message. "The payment was not confirmed in time. Please retry and confirm in your banking app promptly." 

              989 111 

              Issuer declined 

              The payment was declined by the shopper’s bank 

              Transaction fails with appropriate error message. 

              902 111 

               
              Going Live 

              Contact your account manager or our support team and request for BLIK payment method.

              When going live, make sure to switch all API endpoints and credentials from test to production environment. Failing to do so will result in unsuccessful transactions.

              Was this page helpful?

              Do you have any comments?

              Thank you for your response.