Inbound

This section describes all APIs used in the inbound interface.

Authentication

To use inbound endpoints a valid authentication is needed. The following authentication methods is at the moment possible: Lightweight Directory Access Protocol (LDAP), Security Assertion Markup Language (SAML), Azure Active Directory (Azure AD), JSON Web Token (JWT) and OAuth 2.0 and OpenID Connect.

1.1 Article & Price

This is the API used to send articles and prices to PearlPOS. An example payload with a description of each field can be found in the link below.

https://app.swaggerhub.com/apis/POS9/inbPOSdata/1.1#/

How often this API should be consumed depends on how often the article and price data changes. Existing companies that use POSBE today trigger this automatically by specific changes, as a background job with a given frequency, manually or a combination of the three. The logic for when the API should be consumed lays outside of POSBE and needs to be implemented in the system that will supply POSBE with the article and price data.

Status and Errors

When PearlPOSreceives article and price data the relevant tables in PearlPOS will be updated, and if all operations go as expected the API will return the HTTP status code 200 OK.

However, if anything goes wrong, the API will return 500 Internal server errors, including a message with how many errors happened, and where to find information about the errors. An example of an error that can trigger a 500 Internal server error can be failing to supply a payload with correct JSON structure e.g., missing the “posData” attribute in the payload.

1.2 Other master data

This API includes all other master data that POSBE needs and are not included in 6.1.1 Article & Price, such as store data, tax codes etc. An example payload with a description can be found here:

https://app.swaggerhub.com/apis/POS9/inbMasterdata/1.1

The consuming frequency this API depends – as for the article and price API described above – on how often the master data changes, but like the article and price API the logic for when and how often to use the API needs to be implemented outside POSBE.

Status and Errors

The master data API returns 200 with a successful message when all tables in POSBE are updated correctly with all the given master data.

If anything goes wrong, the API will return immediately with status code 500 and an error message describing what has occurred. A relevant error message will be written in the PearlPOS system logs. A reason for the API returning 500 could be that the payload is wrong, or that for some reason a PearlPOS table could not be updated.