kepa
GETTING STARTED

Receipt Requirements

What every receipt must contain to pass acquirer certification.

Receipt content is not cosmetic — it's regulated by the card schemes and enforced by the acquirer during terminal certification. If your printed or digital receipts are missing mandatory fields, the certification test cases will fail and you will not be allowed to go live. This page is the canonical contract for what Atlas guarantees to return in receiptData and what your POS must render.

Cardholder copy — required fields

Every transaction produces a cardholder copy (printed or emailed) with these fields. Atlas surfaces them on every TransactionResponse.receiptData. You are responsible for rendering them.

Field
Required
Meaning
Source
Merchant name
REQUIRED

Trading name registered with the acquirer.

receiptData.merchantName
Merchant ID (MID)
REQUIRED

Acquirer-assigned merchant identifier.

receiptData.merchantId
Terminal ID (TID)
REQUIRED

Acquirer-assigned terminal identifier.

receiptData.terminalId
Date & time
REQUIRED

Transaction date and local time.

receiptData.dateTime
Card scheme
REQUIRED

Visa, Mastercard, Amex, etc.

receiptData.cardScheme
Masked PAN
REQUIRED

Last 4 digits visible. Never print the full PAN.

receiptData.maskedPan
Entry mode
REQUIRED

CONTACTLESS, CONTACT, MAGSTRIPE, MANUAL.

receiptData.entryMode
Application label
CONDITIONAL

EMV application label (e.g. 'Visa Credit'). Required for chip transactions.

receiptData.applicationLabel
AID
CONDITIONAL

EMV Application Identifier hex string. Required for chip transactions.

receiptData.aid
Transaction type
REQUIRED

SALE, REFUND, VOID, PRE_AUTH, etc.

type
Amount
REQUIRED

Transaction amount in the cardholder's currency.

receiptData.amount
Tip amount
CONDITIONAL

Separate line from the base amount when tipping is in use.

receiptData.tipAmount
Total amount
REQUIRED

Amount + tip (if present).

receiptData.totalAmount
Authorization code
CONDITIONAL

Issuer auth code. Required on approved transactions.

receiptData.authorizationCode
Approval status
REQUIRED

APPROVED or DECLINED. Print prominently.

receiptData.approvalStatus
CVM performed
REQUIRED

PIN, SIGNATURE, CDCVM, NO_CVM. Disclosure of cardholder verification method.

receiptData.cvmPerformed
Transaction ID / RRN
REQUIRED

For dispute traceability.

receiptData.transactionId + rrn
Signature line
CONDITIONAL

Only when CVM is SIGNATURE. Blank line for cardholder signature.

Merchant copy — additional fields

The merchant copy (kept by the merchant, not given to the cardholder) includes everything on the cardholder copy plus extra technical fields used for chargeback defense and reconciliation.

  • All cardholder-copy fields, plus:
  • Response code (ISO 8583, e.g. "00").
  • Reference ID (your referenceId from the request).
  • Terminal Verification Results (TVR) hex string.
  • Full cryptogram type (TC / ARQC / AAC).

Example rendered receipt

A passing receipt fits on a 32-character-wide thermal strip. All required fields are present, the approval status is the most prominent line, and the masked PAN never shows more than the last four digits.

        ATLAS COFFEE — PONSONBY
        129 Ponsonby Road, Auckland
        MID: MID123456789
        TID: TID-00012345
────────────────────────────────
  09 Apr 2026          11:14:22
  txn_01JQXYZ123456
────────────────────────────────

  VISA     ************1234
  Visa Credit
  AID A0000000031010
  Contactless · NO CVM

  Subtotal              $25.00
  Tip                    $0.00
  TOTAL NZD             $25.00

  APPROVED
  Auth code: A12345
  RRN: 262803141422

          THANK YOU
     Retain for your records

Scheme-specific rules

  • VisaApplication label must read 'Visa Credit' or 'Visa Debit' — not just 'Visa'. PIN-verified transactions must print 'PIN VERIFIED' in place of a signature line.
  • MastercardIf the AID begins with A0000000041010, the label must be 'Mastercard'. Contactless refunds must print 'REFUND' in place of the amount.
  • AmexMust print 'American Express' as the full scheme name — not 'Amex' or 'AMEX'. Requires the last 5 digits of the card, not 4.
  • DiscoverCVM must be spelled out as 'SIGNATURE VERIFIED' when applicable.
  • UnionPayReceipts must carry the UnionPay logo in printed copies. Localized characters are supported via the terminal's UTF-8 pipeline.

Digital vs printed receipts

Digital receipts (email, SMS, in-app) have the same content requirements as printed ones. The only difference is that digital receipts may render in color and include merchant branding — everything else (including the masked PAN rules) applies identically. Atlas does not send digital receipts on your behalf; you are responsible for delivering them, typically by capturing the cardholder's email via /v1/device/input and using your own transactional email provider.