Skip to content

API and Webhook services

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).

Info

For more information on how to configure Webhooks for QR Code Express, click here.

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.

Notification

If you don’t have access to this API yet, please register at SIBS Payment Gateway.

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
EnvironmentURL/EndpointOperation Method & PathOperation Description
PRODhttps://api.sibspayments.com/api/v2GET {{base}}/payments/{{transactionID}}/statusPerforms a request to get the
transaction data.
TESThttps://api.qly.sibspayments.com/sibs/spg/v2GET {{base}}/payments/{{transactionID}}/statusPerforms a request to get the transaction data.
Step 2: Define the header
Header parameters
Content-type

string

Mandatory

application / json

Show more
Authorization

string

Mandatory

Bearer Token. Based on OAuth2 authentication performed in a pre-step.

Show more
x-ibm-client-id

string

Mandatory

Token that identifies a client organization. Is it provided during onboarding process and must be used in every call.

Show more
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:

LocationFieldTypeConditionDescriptionComments
Request HeaderContent-TypeStringMandatoryapplication/json
Request HeaderDigestStringConditionalHash of the message body. Should be present when Request body exists.
Request Headerx-ibm-client-idStringMandatoryToken that identifies a client organisation. It is provided during onboarding process and must be used in every call.
Request HeaderTPP-Transaction-IDUUIDMandatoryID of the transaction as determined by the initiating party.
Request HeaderTPPRequest-IDUUIDMandatoryID of the request, unique to the call, as determined by the initiating party.
Request HeaderPSU-AgentStringMandatoryThe forwarded Agent header field of the http request between PSU and TPP.
Request HeaderPSU-IPAddressStringMandatoryThe forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.
Request HeaderPSU-GeoLocationGeo LocationMandatoryThe forwarded Geo Location of the corresponding http request between PSU and TPP if available.
Request HeaderPSU-Device-IDStringMandatoryUUID (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 HeaderPSU-Device-FingerprintStringMandatoryFingerprint of the device used in the request between PSU and TPP.
Request HeaderTerminalStringMandatoryTerminal Code.
Request HeaderQR Code IDStringConditionalID of the QR Code Express.
Request HeaderStock Units to addStringConditionalUnits to add to the QR Code Express stock.Value equal or higher than one

The response fields are the following:

LocationFieldTypeConditionDescriptionComments
Response BodyreturnStatusReturn StatusMandatoryReturn Status Data
Response Body.returnStatusStatusTransaction StatusMandatoryTransaction StatusPossible values are:
 
{“SUCCESS”, “TECHNICAL_ERROR”,
 
“BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”}
Response Body.returnStatusstatusCodeStringMandatoryHTTP Status Code“000” for success. Values different from “000” refer to errors.
Response Body.returnStatusstatusMessageStringOptionalHTTP Status Code DescriptionResult Message.
Response Body.returnStatusstatusDescriptionStringOptionalHTTP Status Code Detailed DescriptionAdditional 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:

LocationFieldTypeConditionDescriptionComments
Request HeaderContent-TypeStringMandatoryapplication/json
Request HeaderDigestStringConditionalHash of the message body. Should be present when Request body exists.
Request Headerx-ibm-client-idStringMandatoryToken that identifies a client organisation. It is provided during onboarding process and must be used in every call.
Request HeaderTPP-Transaction-IDUUIDMandatoryID of the transaction as determined by the initiating party.
Request HeaderTPPRequest-IDUUIDMandatoryID of the request, unique to the call, as determined by the initiating party.
Request HeaderPSU-AgentStringMandatoryThe forwarded Agent header field of the http request between PSU and TPP.
Request HeaderPSU-IPAddressStringMandatoryThe forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.
Request HeaderPSU-GeoLocationGeo LocationMandatoryThe forwarded Geo Location of the corresponding http request between PSU and TPP if available.
Request HeaderPSU-Device-IDStringMandatoryUUID (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 HeaderPSU-Device-FingerprintStringMandatoryFingerprint of the device used in the request between PSU and TPP.
Request HeaderTerminalStringMandatoryTerminal Code.
Request headerQR Code IDStringConditionalID of the QR Code Express.
Request HeaderStock Units to removeStringConditionalUnits to remove from the QR Code Express Stock.Value should be equal or higher than one

The response fields are the following:

LocationFieldTypeConditionDescriptionComments
Response BodyreturnStatusReturn StatusMandatoryReturn Status Data
Response Body.returnStatusStatusTransaction StatusMandatoryTransaction StatusPossible values are:
 
{“SUCCESS”, “TECHNICAL_ERROR”,
 
“BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”}
Response Body.returnStatusstatusCodeStringMandatoryHTTP Status Code“000” for success. Values different from “000” refer to errors.
Response Body.returnStatusstatusMessageStringOptionalHTTP Status Code DescriptionResult Message.
Response Body.returnStatusstatusDescriptionStringOptionalHTTP Status Code Detailed DescriptionAdditional explaining text.
Response Body.returnStatusUpdated Stock Units ValueStringOptionalReturn 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:

LocationFieldTypeConditionDescriptionComments
Request HeaderContent-TypeStringMandatoryapplication/json
Request HeaderDigestStringConditionalHash of the message body. Should be present when Request body exists.
Request Headerx-ibm-client-idStringMandatoryToken that identifies a client organisation. It is provided during onboarding process and must be used in every call.
Request HeaderTPP-Transaction-IDUUIDMandatoryID of the transaction as determined by the initiating party.
Request HeaderTPPRequest-IDUUIDMandatoryID of the request, unique to the call, as determined by the initiating party.
Request HeaderPSU-AgentStringMandatoryThe forwarded Agent header field of the http request between PSU and TPP.
Request HeaderPSU-IPAddressStringMandatoryThe forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.
Request HeaderPSU-GeoLocationGeo LocationMandatoryThe forwarded Geo Location of the corresponding http request between PSU and TPP if available.
Request HeaderPSU-Device-IDStringMandatoryUUID (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 HeaderPSU-Device-FingerprintStringMandatoryFingerprint of the device used in the request between PSU and TPP.
Request HeaderTerminalStringMandatoryTerminal Code.
Request headerQR Code IDStringConditionalID of the QR Code Express.
Request HeaderNew stock Units to removeStringConditionalOverride the stock units number of QR code Express.Value should be equal or higher than one

The response fields are the following:

LocationFieldTypeConditionDescriptionComments
Response BodyreturnStatusReturn StatusMandatoryReturn Status Data
Response Body.returnStatusStatusTransaction StatusMandatoryTransaction StatusPossible values are:
 
{“SUCCESS”, “TECHNICAL_ERROR”,
 
“BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”}
Response Body.returnStatusstatusCodeStringMandatoryHTTP Status Code“000” for success. Values different from “000” refer to errors.
Response Body.returnStatusstatusMessageStringOptionalHTTP Status Code DescriptionResult Message.
Response Body.returnStatusstatusDescriptionStringOptionalHTTP Status Code Detailed DescriptionAdditional explaining text.
Response Body.returnStatusUpdated Stock Units ValueStringOriginalHTTP 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:

LocationFieldTypeConditionDescriptionComments
Request HeaderContent-TypeStringMandatoryapplication/json
Request HeaderDigestStringConditionalHash of the message body. Should be present when Request body exists.
Request Headerx-ibm-client-idStringMandatoryToken that identifies a client organisation. It is provided during onboarding process and must be used in every call.
Request HeaderTPP-Transaction-IDUUIDMandatoryID of the transaction as determined by the initiating party.
Request HeaderTPPRequest-IDUUIDMandatoryID of the request, unique to the call, as determined by the initiating party.
Request HeaderPSU-AgentStringMandatoryThe forwarded Agent header field of the http request between PSU and TPP.
Request HeaderPSU-IPAddressStringMandatoryThe forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.
Request HeaderPSU-GeoLocationGeo LocationMandatoryThe forwarded Geo Location of the corresponding http request between PSU and TPP if available.
Request HeaderPSU-Device-IDStringMandatoryUUID (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 HeaderPSU-Device-FingerprintStringMandatoryFingerprint of the device used in the request between PSU and TPP.
Request HeaderTerminalStringMandatoryTerminal Code.
Request HeaderQR Code IDStringConditionalID of the QR Code Express.

The response fields are the following:

LocationFieldTypeConditionDescriptionComments
Response BodyreturnStatusReturn StatusMandatoryReturn Status Data
Response Body.returnStatusStatusTransaction StatusMandatoryTransaction StatusPossible values are:
 
{“SUCCESS”, “TECHNICAL_ERROR”,
 
“BAD_REQUEST”, “QRCODE_NOT_FOUND”, “QRCODE_UNAVAILABLE”, “QRCODE_EXPIRED”, “QRCODE_OUT_OF_STOCK”}
Response Body.returnStatusstatusCodeStringMandatoryHTTP Status Code“000” for success. Values different from “000” refer to errors.
Response Body.returnStatusstatusMessageStringOptionalHTTP Status Code DescriptionResult Message.
Response Body.returnStatusstatusDescriptionStringOptionalHTTP Status Code Detailed DescriptionAdditional explaining text.
Response Body.returnStatusUpdated Stock Units ValueStringOptionalHTTP Status Code Detailed Description

Error Codes

When performing API call, the following errors can appear:

ErrorDescriptionCause
10.111.0283Invalid QR Code Express.When a QR Code ID is invalid.
10.111.0284QR Code Express status does not allow stock changes.When a QR Code Express has the inactive status.
10.111.0285Removable stock units are higher than current stock.When the order to remove stock units is higher than the current stock.
10.111.0286Invalid stock value.When the input of stock units is lower than zero.