Big Retailers and those who are using home grown customized POS do not prefer to install a 3rd party client for digital receipts.
InReceipts REST APIs are a super easy few lines APIs to enable digital receipts at all their counters in one go. With this, the big retailers can roll-out engagement based on campaigns on their captive audience base using InReceipts.
To know more about Contextual targeting, contact InReceipts.
1) Mobile Behavior Targeting Hierarchy
(Where(*), When(before), Whom(me, family, &friends), What(products&events))
2) Mobile Geo-spatial Targeting Hierarchy
(Where(pos), When(now), Whom(me), What(*))
2. 1
Table of Contents
InReceipts Platform Overview ......................................................................................................................2
Foundation....................................................................................................................................................2
Receipt Enablement......................................................................................................................................2
InReceipts-Lite Client ....................................................................................................................................3
InReceipts Billing Integration APIs Details ....................................................................................................4
1. Initialize terminal. .............................................................................................................................5
2. Transaction API. ................................................................................................................................7
3. Redeem Voucher...............................................................................................................................9
Security and Compliance at Retail Stores...................................................................................................11
Store Level Data Security........................................................................................................................11
Admin Level Data Security ......................................................................................................................12
Cloud Security .........................................................................................................................................12
Customer Individual Mobile Data Safety ................................................................................................12
Compliance .................................................................................................................................................13
3. 2
InReceipts Platform Overview
InReceipts SAAS platform enables offline retailers, restaurants and brands to engage and directly
communicate with their customers. It is enriched with multiple features to cover merchants and
consumers touch points.
Foundation
The Purchase receipts are used as a foundation for the features built for measuring customer
engagement and satisfaction. The merchants can successfully get the most sought out insights for
their customers with a centrally managed dashboard.
InReceipts Single View provides
Voice of Customers – Instant Feedback trackable to a particular purchase with
corresponding customers
Cross Brand Selling Impact Measurement – Complementary Offers on Purchases
Rich Push Campaigns - Reach Measurement and the corresponding Sales
The rich push notifications to the existing customer base goes with the Retailers Logo and brand
name to increase their brand recall value.
Receipt Enablement
InReceipts is agnostic to all billing system and sends the receipts for all purchases to customers
automatically. To adhere and follow the IT and security guidelines for different retail houses,
InReceipts platform support both models
Plug & Play InReceipts Client – This requires an installation of InReceipts Lite client on the
billing system and there is no need to write a single line of code. It is literally plug and play.
InReceipts billing Integration Apis – InReceipts also supports integration APIs for retail
chains where the security for reasons, any external installation is not preferred.
4. 3
InReceipts-Lite Client
InReceipts Lite Client is ultra-light thin client that work in tandem with the billing software installed at
any retail outlets. The plug and play client is not required to be integrated with any billing software,
once installed it will make a copy of the printed receipts and will send it to the customers’ mobile
through InReceipts cloud infra.
It is currently running at more than 15+ POS at different retail outlets as well as home grown billing
software. The table below provides the list of Billing software where InReceipts-Lite is currently live.
Point of Sale / Billing
Software
Merchant Category Comments
1. Marg Counter Pharmacy & Grocery www.margcompusoft.com
2. EASY SOL Pharmacy easysol.in
3. Navision POS Electronics Dynamics NAV
4. Tally 9 Electronics http://www.tallyworld.com/
5. Shopper 9 Apparels Mudra Stores
6. Wiz App Apparels http://www.ascntech.com/
7. C-SAT POS Restaurants & Apparels csatspl.com
8. ARNON Apparels arnon.co.in/
9. VIN POINT LAB Tested @ FHW Fortis Health world POS
10. Retail Magic POS Grocery Store http://www.retailmagicpos.ca/
11. Retail Point POS Grocery Store http://www.retailpoint.com/
12. InReceipts Storz Tailors, Bakery, SMBs InReceipts – Point of Receipts
13. Spark POS Restaurant www.sparktech.co.in
14. Copper POS F&B, Apparels http://www.nchsoftware.com
15. Unicenta POS F&B https://unicenta.com
Apart from this, InReceipts lite has been tested successfully with multiple point of sales like POSIST,
FLOREANT, LS-RETAIL (windows), E-tek etc.
5. 4
InReceipts Billing Integration APIs Details
INITIALIZE TERMINAL: This will be one-time activity and will be required once a new terminal/POS is
added.
TRANSACTION API: All the transactions /billing happening at the POS terminal can be sent to the
InReceipts Server.
REDEEM API: Trackable offers can coupon can be redeemed at the Billing software itself if redemption
is required to be enabled.
InReceipt Server API
Initialize POS Terminal Transcation API Redeem API
6. 5
1. Initialize terminal.
It will initialize the terminal for the POS system. The request will contain the terminal code generated
on registering a terminal on web interface. Terminal code is the mandatory parameter. It will return
terminal id and sequence code. The terminal Id and sequence code need to be stored by the
merchant against the terminal code. The terminal Id and sequence code will be required on calling
transaction API. In case of any error it will contain error message.
Request:
Method: PUT
URL: http://inreceipts.com/pos/terminal/initialize
Request Header
o Content-Type application/json
o Accept application/json
o version v0
Header parameter | Description --------------------| -----------
4. version | api version (current v0)
Body:
{
"terminalCode":1429284437488
}
Body parameter | Description ----------------- | -----------
0. terminalCode | Mandatory parameter, generated on registering a terminal on web
e.g: http://inreceipts.com/pos/terminal/initialize
Success Response:
Http Status: 200 OK
Body:
{
"sequenceCode": 448, -- current running sequence number for the specific terminal
"responseMsg": "Success",
"terminalId": 2 -- terminal Id corresponding to the terminal code
}
7. 6
Error Response:
Http Status: 200 OK
Body:
{
"responseMsg": "Declined"
}
Terminal Id and sequence code will be used to do a transaction. Both the value need to be
stored by the merchant against the terminal code
8. 7
2. Transaction API.
API will be used to send the receipt to the InReceipts server. The receipt byte array need to be
converted to BASE64 encoded string and send as a request parameter. The request will have the
current sequence number stored for the transacting terminal. For success response api will return
sequence code. Update the sequence code with the returned value.
Request:
Method: POST
URL: http://inreceipts.com/pos/transaction
Request Header
o Content-Type application/json
o Accept application/json
o version v0
Header parameter | Description ----------------- | -----------
4. version | api version (current v0)
e.g. : http://inreceipts.com/pos/transaction
Body:
{ "terminalId":2,
"mobileNumber": "9871799759",
"billNumber": "ANDN126",
"sequenceCode":447,
"transactionTime":1453903171552,
"receiptData":"Base64 encode string for byte array",
"amount":300
}
Body parameter | Description ----------------- | -----------
1. terminalId | Mandatory, the terminal Id returned by intialize API
2. mobileNumber | Mandatory, the mobile number of the customer, containing country code
3. billNumber | Mandatory, The bill number of the receipt
4. sequenceCode | Mandatory, the running sequence code stored against the terminal
5. transactionTime| Optional, the bill date long value, if not present the current date tie will be stored
9. 8
6. receiptData | Mandatory, The receipt byte array for a pdf steam should be converted to Base64
encoded string.
7. amount | Mandatory, The Net payable amount, the clinet should multiply the net amount with 100 e.g
If Net Amount is Rs 15750.50 than amount = 15750.00 * 100;
Success Response:
Http Status: 200 OK
Body:
{
"uniqueReceiptId": "2199581609",
"sequenceCode": 449,
"responseMsg": "Success"
}
Response parameter | Description --------------------- | -----------
1. sequenceCode | Running sequence number for the terminal. Update the stored sequence number
with the returned sequenceCode.
2. responseMsg | Success 3.uniqueReceiptId | Unique receipt id generated by the inreceipt server. If
the merchant is not sending the mobile number than merchant can print the unique Id on the receipt
so that the customer can map it on the Inreceipt App.
Error Response:
Http Status: 200 OK
Body:
{
"responseMsg": "Invalid terminal"
}
E.g Java code for converting byte array to Base64 encoded String
{
import org.apache.commons.codec.binary.Base64;
byte[] receiptData = <receipt byte array for a PDF stream since it dont loose the
formatting>
Base64 base64 = new Base64();
String receiptString = base64.encodeAsString(receiptData)
}
10. 9
3. Redeem Voucher.
The redeemVoucher call will be used at the time of redemption of a selective issued coupon and can
easy track coupon conversion.
Request:
Method: PUT
URL: http://inreceipts.com/pos/redeemVoucher
Request Header
o Content-Type application/json
o Accept application/json
o version v0
Header parameter | Description ----------------- | -----------
4. version | api version (current v0)
Body:
{
"terminalId":2,
"voucherCode":1429284437488
}
Body parameter | Description ----------------- | -----------
0. terminalId | Mandatory, the terminal Id returned by intialize API for the POS
1. voucherCode | Mandatory, Voucher code that need to be redeemed
e.g: http://inreceipts.com/pos/redeemVoucher
Success Response:
Http Status: 200 OK
Body:
{
"responseMsg": "Success"
}
Error Response:
Http Status: 200 OK
11. 10
Body:
{
"responseMsg": "Coupon already redeemed"
}
Http Status code for all API's
Error code | Description ----------------- | ----------- 200 | OK.
All the use case will return 200. In case of error the json will contain error description. 500 | Internal
Server Error (Exception at server)
Error codes and their meanings:
Error Message | Description -------------------------------- | ----------- Success |
The API call is successful Declined | Server has declined the transaction. Invalid terminal | Terminal
code/Id is Invalid or missing Invalid bill number | Billing number missing Invalid receipt data | Receipt
data missing Invalid Sequence Number | Sequence code missing Merchant hot listed | Merchant is
not Active Terminal hot listed | Terminal is not Active Coupon already redeemed | Coupon present
for redemption is already redeemed Invalid coupon | Voucher code is missing or Not present in
system No promotion found | No promotions found Server error | Some error with the server No
receipt found with unique id | Receipt not present with unique receipt
12. 11
Security and Compliance at Retail Stores
Retail IT infrastructure is complex and distributed. It includes stores with POS checkout terminals,
self-check units, cash drawers, information/web kiosks, PCs, and back-office servers. These
systems are generally connected to a main office, which includes desktops, servers, network
devices, and data.
Retail organizations are concerned about striking a balance between reducing risks, reducing costs,
and delivering optimized security to their constituents and customers. At the same time, they also
want to improve the customer experience, reinforcing brand identity, generating customer loyalty,
and increasing sales.
InReceipts solutions expand beyond retail stores, integrating a comprehensive security strategy for
the entirety of the retailer’s IT infrastructure, including stores, main offices, and supply chain assets
across desktops, servers, network devices, and data.
InReceipts achieves this by combining several core aspects of security
Store Level Data Security
InReceipts-Lite client of APIs only accesses the Receipts data when printed through a thermal or a
regular printer. This client does not come into picture for any other printing purposes and do not
communicate back with the InReceipts Server other than sending the receipts to the corresponding
customers.
Activity controls: Only Receipts prints are permitted and all other activities are ignored
Content filtering: Receipts prints are only accepted by InReceipts Client and any other kind
of content be it music, videos of images are not uploaded or downloaded by InReceipts Lite
Client
13. 12
Admin Level Data Security
InReceipts single view dashboard for all customer’s feedbacks as well as targeting information can
only be viewed by entering a username and password which is selectively shared and maintained.
Cloud Security
The InReceipts servers stores the receipts data in non-readable byte format which can only be
viewed by with specific access at the cloud.
Stored data protection: This cloud infrastructure can also be maintained separately hosting
separate data and respective ownership as in when required by the retail house.
Customer Individual Mobile Data Safety
The customer receipts can only be viewed and owned in a mobile phone with the number being
shared at the purchase counter. InReceipts App verifies the user with the Mobile originated SMS
and a Mobile Terminated Key auto-checked at the time of login.
The customer’s receipts will not be delivered to any other number other than specified at the time of
purchase.
14. 13
Compliance
InReceipts Solutions is a private limited company, highly committed to maintain very high standards
of security compliance and business continuity. The Core team has collectively of 50+ years of
international experience in Financial and Telecom domain dealing customer’s data for international
banks and telecom operator.
Moreover, InReceipts as a company would be signing the requisite NDA and
would work fully compliant as per the laid down security and IT policy of their customers.