Skip to content

Blik

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:

Parameter Type Description
request object
return_url * required
string URL to return the customer to when the transaction is completed.
ip string The customer's IP address.
method object A section of the payment method information.
type * required
string blik
user_id * required
string Unique customer identifier in the merchant's system.
customer object A section of the customer details.
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": []
    }
  }
}

PR 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 inserts the Blik code on the payment page and 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:

Parameter Type Description
request object
return_url * required
string URL to return the customer to when the transaction is completed.
ip string The customer's IP address.
method object A section of the payment method information.
type * required
string blik
customer object A section of the customer details.
first_name string The customer's first name.
last_name string The customer's last name.
middle_name string The customer's middle name.
email string The customer's email address.
country string The customer's billing country in the ISO 3166-1 alpha-2 format. Must be PL.
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": 5000,
        "currency": "PLN",
        "description": "description",
        "return_url": "https://return.com",
        "language": "en",
        "customer": {
            "email": "example@example.com"
        },
        "method": {
            "type": "blik"
        }
    }
}
Response

Redirect your customer to the URL received as the value of the form.action parameter.

Response example
{
    "transaction": {
        "uid": "17686da0-0ac6-424d-9aa7-a911d2fe507c",
        "type": "payment",
        "status": "pending",
        "amount": 5000,
        "currency": "PLN",
        "description": "description",
        "created_at": "2024-09-23T09:38:51Z",
        "updated_at": "2024-09-23T09:38:51Z",
        "method_type": "blik",
        "receipt_url": "https://backoffice.paysage.io/customer/transactions/17686da0-0ac6-424d-9aa7-a911d2fe507c/8010d8d1ac2064c99f189cb1edd651cb38b82e4c26a921d297eead385b5662ad?language=en",
        "payment": {
            "status": "pending",
            "gateway_id": 4498,
            "ref_id": "17686da0-0ac6-424d-9aa7-a911d2fe507c",
            "message": "Transaction was initialized",
            "bank_code": 0,
            "rrn": "HPI00000000780H6"
        },
        "blik": {
            "type": "blik"
        },
        "customer": {
            "email": "example@example.com",
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 1,
        "message": "Transaction was initialized",
        "test": true,
        "language": "en",
        "billing_address": {
            "email": "example@example.com"
        },
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },       
        "gateway": {
            "iframe": true
        },
        "form": {
            "action": "https://checkout.pr.io/payment/414c8d6e-29a5-4c76-865c-0877dab5d99a/efc015be911369924d55c91a5d8651dbdadf1ffd307e13f18e1fef992c6014a2",
            "method": "GET",
            "fields": []
        }
    }
}  

OX 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:

Parameter Type Description
request object
return_url * required
string URL to return the customer to when the transaction is completed.
language * required
string The language of the payment page. Possible values: en (English), pl (Polish), ua (Ukrainian), pt (Portuguese).
method object A section of the payment method information.
type * required
string blik
customer object A section of the customer details.
first_name string The customer's first name.
last_name string The customer's last name.
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.
Request example
{
    "request": {
        "test": true,
        "amount": 1500,
        "currency": "PLN",
        "language": "en",
        "description": "description",
        "return_url": "https://return.com",
        "method": {
            "type": "blik"            
        },
        "customer": {            
            "email": "test@example.com"                      
        }
    }
}
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://ox/en/checkout?address=TGmEwV1RrNiF9f1Dk7By1Xk8F63P5jcbT1",
      "method": "GET",
      "fields": []
    }
  }
}

DC 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:

Parameter Type Description
request object
return_url * required
string URL to return the customer to when the transaction is completed.
ip string The customer's IP address.
method object A section of the payment method information.
type * required
string blik
customer object A section of the customer details.
first_name * required
string The customer's first name.
last_name * required
string The customer's last name.
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": {
        "amount": 500,
        "currency": "PLN",
        "description": "description",
        "test": true,
        "return_url": "https://return.com",
        "language": "en",
        "customer": {
            "first_name": "John",
            "last_name": "Doe"
        },
        "method": {
            "type": "blik"
        }
    }
}
Response

Redirect your customer to the URL received as the value of the form.action parameter.

Response example
{
    "transaction": {
        "uid": "61eb915c-90e9-45a6-bb1b-bce0980785fb",
        "type": "payment",
        "status": "pending",
        "amount": 500,
        "currency": "PLN",
        "description": "description",
        "created_at": "2025-04-08T14:05:14Z",
        "updated_at": "2025-04-08T14:05:14Z",
        "method_type": "blik",
        "receipt_url": "https://backoffice.paysage.io/customer/transactions/61eb915c-90e9-45a6-bb1b-bce0980785fb/d348151ff49193e013684b1a69fe2d3e221618806499e83a5b46771020ee2b6a?language=en",
        "payment": {
            "status": "pending",
            "gateway_id": 5220,
            "ref_id": "d45d8a3c80d0d6bda403",
            "message": "Transaction was initialized."
        },
        "blik": {
            "type": "blik"
        },
        "customer": {
            "first_name": "John",
            "last_name": "Doe",
            "email": null,
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized.",
        "test": true,
        "language": "en",
        "billing_address": {
            "first_name": "John",
            "last_name": "Doe"
        },
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },        
        "gateway": {
            "iframe": false
        },
        "form": {
            "action": "link-to-payment-page",
            "method": "GET",
            "fields": []
        }
    }
}

