Skip to content

Blik

General Integration option

Payment

Payment Flow

  1. The customer initiates the payment on the merchant's website.
  2. The merchant sends a payment request to PaySage.io.
  3. PaySage.io responds with a link to the payment page.
  4. The merchant redirects the customer to the payment page.
  5. The customer completes the payment.
  6. 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:

object
amount
required
bigInteger
Transaction amount in minimal currency units, for example, 5000 (50 PLN).
description
required
string(255)
A short description of the order.
currency
required
string
PLN
return_url
required

string
A URL to return the customer to when a transaction is completed.
language
required
string
The language of the payment page. Possible values: en (English), pl (Polish), ua (Ukrainian), pt (Portuguese).
ip
string
The customer's IP address.
object
A section of the payment method.
type
required
string
blik
object
A section of information about the customer.
first_name
required
string
The customer's first name.
last_name
required
string
The customer's last name.
middle_name
string
The customer's middle name.
country
string (2)
The customer's country in the ISO 3166-1 Alpha-2 format. For example, PL.
email
string
The customer's email address.
phone
string
The customer's phone number.
city
string
The customer's billing city.
address
string
The customer's billing address.
zip
string
The customer's billing ZIP or postal code.
birth_date
string
The customer's date of birth in the ISO 8601 format (YYYY-MM-DD).
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",
          "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

  1. The customer selects Blik as a payment method on the merchant's website.
  2. The merchant sends a payment request to the PaySage.io.
  3. PaySage.io responds with a link to the payment page.
  4. The merchant redirects the customer to the payment page.
  5. The customer completes the payment.
  6. PaySage.io sends a webhook notification with the payment status to the merchant.
  7. 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:

object
return_url
required
string
URL to return the customer to when the transaction is completed.
ip
string
The customer's IP address.
object
A section of the payment method.
type
required
string
blik
user_id
required
string
Unique customer identifier in the merchant's system.
object
A section of information about the customer.
first_name
required
string
The customer's first name.
last_name
required
string
The customer's last name.
email
required
string
The customer's email address.
phone
required
string
The customer's phone number including the country code and without special characters.
country
required
string (2)
The customer's country in the ISO 3166-1 Alpha-2 format. For example, PL.
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": []
    }
  }
}