Transactions

Get transaction data

Retrieves transaction or product details by transaction ID. For shippable products (pr/ps prefix), returns product details.

get/api/transactions/{transactionId}

Request

  • Base URL: https://api.payware.eu
  • URL: https://api.payware.eu/api/transactions/{transactionId}
  • Auth: HTTP bearer

Path parameters

transactionIdstring required

Transaction ID or Product ID (for shippable products)

Response

Transaction data retrieved successfully

transactionIdstring
initiatingIdstring
transactionTypestring
initiatedBystring
payerBICstring
payerFriendlyNamestring
payerAccountstring
payeeBICstring
payeeFriendlyNamestring
payeeAccountstring
currencystring
amountstring

Transaction amount, as a decimal string at the smallest unit currency can be paid in. That is not always two decimal places - it follows the currency. Parse it as a decimal, never as a fixed-width string, and do not compare amounts as strings.

feestring

The fee payware calculated and will enforce at finalize, as a decimal string at the smallest unit currency can be paid in - the amount the institution can actually withhold. Echo it back UNCHANGED at finalize: do not recompute it from feeFixed/feeRate and do not re-round it, or the call is rejected with ERR_FEE_MISMATCH. Omitted (not zero) when the transaction carries no recorded fee; absence means unknown, not free.

reasonL1string
reasonL2string
createdinteger
finalizedinteger

Finalization moment, UNIX epoch milliseconds. Omitted for EXPIRED transactions, which are closed by the platform's expiry sweep and carry no finalization moment.

timeToLiveinteger
status'ACTIVE' | 'CONFIRMED' | 'CANCELLED' | 'DECLINED' | 'FAILED' | 'EXPIRED'

Transaction status. ACTIVE = awaiting payment (initial state, only status returned by GET). CONFIRMED = payment completed successfully. CANCELLED = cancelled before completion (requires statusMessage). DECLINED = payment declined by financial institution (requires statusMessage). FAILED = processing failed (requires statusMessage). EXPIRED = TTL exceeded before payment.

statusMessagestring
paymentMethod'A2A' | 'CARD_FUNDED' | 'BNPL' | 'INSTANT_CREDIT'

Payment method chosen by customer. Used by banks when processing transactions. A2A = direct transfer (lower fee, no rewards). CARD_FUNDED = card-linked account (higher fee, rewards eligible). BNPL = buy now pay later (installments). INSTANT_CREDIT = credit line approved at purchase.

passbackParamsstring

Opaque string supplied by the initiating partner at creation and passed back unmodified on every response and callback for this transaction. payware never interprets it.

payeeAmountstring
payeeCurrencyCodestring
payerAmountstring
payerCurrencyCodestring
feeFixedstring

Fixed fee component of the fee configuration stored on this transaction, in the transaction currency, at full stored precision. INFORMATIONAL - for reconciliation and for showing the merchant how the fee arose. Do not compute the fee from it: MAX(feeFixed, amount * feeRate) is the unrounded intermediate, and submitting that value at finalize is rejected with ERR_FEE_MISMATCH. The value to submit is fee.

feeRatestring

Variable rate of the fee configuration stored on this transaction, at full stored precision - up to six decimal places, e.g. "0.001250" = 0.125%. Do not assume four: rounding a negotiated rate to four places produces a different fee from the one payware enforces. INFORMATIONAL, same as feeFixed.

Example response

{
  "recognition": {
    "id": "3f2b8c1e-6a4d-4e2f-9b1a-5c7d8e9f0a1b"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.