Tpay
API

Buy Now, Pay Later

Buy Now, Pay Later (BNPL) is a payment method that allows consumers to purchase products and services immediately but with the option to defer payment to a later date or to split the payment into installments. It is an alternative to traditional forms of credit, such as credit cards.

To accept payments via BNPL, the Merchant's MCC (Merchant Category Code) must not be on the prohibited industries list (MCC blacklist). The MCC is determined during the verification process by specifying the store's/industry's category.

Purchase process

The BNPL process typically involves several steps:

  1. Purchase: The payer selects a product or service and proceeds to checkout.
  2. Selection of BNPL option: At the payment stage, the payer chooses the Buy Now, Pay Later option.
  3. Credit check: Depending on the BNPL provider, a quick creditworthiness check may be conducted. This is often a simplified process, not requiring detailed verification as with traditional credit.
  4. Approval: Once approved by the BNPL provider, the purchase is finalized, and the payer commits to repayment under the agreed terms.
  5. Repayment: The payer repays the obligation in specified installments or in full after a set period, according to the terms of the agreement.

PayPo

Terms of Service

  • The minimum transaction amount is 10 PLN, and the maximum is 5000 PLN - For first-time customers, the limit is 800 PLN, while for returning customers, the maximum amount is 5000 PLN (the amount is assigned individually per customer based on their credit history with PayPo).
  • The repayment period is 30 days. If this period is exceeded, the payment is divided into up to 6 interest-bearing installments.

BLIK Pay Later

Terms of Service

  • The minimum amount is 30 PLN, and the maximum is 4000 PLN
  • The repayment period is 30 days. If this period is exceeded, the payment is divided into up to 6 interest-bearing installments.
  • The BLIK Pay Later payment method is available to merchants who have been offering the Tpay payment gateway for at least 3 months and have processed a minimum of 10 BLIK transactions.

Twisto

Terms of Service

  • The minimum amount is 1 PLN, and the maximum is 1500 PLN.
  • The amount is assigned individually per customer based on their creditworthiness.
  • The repayment period is 30 days.

PragmaPay Pay Later for business

Terms of Service

  • The minimum amount is 100 PLN, and the maximum is 50 000 PLN.
  • The repayment period is 14, 30 or 60 days.
  • MCC Code from outside the table below
MCC CodeCode Name
1041Production of oils and other liquid fats
1101Distilling, rectifying, and blending of alcohols
2446Manufacturing of nuclear fuels
2540Manufacturing of weapons and ammunition
4612Activities of agents engaged in the sale of fuels, ores, metals, and industrial chemicals
4671Wholesale sale of fuels and related products
4672Wholesale sale of metals and metal ores
4677Wholesale sale of waste and scrap
9200Activities related to games of chance and mutual betting
9491Activities of religious organizations
9492Activities of political organizations
9405Organizations and associations

Before you start

Ensure that:

Buy Now, Pay Later transaction

Process Buy Now, Pay Later payments by using the transaction creation endpoint and providing the appropriate payment channel identifier.

ChannelIdPayment Channel Name
71Twisto
83PayPo
84BLIK Pay Later
85Pragma Pay Later for business

Send a request to create a BNPL transaction

To create a BNPL transaction, send a POST request to the endpoint.

https://api.tpay.com/transactions

Check the details in the API Reference documentation: POST /transactions

In the request, specify the following parameters:

amount
Transaction amount (in PLN).
description
Transaction description visible to the payer.
payer.email
Payer's email address
payer.name
Payer's full name.
pay.channelId
BNPL payment channel identifier.

The basic request body should look like this:

{
  "amount": 0.1,
  "description": "Testowa transakcja BNPL",
  "payer": {
    "email": "[email protected]",
    "name": "Jan Nowak"
  },
  "pay": {
    "channelId": 71
  }
}

Example:

curl --location 'https://api.tpay.com/transactions' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data-raw '{
   "amount": 0.1,
   "description": "Testowa transakcja BNPL",
   "payer": {
      "email": "[email protected]",
      "name": "Jan Nowak"
   },
   "pay": {
      "channelId": 71
   }
}'

After sending the request, you will receive a TransactionCreated schema in response.

The key response parameters are:

result
success - The transaction was successfully created.
status
pending - The transaction is awaiting payment.
transactionPaymentUrl
URL to which the payer should be redirected.

Example response:

{
  "result": "success",
  "requestId": "786dee7ec39502226238",
  "transactionId": "ta_73qDVKjNvNQ5GbLn",
  "title": "TR-CWM-D14339X",
  "posId": "ps_e4dkPVDEm4Jg726q",
  "status": "pending",
  "date": {
    "creation": "2024-07-04 21:15:23",
    "realization": null
  },
  "amount": 0.1,
  "currency": "PLN",
  "description": "Testowa transakcja BNPL",
  "hiddenDescription": "",
  "payer": {
    "payerId": "py_a9rjlZWxRLdG1bqY",
    "email": "[email protected]",
    "name": "Jan Nowak",
    "phone": "",
    "address": "",
    "city": "",
    "country": "PL",
    "postalCode": ""
  },
  "payments": {
    "status": "pending",
    "method": "pay_by_link",
    "amountPaid": 0,
    "date": {
      "realization": null
    }
  },
  "transactionPaymentUrl": "https://secure.tpay.com/?title=TR-CWM-D14339X&uid=01J1ZJREPKDXXJ5E4JRWYVXMN2"
}

Redirect the payer to the BNPL application

Redirect the payer to the URL provided in the response in the transactionPaymentUrl field.

At the given URL, the payer will be redirected to the Buy Now, Pay Later application, where they complete the required information and submit the application. Credit verification follows. Check out the purchase process..

Handle the notification

We will inform you about the transaction status via notification after transaction posting..