Online Transfer - Pay-By-Link
Online transfer, also known as Pay-By-Link, is a payment method where the payer selects their bank where they have an internet account and from which they want to make the payment. The payer is then redirected to their bank's online banking system. After logging into the banking system, an automatically filled payment form appears to the payer, which they must approve. The payer cannot edit this data, only confirm the transaction. After a successful transaction authorization, the payer is redirected back to the Transaction Panel, and their account is charged with the transaction amount.
List of available banks with their channelId
identifier
ChannelId - identifier | Bank name |
---|---|
1 | BNP Paribas Bank Polska S.A. |
2 | Bank Millennium S.A. |
4 | Bank Pekao S.A. |
5 | Bank Pocztowy S.A. |
6 | Santander Bank Polska S.A. |
7 | Citibank Handlowy S.A. |
9 | Alior Bank S.A. |
12 | VeloBank S.A. |
13 | ING Bank Śląski S.A. |
14 | Inteligo |
15 | Plus Bank S.A. |
17 | Credit Agricole Polska S.A. |
18 | mBank |
21 | PKO Bank Polski (iPKO) |
63 | Banki Spółdzielcze |
Pay-By-Link transaction
Process Pay-By-Link payments using the transaction creation endpoint.
Send a request to create a Pay-By-Link transaction
To create a Pay-By-Link transaction, send a POST
request to the endpoint, providing the appropriate channelId
parameter assigned to the selected bank:
https://api.tpay.com/transactions
amount | Transaction amount (in PLN). |
description | Description of the transaction visible to the payer. |
payer.email | Payer's email address. |
payer.name | Payer's full name. |
pay.channelId | Payment channel identifier for the selected bank. |
Payment channels that support Pay-By-Link have the attributes:
onlinePayment | true |
instantRedirection | true |
The basic request body should be as follows:
{ "amount": 0.1, "description": "Testowa transakcja PBL", "payer": { "email": "[email protected]", "name": "Jan Nowak" }, "pay": { "channelId": 1 } }
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 PBL", "payer": { "email": "[email protected]", "name": "Jan Nowak" }, "pay" : { "channelId": 1 } }'
After sending the request, you will receive a TransactionCreated
schema in the response.
The key response parameters are:
result | success - The transaction was successfully created. |
status | pending - The transaction is awaiting payment. |
transactionId | Unique transaction identifier. |
transactionPaymentUrl | URL to redirect the payer to. |
Example:
{ "result": "success", "requestId": "cf47fa58ad6679fb6a86", "transactionId": "ta_jrkNGj5xnppBlbqw", "title": "TR-CWM-D02D7HX", "posId": "ps_e4dkPVDEm4Jg726q", "status": "pending", "date": { "creation": "2024-07-01 21:38:13", "realization": null }, "amount": 0.1, "currency": "PLN", "description": "Testowa transakcja", "hiddenDescription": "", "payer": { "payerId": "py_a9rjlZWxRLdG1bqY", "email": "[email protected]", "name": "Jan Nowak", "phone": "", "address": "", "city": "", "country": "PL", "postalCode": "" }, "payments": { "status": "pending", "method": null, "amountPaid": 0, "date": { "realization": null } }, "transactionPaymentUrl": "https://secure.tpay.com/?gtitle=TR-CWM-D02D7HX&uid=01J1QWW3AN9RYYSA978ECND8Z3" }
Store the transactionId parameter in your system. More about transactionId.
Redirect the payer to the banking system
Redirect the payer to the URL contained in the response in the transactionPaymentUrl
field.
When the payer is redirected to the banking system, they log in with their access data.
A transaction payment form will be displayed, which they must accept to complete the payment.
Payer is redirected to success or error page
When the Pay-By-Link payment is completed, the payer is redirected to a success page or error page depending on whether the transaction was successful.
Handle notification
We will notify you about the transaction status via transaction posting notifications.