Compliant receipt information
Compliant receipt information
This annex provides a guide on how to display a compliant transaction receipt using the data provided by the TapOnMobile SDK. To ensure compliance with payment industry standards, certain fields must be presented to the cardholder after a transaction.
1. Receipt template overview
Please note that the following is only an example of a formatted compliant receipt. To ensure compliance with payment industry standards, certain fields must be presented to the cardholder after a transaction. Developers should adapt the visual design to their specific brand and regional requirements.
"formattedReceipt":{
"merchant":" This is to confirm your transaction\\n
registered at:\\n
----------------------------------------\\n
Blue Horizon Bookstore\\n
456 Maple Avenue\\n
Suite 101, Springfield\\n
----------------------------------------\\n
23.04.2026 15:25\\n
60,00 EUR\\n
Visa **** **** **** 9876\\n
Transaction details: \\n
Status: AUTHORIZED\\n
Authorization code: (0) 135246\\n
ARQC: 61BC5EDC34F63979\\n
AID: A0000000031010\\n
Contactless\\n
Type: Sale\\n
POS ID: APP20212\\n
MID: 103810047\\n
VISA CARD",
"client":" This is to confirm your transaction\\n
registered at:\\n
----------------------------------------\\n
Blue Horizon Bookstore\\n
456 Maple Avenue\\n
Suite 101, Springfield\\n
----------------------------------------\\n
23.04.2026 15:25\\n
60,00 EUR\\n
Visa **** **** **** 9876\\n
Transaction details: \\n
Status: AUTHORIZED\\n
Authorization code: (0) 135246\\n
ARQC: 61BC5EDC34F63979\\n
AID: A0000000031010\\n
Contactless\\n
Type: Sale\\n
POS ID: APP20212\\n
MID: 103810047\\n
VISA CARD"
}
Code block 129 Example
2. Property mapping
The following table provides a comprehensive list of fields available in the TransactionDetail and APMTransaction models. Use these mappings to populate your receipt template.
Legend: Optionality & Categories
| Code | Description |
|---|---|
| O | Optional field (may be null/empty depending on the transaction) |
| C | Card Transaction specific |
| Q | QR-code Transaction specific |
| B | BLIK Transaction specific |
| D | DCC (Dynamic Currency Conversion) specific |
| - | Present in all type of payments |
Field Mapping Table
| Field Description | TransactionDetail Property | APMTransaction Property | Category |
|---|---|---|---|
| Unique Transaction ID | transactionId | transactionId | C/Q/B |
| Status (Approved/Declined) | transactionStatus | status | C/Q/B |
| Type (Sale/Refund/etc.) | transactionType | transactionType | C/Q/B |
| Total Amount | transactionAmount | amount | C/Q/B |
| Tip Amount | tipAmount | tipAmount | O |
| Currency Info | currency | currency | C/Q/B |
| Transaction Date/Time | transactionDate | transactionDate | C/Q/B |
| Merchant Identifier | merchantId | mid | C/Q/B |
| Terminal Identifier | terminalId | tid | C/Q/B |
| Authorization Code | authId | authCode | O |
| Retrieval Ref. Number (RRN) | retrievalRefNum | retrievalRefNum | O |
| Application Identifier | AID | paymentData.AID | O |
| Application Label | aplicationLabel | paymentData.fullName | O |
| Payment Brand Name | cardType | paymentData.name | O |
| Masked PAN (Card Number) | cardNumber | (n/a) | C |
| Card Expiry Date | expiryDate | (n/a) | C, O |
| Response Code (Host) | responseCode | responseCode | C/Q/B |
| Response Message (Host) | responseMsg | responseMsg | C/Q/B |
| External Reference 1 | ref1 | additionalData.ref1 | O |
| External Reference 2 | ref2 | additionalData.ref2 | O |
| External Identifier | externalID | externalID | O |
| Refund Original Trans. ID | refundedTransactionId | refundedTransactionId | O |
| Refund Date | refundedDate | (n/a) | C, O |
| Refund Masked PAN | refundedMaskedPan | (n/a) | C, O |
| DCC Status | dccStatus | (n/a) | D |
| DCC Amount | dccAmount | (n/a) | D |
| DCC Currency | dccCurrency | (n/a) | D |
| DCC Exchange Rate | dccExchangeRate | (n/a) | D |
| DCC Markup % | dccMarkup | (n/a) | D |
| DCC ECB Indicator | dccEcbIndicator | (n/a) | D |
| EMV CID / Cryptogram | CID / applicationCryptogram | (n/a) | C |
| Payment Method Enum | paymentMethod | paymentMethod | C/Q/B |
| Merchant Alias | (n/a) | paymentData.merchantAlias | Q, B, O |
| ACQ Payment ID | (n/a) | paymentData.idPaymentACQ | Q, B, O |
| GPS Location (Lat/Long) | (n/a) | gpsLatitude / gpsLongitude | O |
Special considerations
DCC Transactions
If a Dynamic Currency Conversion (DCC) was applied, the receipt must include:
- Original Amount: transactionAmount + currency
- Exchange Rate: dccExchangeRate
- DCC Amount: dccAmount + dccCurrency
- Markup: dccMarkup
Tips
If a tip was added, it is recommended to display the breakdown:
- Base Amount: transactionAmount - (tipAmount ?? 0)
- Tip: tipAmount
- Total: transactionAmount
Refunds
For refunds, always display the Original Transaction ID (refundedTransactionId) to help the customer link the refund to the initial purchase.