Skip to main content
Fetch the full details and current status of any transaction by its transaction_id. Use this endpoint to confirm whether a payment was approved, to monitor retry attempts, or to display order history to your customers.

Path parameters

terminal_friendly_id
string
required
Your terminal identifier. Exactly 6 characters.
transaction_id
string
required
The SmartRetry transaction ID to look up. Exactly 8 characters. This is the transaction_id returned by the sale, pre-auth, capture, refund, or void response.

Response

transaction_id
string
required
SmartRetry’s unique identifier for this transaction. Exactly 8 characters.
type
string
required
The transaction type. One of: sale, preauth, capture, refund, void, recurring_init, recurring, payout.
amount
number
required
Transaction amount in major currency units (e.g., 49.99).
currency
string
required
Three-letter ISO 4217 currency code.
authorization_code
string
Authorization code assigned by the acquirer upon approval.
arn
string
Acquirer Reference Number (ARN). Use this when communicating with your acquiring bank about a specific transaction.
attempt_number
integer
The retry attempt number for this transaction. 1 means the first attempt; higher values indicate SmartRetry has automatically retried the transaction.
created_at
string
required
ISO 8601 timestamp of when the transaction was created.
updated_at
string
required
ISO 8601 timestamp of when the transaction was last updated.
status
object
required
The current status of the transaction.
order
object
required
Details about the order associated with this transaction.

Status values

The status.status field indicates the current state of the transaction:

Status domains

The status.domain field identifies which system was responsible for the status outcome:
Use status.domain alongside status.reasonCode to build targeted retry logic or to surface the right error message to your customers - for example, prompting a payer to update their card details when domain is PAYER_ACCOUNT.