saman-payment-pos
    Preparing search index...

    Interface TransactionResult

    Normalised result of a transaction. Mirrors the Delphi PcPosResults array.

    interface TransactionResult {
        amount?: string;
        cardHash1?: string;
        cardHash2?: string;
        cardMask?: string;
        chargeEmergencyNumber?: string;
        chargePin?: string;
        chargeSerial?: string;
        effectiveAmount?: string;
        fields: Record<number, string>;
        ok: boolean;
        posVersion?: string;
        responseCode?: string;
        responseMessage?: string;
        rrn?: string;
        serialId?: string;
        terminalId?: string;
        timedOut?: boolean;
        trace?: string[];
        traceNumber?: string;
        transactionDate?: string;
    }

    Hierarchy (View Summary)

    Index
    amount?: string
    cardHash1?: string
    cardHash2?: string
    cardMask?: string
    chargeEmergencyNumber?: string
    chargePin?: string

    Charge PIN / serial / emergency number (DE58/59/60) for charge transactions.

    chargeSerial?: string
    effectiveAmount?: string
    fields: Record<number, string>

    All raw ISO fields harvested across the conversation, keyed by DE number.

    ok: boolean
    posVersion?: string
    responseCode?: string

    DE39 response code (e.g. "00", "15", "17", "98").

    responseMessage?: string

    Human-readable text for the response code (Persian, from the reference table).

    rrn?: string

    Retrieval reference number (DE37).

    serialId?: string
    terminalId?: string
    timedOut?: boolean

    True if the transaction failed because an expected step never arrived within its timeout (no frame at all was received for that step), as opposed to the terminal replying with a decline / unexpected processing code / bad MAC. Only meaningful when ok is false.

    trace?: string[]

    Raw POS messages exchanged (hex), for debugging.

    traceNumber?: string
    transactionDate?: string