> For the complete documentation index, see [llms.txt](https://docs.saferpay.com/home/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.saferpay.com/home/integration-guide/payment-methods/blik.md).

# BLIK

BLIK payments can be processed with Saferpay without much effort. This chapter describes what needs to be considered in this regard.

## General requirements

The handling of BLIK payments with Saferpay requires:

* A [corresponding license](/home/master/licensing.md) and thus a valid identification with a username and password for the Saferpay system.
* Availability of at least one active Saferpay terminal via which payments can be carried out, and availability of the associated Saferpay TerminalId.

{% hint style="info" %}
Need a BLIK contract? Simply [contact our sales](/home/integration-guide/support.md#worldline-sales-team) to get one.
{% endhint %}

### Technical requirements

The general integration of BLIK can only be done via the [Payment Page](/home/integration-guide/licences-and-interfaces/payment-page.md) or the Transaction Interface (see [Alternative Mode](#alternative-mode)) and requires the following things to be noted:

* SpecVersion 1.38 or higher.
  * **Important:** BLIK has been backported to SpecVersions 1.38 through 1.42. When implementing BLIK for Spec-Versions lower than 1.43, please make sure that your implementation is capable of processing the new values returned by the Saferpay API, e.g., PaymentMethods now returning "BLIK" as a value, which was previously not specified.
* For [Alternative Mode](#alternative-mode):
  * **`Payer.IpAddress`** is mandatory.
  * **`Payer.UserAgent`** is mandatory.

Furthermore, for other flows (Refunds etc.), please also refer to the table below.

### Supported features

| Feature                                                                                                                                                                               |    Support   |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------: |
| [Capture](/home/integration-guide/licences-and-interfaces/capture-and-daily-closing.md)/[Cancel](/home/integration-guide/licences-and-interfaces/capture-and-daily-closing.md#cancel) | <p>❌<br></p> |
| Multipart Captures                                                                                                                                                                    |       ❌      |
| Secure Card Data                                                                                                                                                                      |       ❌      |
| [Refunds](/home/integration-guide/licences-and-interfaces/transaction-interface/refunds.md)                                                                                           |       ✅      |
| Recurring Payments                                                                                                                                                                    |       ❌      |
| 3D Secure                                                                                                                                                                             |       ❌      |
| Dynamic Currency Conversion (DCC)                                                                                                                                                     |       ❌      |
| Mail Phone Order                                                                                                                                                                      |       ❌      |
| [Testing](#testing)                                                                                                                                                                   |       ✅      |
| Omni-Channel                                                                                                                                                                          |       ❌      |

## Alternative Mode

As an alternative to the Payment Page, BLIK can be seamlessly integrated into the webshop using the Alternative Payment interface.

<figure><img src="https://3537448238-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fzpi9teY7Tm2pCZ1Bw8zO%2Fuploads%2Ft7FYp02VQ9YC1vUsvXZi%2FBLIK%20AlternativePayment.webp?alt=media&amp;token=90cc3f82-c95b-4bb5-a3fe-32c41cc1220d" alt=""><figcaption></figcaption></figure>

### Flow description

1. First, the merchant's application needs to display a code field during checkout.
2. Said code is generated inside the BLIK app on the payer's device. This code then has to be entered inside the webshop.
3. Once the form has been submitted, the shop initializes the payment using the Transaction [**AlternativePayment**](https://saferpay.github.io/jsonapi/#Payment_v1_Transaction_AlternativePayment) request.
4. This request initiates two things in the background.
   1. Once initiated, Saferpay will generate a payment token and return it with the [**AlternativePayment**](https://saferpay.github.io/jsonapi/#Payment_v1_Transaction_AlternativePayment) response.
   2. This token must be saved by the shop in order to initiate further processing.
5. At the same time, BLIK will send a notification to the payer's device. The payer then acknowledges and confirms the payment inside the app.
6. Upon successful processing, Saferpay will receive the payment data and notify the shop by calling the **`Notification.StateNotificationUrl`** that has been defined with the [**AlternativePayment**](https://saferpay.github.io/jsonapi/#Payment_v1_Transaction_AlternativePayment) request.
7. The shop then uses the previously saved payment token and queries the payment data using the [**Transaction QueryAlternativePayment**](https://saferpay.github.io/jsonapi/#Payment_v1_Transaction_QueryAlternativePayment) request.\
   The shop verifies the response and shows the payment result to the payer.\
   \
   With that, the payment is finished.

{% hint style="warning" %}
Please remember the [mandatory additional data](#technical-requirements) for the [**AlternativePayment**](https://saferpay.github.io/jsonapi/#Payment_v1_Transaction_AlternativePayment) request.
{% endhint %}

## BLIK OneClick

BLIK OneClick is a way to offer a fast way to check out for your customers. It falls into a similar role to [**Tokenization**](/home/integration-guide/licences-and-interfaces/secure-card-data.md), in that the customer data is saved and displayed during checkout, so a customer can pay with one click by just selecting their previously saved BLIK account.

However, the technical integration works differently to the classical tokenization solution Saferpay offers. This chapter will follow the necessary steps to integrate BLIK OneClick.

{% hint style="info" %}
BLIK OneClick is available for all Saferpay merchants that have a BLIK contract activated on their account. An additional activation for OneClick is not needed.
{% endhint %}

### Integration

In order to make use of BLIK OneClick, the merchant system must provide a unique **`Payer.Id`** with the [**Payment Page Initialize request**](/home/integration-guide/licences-and-interfaces/payment-page.md). This ID will henceforth identify the payer and their BLIK accounts, and your system must keep track of which ID belongs to what customer, similar to the previously mentioned tokenization.

During the first payment, nothing much will change from the usual BLIK experience. The payer will be redirected to the Payment Page and they'll have to enter their 6-digit BLIK code, as they would normally. However, Saferpay will save the used BLIK account in the background and attach it to the submitted **`Payer.Id`**. By submitting this ID with subsequent checkouts, Saferpay will automatically present the payer's previously used BLIK accounts.&#x20;

By selecting one, the Payment Page will skip the need for the Payer to enter a new BLIK code, but they can still do so if they wish. Saferpay will automatically attach the new account to the submitted **`Payer.Id`** and display it alongside the other accounts during subsequent checkouts.

{% hint style="info" %}
**Saferpay will only display the five most recently used accounts, but not delete older ones.**

The payer however can do so in their Blik app, if they wish.
{% endhint %}

#### Example of BLIK selection on Payment Page

<figure><img src="https://3537448238-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fzpi9teY7Tm2pCZ1Bw8zO%2Fuploads%2FgVdLU4YeJN6EgNxQXxbr%2FBLIK_OneClick.png?alt=media&amp;token=75620117-a6e2-4660-8885-6838dba70248" alt=""><figcaption></figcaption></figure>

## Testing

Please refer to [this chapter](/home/integration-guide/testing-and-go-live.md#blik) if you want to test BLIK.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.saferpay.com/home/integration-guide/payment-methods/blik.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