Refund

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.

TW2 Integration option

Payment flow

  1. Customer initiates the payment on the merchant's website.
  2. Merchant sends the payment request to PaySage.io
  3. PaySage.io returns a response with the form object with parameters to build a form to complete the payment.
  4. The merchant redirects the customer to the form.
  5. The customer completes the payment.
  6. PaySage.io sends a webhook notification to the merchant.

Info

This integration option supports only PLN currency.

Payment

Request

Send a payment request with the following additional parameters:

Parameter Type Description
request object
amount * required
bigInteger Transaction amount in minimal currency units, for example, 5000 (50 PLN).
return_url * required
string URL to return the customer to when the transaction is completed.
method object A section of the payment method.
type * required
string blik
ip string The customer's IP address.
customer object A section of additional information about the customer.
country string (2) The customer's country in the ISO 3166-1 Alpha-2 format. For example, PL.
phone string The customer's phone number.
email string The customer's email address.
first_name string The customer's first name.
last_name string The customer's last name.
city string (120) The customer's billing city.
zip string (40) The customer's billing ZIP or postal code.
state string The customer's two-letter billing state only if the billing address country is US, CA or IN.
address string (510) The customer's billing address.
Request example
{
    "request": {
        "amount": 101,
        "currency": "PLN",
        "description": "test",
        "test": false,
        "tracking_id": "your_uniq_number21212",
        "return_url": "https://your-success.url",
        "method": {
            "type": "blik"
        }
    }
}
Response

Build an HTML form based on the parameters in the form object. Redirect the customer to the form to finalize the payment.

Response example
{
    "transaction": {
        "uid": "c0fd532c-60e8-40a1-8850-8a365fc92420",
        "type": "payment",
        "status": "pending",
        "amount": 101,
        "currency": "PLN",
        "description": "test",
        "created_at": "2025-04-08T15:36:11Z",
        "updated_at": "2025-04-08T15:36:11Z",
        "method_type": "blik",
        "receipt_url": "https://backoffice.paysage.io/customer/transactions/c0fd532c-60e8-40a1-8850-8a365fc92420/de40d20b52c6b4a911df577a53f0da18ad412a92e8e75ae67cc22262ef3a1afb",
        "payment": {
            "status": "pending",
            "gateway_id": 5236,
            "message": "Transaction was initialized."
        },
        "blik": {
            "type": "blik"
        },
        "customer": {
            "email": null,
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized.",
        "tracking_id": "your_uniq_number21212",
        "test": false,
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },     
        "gateway": {
            "iframe": false
        },
        "form": {
            "action": "link-to-payment-url",
            "method": "POST",
            "fields": [
                {
                    "name": "memberId",
                    "value": "14363",
                    "type": "hidden"
                },
                {
                    "name": "terminalid",
                    "value": "8162",
                    "type": "hidden"
                },
                {
                    "name": "checksum",
                    "value": "e86d209a3efe8ffea3a727209f3ae856",
                    "type": "hidden"
                },
                {
                    "name": "merchantTransactionId",
                    "value": "c0fd532c-60e8-40a1-8850-8a365fc92420",
                    "type": "hidden"
                },
                {
                    "name": "amount",
                    "value": "1.01",
                    "type": "hidden"
                },
                {
                    "name": "currency",
                    "value": "PLN",
                    "type": "hidden"
                },
                {
                    "name": "paymentBrand",
                    "value": "BLIK",
                    "type": "hidden"
                },
                {
                    "name": "paymentMode",
                    "value": "EW",
                    "type": "hidden"
                },
                {
                    "name": "orderDescription",
                    "value": "test",
                    "type": "hidden"
                },
                {
                    "name": "country",
                    "value": "PL",
                    "type": "hidden"
                },
                {
                    "name": "merchantRedirectUrl",
                    "value": "https://api.paysage.io/beyag/transactions/returns/88c70e7191aa823ac0588a279d22ef5722fc26712f6eac23ab76b53a65019c48/c0fd532c-60e8-40a1-8850-8a365fc92420",
                    "type": "hidden"
                },
                {
                    "name": "notificationUrl",
                    "value": "https://api.paysage.io/beyag/transactions/notifications/88c70e7191aa823ac0588a279d22ef5722fc26712f6eac23ab76b53a65019c48/c0fd532c-60e8-40a1-8850-8a365fc92420",
                    "type": "hidden"
                },
                {
                    "name": "totype",
                    "value": "TransactWorld",
                    "type": "hidden"
                }
            ]
        }
    }
}