id
required |
string (uuid)
|
The receipt id.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
transactionId
required |
string (uuid)
|
The transaction this receipt belongs to.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
merchantId
required |
string (uuid)
|
The merchant that owns the transaction.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
receiptType
required |
ReceiptType
ReceiptType |
The event in the transaction's life that this receipt records.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Authorization |
Receipt generated after a successful authorization. | Capture |
Receipt generated after a capture/settlement. | Refund |
Receipt generated after a full refund. | PartialRefund |
Receipt generated after a partial refund. Multiple partial refund receipts may exist on a single transaction, each with a distinct sequence number. | Void |
Receipt generated after a void. | Reversal |
Receipt generated after a full reversal: the entire approved amount has been released back to the issuer. Distinguished from PartialReversal so the transaction-detail / explorer pages can show the lifecycle event clearly. | OnDemand |
Receipt generated on-demand from the UI (legacy/fallback for pre-module transactions). | PartialReversal |
Receipt generated after a partial reversal. Multiple partial reversal receipts may exist on a single transaction (one per reversal operation), each with a distinct sequence number. | SplitTenderSummary |
Summary receipt for a completed split tender group: the order total, what each tender in the group authorized, and the combined authorized amount. Generated once per group, after the final tender completes, in addition to the per-tender receipts. |
|
sequenceNumber
required |
integer (int32)
|
The receipt's position among the transaction's receipts, starting at 1.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
generatedAtUtc
required |
string (date-time)
|
When the receipt was generated, in UTC.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
confirmationNumber
required |
string
|
The confirmation number printed on the receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
transactionType
required |
TransactionType
TransactionType |
The transaction type.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Authorization |
Represents an authorization transaction, typically used to verify funds availability without capturing the amount. | Sale |
Represents a sale transaction, which authorizes and captures funds in a single step. | Return |
Represents a return transaction, used to refund money to the customer. | Void |
Represents a void transaction, used to cancel a previously authorized transaction before it is settled. | Force |
Represents a force transaction, typically used to manually enter a previously authorized transaction. | Capture |
Represents a capture transaction, used to capture funds from a previously authorized transaction. | CaptureAll |
Represents a capture all transaction, used to capture funds from multiple previously authorized transactions. | RepeatSale |
Represents a repeat sale transaction, used to process a new sale based on a previous transaction's details. | Adjustment |
Represents an adjustment transaction, used to modify the amount of a previous transaction. | Activate |
Represents an activate transaction, typically used to activate a gift card or prepaid card. | Deactivate |
Represents a deactivate transaction, typically used to deactivate a gift card or prepaid card. | Redeem |
Represents a redeem transaction, typically used to redeem value from a gift card or loyalty program. | Inquire |
Represents an inquire transaction, used to check the status or balance of an account or card. | Reload |
Represents a reload transaction, typically used to add value to a gift card or prepaid card. | VoucherClear |
Represents an offline EBT voucher clear: a terminal was offline, a paper food-stamp (SNAP) or eWIC voucher was written against a voice-obtained approval code, and the voucher is later uploaded so the benefit clears. Permitted on EBT SNAP and eWIC tenders only. | Payout |
Represents a payout transaction, used to push funds from the merchant to an external bank account as an ACH credit. Unlike Return, which refunds a prior debit, a payout is a standalone outbound fund transfer with no originating transaction. |
|
statusDisplay
required |
string
|
The status printed on the receipt: Approved, Partially Approved, Pending, Not Completed or
Declined.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
isApproved
required |
boolean
|
Whether the transaction was approved when the receipt was generated.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
authorizationCode
required |
string
|
The processor's authorization code. Present only on an approved receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
declineReason
required |
string
|
Why the transaction was declined. Present only when `isApproved` is false.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
processorMessage
required |
string
|
The processor's response message.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
signatureRequired
required |
boolean
|
Whether the receipt asks for the cardholder's signature.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
customerEmail
required |
string
|
The customer email address captured on the transaction.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
transactionDateUtc
required |
string (date-time)
|
When the transaction took place, in UTC.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
transactionDateLocal
required |
string
|
When the transaction took place, formatted in the merchant's time zone as printed on the receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
merchantInfo
required |
ReceiptMerchantInfoDto
ReceiptMerchantInfoDto |
The merchant details printed on the receipt.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
Fields of ReceiptMerchantInfoDto:
| Field |
Type |
Description |
name
required |
string
|
Merchant legal name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| dba
required |
string
|
"Doing Business As" name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| logoUrl
required |
string
|
Absolute URL to the merchant logo.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| brandColor
required |
string
|
Brand accent color (hex).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| address
required |
string
|
Pre-formatted display address.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| phone
required |
string
|
Support phone number.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| email
required |
string
|
Support email.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| footerText
required |
string
|
Custom footer text.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| terminalId
required |
string
|
Terminal/register identifier (TID). From the POS register or lane name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| termsAndConditions
required |
string
|
Merchant terms and conditions of sale (e.g. "No Refunds").
Printed at the foot of the receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
This body has no documented fields. |
cardSummary
required |
ReceiptCardSummaryDto
ReceiptCardSummaryDto |
The payment method printed on the receipt. A card is identified by its brand and last four digits
only.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
Fields of ReceiptCardSummaryDto:
| Field |
Type |
Description |
lastFour
required |
string
|
Last four digits of the card number (e.g. "4242").
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cardBrand
required |
string
|
Card brand (e.g. "Visa", "Mastercard").
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cardholderName
required |
string
|
Cardholder name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| entryMode
required |
EntryModes
EntryModes |
Card entry mode.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
Unknown |
The entry mode is unknown. | NotApplicable |
The entry mode is not applicable for this transaction. | Manual |
The transaction details were entered manually. | UnencryptedCardReaderSwipe |
The card was swiped through an unencrypted card reader. | EncryptedCardReaderSwipe |
The card was swiped through an encrypted card reader. | Icc |
The transaction was processed using an ICC (Integrated Circuit Card) or chip card. | Proximity |
The transaction was processed using a proximity or contactless payment method. | Fallback |
The transaction was processed using a fallback method when the primary method failed. | TechnicalFallback |
The transaction was processed using a fallback method when the primary method failed. | EmptyCandidateFallback |
The transaction was processed using a fallback method when the primary method failed. | DigitalWallet |
The transaction was processed using a digital wallet. |
| avsResponseCode
required |
string
|
AVS response code.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| avsResponseText
required |
string
|
Human-readable AVS response.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| paymentType
required |
string
|
Payment type derived from BIN data (e.g. "Credit", "Debit"). Printed so the receipt says whether
the card was a credit or a debit card, which processor receipt rules require.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tenderType
required |
CardTenderType
CardTenderType |
Card-rail tender used for the transaction. Surfaces this on receipts so
EBT SNAP / EBT Cash / WIC transactions render program-appropriate language even when
the BIN-derived `paymentType` would label them generically (e.g. "Debit").
Null when the transaction recorded no tender; the receipt then uses the generic credit/debit
layout.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
CreditDebit |
Standard credit/debit card. The current card-rail behaviour. isDebitRouting modulates whether the request prefers debit-network routing within this rail. | EbtSnap |
EBT SNAP (food benefits). Routes through the EBT SNAP processor lane and requires PIN + card-present per program rules. | EbtCash |
EBT Cash (cash benefits). Distinct rail from SNAP; supports cashback where SNAP does not. PIN + card-present required. | Ewic |
eWIC (Women, Infants, and Children). Distinct rail from EBT, with item-level eligibility / voucher-select flow handled in the eWIC follow-up epic. |
| ebtBalanceAvailable
required |
number (double)
|
EBT balance available after the transaction, when the processor returns it on the
authorization response. `null` when not applicable (credit/debit) or
not provided by the processor. receipts render this value on a dedicated
"EBT Balance Available" line for EBT SNAP / EBT Cash transactions.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tenderLabel
required |
string
|
Human-readable label for the tender (e.g. "Credit / Debit", "EBT SNAP",
"EBT Cash", "WIC"). Pre-formatted by the receipt assembler so renderers
don't need to localize the enum themselves.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
This body has no documented fields. |
amountSummary
required |
ReceiptAmountSummaryDto
ReceiptAmountSummaryDto |
The amounts printed on the receipt.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
Fields of ReceiptAmountSummaryDto:
| Field |
Type |
Description |
subtotal
required |
number (double)
|
Subtotal (base amount before tax and tip), in the transaction currency.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tax
required |
number (double)
|
Tax amount, in the transaction currency.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tip
required |
number (double)
|
Tip/gratuity amount, in the transaction currency.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| shipping
required |
number (double)
|
Shipping amount, in the transaction currency. Null / zero when no shipping amount was collected, in which case no
shipping line is rendered.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| total
required |
number (double)
|
Total transaction amount, in the transaction currency.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| approvedAmount
required |
number (double)
|
Approved amount, in the transaction currency (may differ from total for partial approvals).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| isPartialApproval
required |
boolean
|
Whether the approval was partial.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| requestedAmount
required |
number (double)
|
The amount requested from the card issuer, in the transaction currency. Present on a partial approval receipt, where it
is printed beside `approvedAmount`, and on a split tender summary, where it is the
order total. Null on every other receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| remainingBalanceAfterApproval
required |
number (double)
|
What a partial approval left unpaid on this card: `requestedAmount` minus
`approvedAmount`, never negative. On a split tender summary, what the group as a
whole left unpaid. In the transaction currency. Null whenever `requestedAmount` is null.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| currencyCode
required |
string
|
ISO 4217 currency code (e.g. "USD").
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cashBack
required |
number (double)
|
Cash back (debit) or cash over (Discover credit) amount, in the transaction currency.
Printed on Discover credit and debit receipts, where the processor's receipt rules require it.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| transactionFee
required |
number (double)
|
Transaction fee assessed (e.g. PIN debit fees), in the transaction currency. Included when provided by the processor.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| availableBalance
required |
number (double)
|
Available balance remaining after the transaction, in the transaction currency. Included when
provided by the processor (credit, debit, EBT, prepaid).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| convenienceFee
required |
number (double)
|
Convenience fee assessed on the transaction, in the transaction currency. Null / zero when no convenience fee applies,
in which case no fee line is rendered.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| convenienceFeeBilledSeparately
required |
boolean
|
True when the convenience fee was submitted as its own separately-authorized charge rather
than being included in this transaction's `total`. The fee line is then rendered
with a "billed as a separate charge" qualifier so the total still reconciles.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| surcharge
required |
number (double)
|
Surcharge amount assessed on the transaction, in the transaction currency. Present only when the gateway computed and
applied a surcharge; null otherwise (a non-surcharged transaction shows no surcharge line).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| surchargeRate
required |
number (double)
|
The surcharge rate applied to produce `surcharge`, as a decimal fraction (e.g. 0.03
for 3%).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| surchargeReversed
required |
number (double)
|
Surcharge amount reversed back to the cardholder on a refund / reversal receipt, in the
transaction currency. Null / zero
on non-refund receipts.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cashPrice
required |
number (double)
|
For a merchant that posts a cash price and a card price, the cash price of this payment, in the
transaction currency: its base amount. Present, with `cardPrice`, only when the payment was charged one of the
two posted prices; null otherwise, and the receipt then prints its ordinary subtotal.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cardPrice
required |
number (double)
|
For a merchant that posts a cash price and a card price, the card price of this payment, in the
transaction currency: the cash price plus the merchant's card rate. On a card payment it is the price charged; on a cash or
bank payment it is the price the payer did not pay. Null when the payment was not dual priced.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cashDiscountAmount
required |
number (double)
|
The discount a payment charged the cash price received, in the transaction currency:
`cardPrice` minus `cashPrice`. Present only on a cash payment, or a bank payment the merchant treats as
cash; null on a card payment and when the payment was not dual priced.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cashDiscountForBankPayment
required |
boolean
|
True when `cashDiscountAmount` was received by a bank payment rather than cash.
False whenever no cash discount applies.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| cardPriceReversed
required |
number (double)
|
The share of the card price returned to the payer on a void, reversal or refund of a payment
charged the card price, in the transaction currency. Not printed as a row of its own: the refunded total already includes it.
Null when nothing of a card price was returned.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
This body has no documented fields. |
customFields
required |
array of ReceiptCustomFieldDto
array of ReceiptCustomFieldDto |
The transaction custom fields the merchant chose to show on receipts.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
Fields of each ReceiptCustomFieldDto:
| Field |
Type |
Description |
name
required |
string
|
Custom field display name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| value
required |
string
|
Custom field value.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| values
required |
array of string
array of |
The list of values for a multi-value custom field, or `null` for a single-value field.
A renderer shows one item per line; `value` is `null` when this is set unless
the field was captured through its single value, in which case both are present.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
This body has no documented fields. |
originalSaleDateUtc
required |
string (date-time)
|
On a refund receipt, when the original sale took place, in UTC.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
refundReason
required |
string
|
On a refund receipt, the reason given for the refund.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
emailSent
required |
boolean
|
Whether the receipt has been emailed.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
linkedChargeRole
required |
LinkedChargeRole
LinkedChargeRole |
Which half of a linked pair of charges this receipt covers, or null when the transaction is not
part of one.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
PrimaryCharge |
The primary payment. A separate fee charge was authorized alongside it, so this transaction's own amount is not the whole of what the cardholder was billed. | FeeCharge |
The separately-authorized fee charge. The payment it was assessed against is a different transaction with its own authorization and approval code. |
|
linkedChargeTransactionId
required |
string
|
The id of the other transaction in the linked pair, or null when there is none.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
linkedChargeKind
required |
LinkedChargeKind
LinkedChargeKind |
Why the other charge in the pair exists. Present on the fee charge's own receipt only.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
ConvenienceFee |
A separate charge submitted to carry a convenience fee that a card-brand program requires to settle as its own authorization (its own approval code), linked to the primary payment it was assessed against. |
|
splitTenderContext
required |
ReceiptSplitTenderContextDto
ReceiptSplitTenderContextDto |
The split tender group this receipt belongs to, or null when the transaction is not part of a
split tender.
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
Fields of ReceiptSplitTenderContextDto:
| Field |
Type |
Description |
groupId
required |
string (uuid)
|
Identifier shared by every tender in the group.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tenderSequence
required |
integer (int32)
|
1-based position of this receipt's transaction within the group. Null on a split tender
summary, which covers the whole group.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| totalTendersInGroup
required |
integer (int32)
|
Number of tenders in the group, voided ones included. Null when the group size was not known
when the receipt was generated, which is the case on a per-tender receipt.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| groupTotalAuthorized
required |
number (double)
|
Combined amount authorized across the tenders in the group that were not voided or reversed,
in the transaction currency.
Null when the whole group was not known when the receipt was generated.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| returnedAmount
required |
number (double)
|
What the bank took back from the group after it completed: the sum of the lines marked
`isReturned`, in the transaction currency. Null on every receipt that shows no return,
including the summary issued when the group completed.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| tenders
required |
array of ReceiptSplitTenderLineDto
array of ReceiptSplitTenderLineDto |
One line per tender, ordered by sequence. Populated on a split tender summary; empty
otherwise.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
|
This body has no documented fields. |