Post transaction data upon tender in real-time to CMC
To send real-time post-tender (post-purchase) transaction data to CMC, 2 endpoints need to be called in sequence:- StartInteraction endpoint, get the sessionId from there
- Call SendTransaction endpoint with the received sessionId
StartInteraction
POST /Pos//startInteractionInput request
Input parameters
| Field name | Description |
|---|---|
| terminalId | ID of the terminal on which the transaction was made* |
| posLocationId | ID of the location where the transaction was made |
Response
Response parameters
| Field name | Description |
|---|---|
| data | Data block |
| terminalId | ID of the terminal on which the transaction was made |
| posLocationId | ID of the location where the transaction was made |
| sessionId | Session Id, call SendTransaction endpoint with the received sessionId |
| posStatus | Only “Accepted” POS can send a transaction (POS must be registered with CMC in order to use this endpoint) |
SendTransaction
POST /Pos//transactionInput request
Input parameters
| Field name | Description |
|---|---|
| sessionId | Session ID form startInteraction endpoint |
| customer: | Customer data block |
| Id | Customer id in third party system (POS) |
| firstName | Customer first name |
| lastName | Customer Last name |
| birthDate | Customer birthdate |
| contacts | Customer contacts data block |
| Customer email | |
| phone | Customer phone |
| salesPerson | Sales person data block |
| Id | Sales person id in third party system (POS) |
| firstName | Sales person first name |
| lastName | Sales person Last name |
| purchaseName | deprecated |
| purchaseId | deprecated |
| purchaseQuantity | deprecated |
| purchasePrice | deprecated |
| transactionId | Transaction ID received from third party system (POS) |
| transactionType | Transaction type (from third party system) |
| transactionAmount | Amount of transaction |
| transactionDate | Transaction date |
| terminalId | ID of the terminal on which the transaction was made |
| posLocationId | ID of the location where the transaction was made |
| products | Products data block |
| productId | Product ID from third party system (POS) |
| productName | Product Name |
| manufacturer | Product manufacturer |
| productCategory | Product category from |
| quantity | Number of products in the transaction (number of product identifiers) |
| cardNumber | Loyalty card number |
Response
Response parameters
| Field name | Description |
|---|---|
| data | Data block |
| id | Internal Transaction Id |
| qrCodeWidget | QR code widget data block (QR code is available if the POS Rule was triggered for this transaction)** |
| shortLinkUrl | Short link url for QR code generation |
| qrCodeLinkUrl | Link to the generated QR code image |
| qrCodeHtmlLinkUrl | Link to the generated QR code in HTML format |
| qrCodePreviewLinkUrl | Link to the generated QR code for Preview |
| notificationMessageId | Represent an ID to identify the message sent via email or SMS channels |
| profile | Customer profile data block, Represent recipient profile |
| Id | Internal Customer profile Id |
| firstName | Customer first name |
| lastName | Customer Last name |
| customerEmail | Customer email |
| customerPhone | Customer phone |
| salesPerson | Sales person name |
| purchaseName | deprecated |
| purchaseId | deprecated |
| purchaseCategory | deprecated |
| purchasePrice | deprecated |
| gender | Customer gender |
| sessionId | Session ID with which the transaction was created |
| cfsTemplate | CFS Template data block (CFS Template is available if the POS Rule was triggered for this transaction)** |
| accountTemplateId | Id of Account level Template for CFS |
| cfsCarouselUrl | Url for Customer Facing screen (CFS) |
| posStatus | Pos Status, possible values: Accepted, Disabled |