Remote transaction

The remote transaction API is an effortless way to integrate your software with Paybyrd terminals, without a direct connection between them. It allows you to communicate with a specific terminal in order to initiate a payment remotely.

Initiating a payment

The first step to make a POS payment is to initiate it. You need to send a request from your system to our API. After that the terminal will prompt the shopper to present their card on the terminal to complete the operation.

curl --request POST \
  --url https://gateway.paybyrd.com/api/v2/payment \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: 5E37D19C-F99C-445F-8B77-1463EFC66C7B' \
  --data '{  
    "type":"POS",
    "amount": "5.00",
    "currency": "EUR",
    "orderRef": "Order12345",
    "terminalSerialNumber": "1234567890",
    "isPreAuth":false   
}'
{
    "terminalSerialNumber": "1234567890",
    "isPreAuth": false,
    "type": "POS",
    "currency": "EUR",
    "orderRef": "Order12345",
    "code": "BYRD201",
    "description": "Payment being processed. Waiting for shopper",
    "transactionId": "b01e1cea-b212-42a2-a825-400784efd158",
    "amount": "5.00"
}

The full payment's API reference can be found on initiating a Payment.

📘

Info

In order to choose which terminal will process the transaction, you must specified the serial number which can be found on your device, under the settings menu.

The response code expected for this call is BYRD201 and the object includes a transactionId value you need in subsequent calls to query the transaction.

Receiving payment result

The result of the transaction is obtained in asynchronous communication between Paybyrd and your software. To receive an asynchronous response you will need to set up an HTTPS webhook server so that you can receive notifications on your system. These keep your store staff informed on the status of the transaction.


What’s Next

Set up an HTTPS webhook