In this documentation webpage, you will find how to use our APIs and Webhooks in order to control your QR Code Express.
Our QR Code Express APIs and Webhooks enable you to:
- Trigger notifications
- Check details from QR Code Express purchases
- Manage and edit QR Code Express prices and stock
Get purchase information
Webhook notifications
You can use Webhooks to proactively receive, in real-time, the payment status of QR Code Express purchases and its associated information (e.g. client data).
Request purchase details via API
Use this API to request the payment status of QR Code Express purchases and its associated information (e.g. client data). Information is provided transaction by transaction.
Follow the instructions below to configure the API.
Step 1: Configura the endpoint
Step 2: Define the header
Step 3: Get the response
Step 1: Configure the endpoint
Environment | URL/Endpoint | Operation Method & Path | Operation Description |
---|---|---|---|
PROD | https://api.sibspayments.com/api/v2 | GET {{base}}/payments/{{transactionID}}/status | Performs a request to get the transaction data. |
TEST | https://api.qly.sibspayments.com/sibs/spg/v2 | GET {{base}}/payments/{{transactionID}}/status | Performs a request to get the transaction data. |
Step 2: Define the header
Header parameters
Step 3: Get the response
{
"merchant": {
"terminalId": "{{terminalId}}"
},
"transactionID": "{{transactionID}}",
"amount": {
"currency": "EUR",
"value": "1.23"
},
"paymentType": "PURS",
"paymentStatus": "Success",
"token": {
"tokenType": "MobilePhone",
"value": "351#911111111"
},
"execution": {
"endTime": "2024-02-22T10:27:25.371Z",
"startTime": "2024-02-22T10:27:25.258Z"
},
"returnStatus": {
"statusCode": "000",
"statusMsg": "Success",
"statusDescription": "Success"
}
}
Manage Stock
You can use the QR Code Express stock API to perform the following actions:
Add Stock Units
This action is used to add stock units to an existing QR Code Express. The available request fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Request Header | Content-Type | String | Mandatory | application/json | – |
Request Header | Digest | String | Conditional | Hash of the message body. Should be present when Request body exists. | – |
Request Header | x-ibm-client-id | String | Mandatory | Token that identifies a client organisation. It is provided during onboarding process and must be used in every call. | – |
Request Header | TPP-Transaction-ID | UUID | Mandatory | ID of the transaction as determined by the initiating party. | – |
Request Header | TPPRequest-ID | UUID | Mandatory | ID of the request, unique to the call, as determined by the initiating party. | – |
Request Header | PSU-Agent | String | Mandatory | The forwarded Agent header field of the http request between PSU and TPP. | – |
Request Header | PSU-IPAddress | String | Mandatory | The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. | – |
Request Header | PSU-GeoLocation | Geo Location | Mandatory | The forwarded Geo Location of the corresponding http request between PSU and TPP if available. | – |
Request Header | PSU-Device-ID | String | Mandatory | UUID (Universally Unique Identifier) for a device, which is used by the PSU. UUID identifies either a device or a device dependant application installation. | In case of an installation identification this ID need to be unaltered until removal from device. |
Request Header | PSU-Device-Fingerprint | String | Mandatory | Fingerprint of the device used in the request between PSU and TPP. | – |
Request Header | Terminal | String | Mandatory | Terminal Code. | – |
Request Header | QR Code ID | String | Conditional | ID of the QR Code Express. | – |
Request Header | Stock Units to add | String | Conditional | Units to add to the QR Code Express stock. | Value equal or higher than one |
The response fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Response Body | returnStatus | Return Status | Mandatory | Return Status Data | – |
Response Body.returnStatus | Status | Transaction Status | Mandatory | Transaction Status | Possible values are: {“SUCCESS”, “TECHNICAL_ERROR”, “BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”} |
Response Body.returnStatus | statusCode | String | Mandatory | HTTP Status Code | “000” for success. Values different from “000” refer to errors. |
Response Body.returnStatus | statusMessage | String | Optional | HTTP Status Code Description | Result Message. |
Response Body.returnStatus | statusDescription | String | Optional | HTTP Status Code Detailed Description | Additional explaining text. |
Remove Stock Units
This action is used to remove stock units from an existing QR Code Express.
The available request fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Request Header | Content-Type | String | Mandatory | application/json | – |
Request Header | Digest | String | Conditional | Hash of the message body. Should be present when Request body exists. | – |
Request Header | x-ibm-client-id | String | Mandatory | Token that identifies a client organisation. It is provided during onboarding process and must be used in every call. | – |
Request Header | TPP-Transaction-ID | UUID | Mandatory | ID of the transaction as determined by the initiating party. | – |
Request Header | TPPRequest-ID | UUID | Mandatory | ID of the request, unique to the call, as determined by the initiating party. | – |
Request Header | PSU-Agent | String | Mandatory | The forwarded Agent header field of the http request between PSU and TPP. | – |
Request Header | PSU-IPAddress | String | Mandatory | The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. | – |
Request Header | PSU-GeoLocation | Geo Location | Mandatory | The forwarded Geo Location of the corresponding http request between PSU and TPP if available. | – |
Request Header | PSU-Device-ID | String | Mandatory | UUID (Universally Unique Identifier) for a device, which is used by the PSU. UUID identifies either a device or a device dependant application installation. | In case of an installation identification this ID need to be unaltered until removal from device. |
Request Header | PSU-Device-Fingerprint | String | Mandatory | Fingerprint of the device used in the request between PSU and TPP. | – |
Request Header | Terminal | String | Mandatory | Terminal Code. | – |
Request header | QR Code ID | String | Conditional | ID of the QR Code Express. | – |
Request Header | Stock Units to remove | String | Conditional | Units to remove from the QR Code Express Stock. | Value should be equal or higher than one |
The response fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Response Body | returnStatus | Return Status | Mandatory | Return Status Data | – |
Response Body.returnStatus | Status | Transaction Status | Mandatory | Transaction Status | Possible values are: {“SUCCESS”, “TECHNICAL_ERROR”, “BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”} |
Response Body.returnStatus | statusCode | String | Mandatory | HTTP Status Code | “000” for success. Values different from “000” refer to errors. |
Response Body.returnStatus | statusMessage | String | Optional | HTTP Status Code Description | Result Message. |
Response Body.returnStatus | statusDescription | String | Optional | HTTP Status Code Detailed Description | Additional explaining text. |
Response Body.returnStatus | Updated Stock Units Value | String | Optional | Return info of updated stock units | – |
Define Stock Units
This action is used to define the stock units of an existing QR Code Express. The available request fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Request Header | Content-Type | String | Mandatory | application/json | – |
Request Header | Digest | String | Conditional | Hash of the message body. Should be present when Request body exists. | – |
Request Header | x-ibm-client-id | String | Mandatory | Token that identifies a client organisation. It is provided during onboarding process and must be used in every call. | – |
Request Header | TPP-Transaction-ID | UUID | Mandatory | ID of the transaction as determined by the initiating party. | – |
Request Header | TPPRequest-ID | UUID | Mandatory | ID of the request, unique to the call, as determined by the initiating party. | – |
Request Header | PSU-Agent | String | Mandatory | The forwarded Agent header field of the http request between PSU and TPP. | – |
Request Header | PSU-IPAddress | String | Mandatory | The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. | – |
Request Header | PSU-GeoLocation | Geo Location | Mandatory | The forwarded Geo Location of the corresponding http request between PSU and TPP if available. | – |
Request Header | PSU-Device-ID | String | Mandatory | UUID (Universally Unique Identifier) for a device, which is used by the PSU. UUID identifies either a device or a device dependant application installation. | In case of an installation identification this ID need to be unaltered until removal from device. |
Request Header | PSU-Device-Fingerprint | String | Mandatory | Fingerprint of the device used in the request between PSU and TPP. | – |
Request Header | Terminal | String | Mandatory | Terminal Code. | – |
Request header | QR Code ID | String | Conditional | ID of the QR Code Express. | – |
Request Header | New stock Units to remove | String | Conditional | Override the stock units number of QR code Express. | Value should be equal or higher than one |
The response fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Response Body | returnStatus | Return Status | Mandatory | Return Status Data | – |
Response Body.returnStatus | Status | Transaction Status | Mandatory | Transaction Status | Possible values are: {“SUCCESS”, “TECHNICAL_ERROR”, “BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”} |
Response Body.returnStatus | statusCode | String | Mandatory | HTTP Status Code | “000” for success. Values different from “000” refer to errors. |
Response Body.returnStatus | statusMessage | String | Optional | HTTP Status Code Description | Result Message. |
Response Body.returnStatus | statusDescription | String | Optional | HTTP Status Code Detailed Description | Additional explaining text. |
Response Body.returnStatus | Updated Stock Units Value | String | Original | HTTP Status Code Detailed Description | – |
Obtain Stock Units info
This action is used to obtain the current stock units info of an existing QR Code Express.
The available request fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Request Header | Content-Type | String | Mandatory | application/json | – |
Request Header | Digest | String | Conditional | Hash of the message body. Should be present when Request body exists. | – |
Request Header | x-ibm-client-id | String | Mandatory | Token that identifies a client organisation. It is provided during onboarding process and must be used in every call. | – |
Request Header | TPP-Transaction-ID | UUID | Mandatory | ID of the transaction as determined by the initiating party. | – |
Request Header | TPPRequest-ID | UUID | Mandatory | ID of the request, unique to the call, as determined by the initiating party. | – |
Request Header | PSU-Agent | String | Mandatory | The forwarded Agent header field of the http request between PSU and TPP. | – |
Request Header | PSU-IPAddress | String | Mandatory | The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. | – |
Request Header | PSU-GeoLocation | Geo Location | Mandatory | The forwarded Geo Location of the corresponding http request between PSU and TPP if available. | – |
Request Header | PSU-Device-ID | String | Mandatory | UUID (Universally Unique Identifier) for a device, which is used by the PSU. UUID identifies either a device or a device dependant application installation. | In case of an installation identification this ID need to be unaltered until removal from device. |
Request Header | PSU-Device-Fingerprint | String | Mandatory | Fingerprint of the device used in the request between PSU and TPP. | – |
Request Header | Terminal | String | Mandatory | Terminal Code. | – |
Request Header | QR Code ID | String | Conditional | ID of the QR Code Express. | – |
The response fields are the following:
Location | Field | Type | Condition | Description | Comments |
---|---|---|---|---|---|
Response Body | returnStatus | Return Status | Mandatory | Return Status Data | – |
Response Body.returnStatus | Status | Transaction Status | Mandatory | Transaction Status | Possible values are: {“SUCCESS”, “TECHNICAL_ERROR”, “BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”} |
Response Body.returnStatus | statusCode | String | Mandatory | HTTP Status Code | “000” for success. Values different from “000” refer to errors. |
Response Body.returnStatus | statusMessage | String | Optional | HTTP Status Code Description | Result Message. |
Response Body.returnStatus | statusDescription | String | Optional | HTTP Status Code Detailed Description | Additional explaining text. |
Response Body.returnStatus | Updated Stock Units Value | String | Optional | HTTP Status Code Detailed Description | – |
Error Codes
When performing API call, the following errors can appear:
Error | Description | Cause |
---|---|---|
10.111.0283 | Invalid QR Code Express. | When a QR Code ID is invalid. |
10.111.0284 | QR Code Express status does not allow stock changes. | When a QR Code Express has the inactive status. |
10.111.0285 | Removable stock units are higher than current stock. | When the order to remove stock units is higher than the current stock. |
10.111.0286 | Invalid stock value. | When the input of stock units is lower than zero. |