Tpay
API

E-transfer

E-transfer is a type of payment that requires the Payer to create a transfer after logging in to their online banking.

Transfer details (recipient account number, transfer title, amount, recipient name) should be copied from the Transaction Panel after selecting a specific bank.

The transfer is intra-bank, meaning the account number to which the transfer will be made belongs to the same bank selected by the payer.

The payment is booked according to the bank's internal transfer schedule.

E-transfer transaction

Process e-transfer payments using the transaction creation endpoint.

Send a request to create an e-transfer transaction

To create an E-transfer transaction, send a POST request to the endpoint, providing the appropriate channelId parameter assigned to the specific bank.

Note

Payment channels that support e-transfer have the following attributes:

onlinePayment
true.
instantRedirection
false.

Check for more information about payment channels.

List of available banks along with their channelId identifier:

Bank NameChannelId - identifier
Bank Nowy S.A.24
Nest Bank26
Bank Polskiej Spółdzielczości28
Pekao Firma24 / Biznes2447
Bank Millennium S.A. Firmy48

https://api.tpay.com/transactions

In the request, specify the following parameters:

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.

The basic request body should look like this:

{
  "amount": 0.1,
  "description": "Testowa transakcja E-przelew",
  "payer": {
    "email": "[email protected]",
    "name": "Jan Nowak"
  },
  "pay": {
    "channelId": 48
  }
}

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 E-przelew",
   "payer": {
      "email": "[email protected]",
      "name": "Jan Nowak"
   },
   "pay" : {
    "channelId": 48
   }
}'

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"
}
Note

Store the transactionId parameter in your system. More about transactionId.

Redirect the payer to the Transaction Panel

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

The payer will be redirected to the Transaction Panel, where a form containing the transfer details will be displayed.

The payer then logs into their banking system and makes the transfer using the provided details on the Transaction Panel.

The payment is booked according to the bank's internal transfer schedule.

Handle notification

We will notify you about the transaction status via transaction posting notifications.