Orders and Transactions
Revup uses Orders and Transactions to represent and track payment operations.
An Order contains the information associated with an operation, such as the amount, currency, customer information, payment details, and other information required to process the operation.
A Transaction represents the operation performed for an Order. The transactionType field identifies the type of operation, such as a payment, refund, RDR, Retrieval, or chargeback.
The relationship between an Order and a Transaction can be summarized as follows:
Orders
An Order contains the information required to process an operation.
This information can include the amount and currency, customer information, payment details, merchant information, and other data required by the payment flow.
Each Order is identified by a unique orderId.
An Order can also contain information that determines how the operation should be processed. For example, paymentDetails.type can indicate whether the operation is a consumer_initiated, a recurrence, or a credit_card_present payment.
Orders can also include information related to recurring payments, such as the payment sequence and subscription details.
For the complete list of Order fields, data types, allowed values, and request/response availability, see the Order fields reference.
Transactions
A Transaction represents an operation performed for an Order.
Each Transaction is identified by a unique transactionId and is associated with an Order through its orderId.
The transactionType field identifies the type of operation:
| Transaction type | Description |
|---|---|
payment | A payment operation. |
refund | A refund operation. |
rdr | A Rapid Dispute Resolution operation. |
retrieval | A retrieval operation. |
chargeback | A chargeback operation. |
The transactionStatus field indicates the current status of a Transaction. The documented values are:
| Transaction status | Description |
|---|---|
in_process | The Transaction is being processed. |
success | The Transaction was successfully processed. |
failed | The Transaction failed. |
waiting_user_interaction | The Transaction is waiting for an interaction from the user, for example during an asynchronous or 3DS payment flow. |
For payment transactions, the response can also contain information about the payment method, payment provider, authorization, 3DS processing, and other details related to the operation.
For the complete list of Payment fields, data types, allowed values, and request/response availability, see the Payment fields reference.
How Orders and Transactions work together
The Order provides the information associated with the operation, while the Transaction represents the operation performed using that information.
A typical payment flow can be understood as:
- The merchant provides the information required to create an Order.
- Revup processes the operation associated with the Order.
- A Transaction is created and associated with the Order through its
orderId. - The Transaction receives a
transactionStatusindicating its current state or result. - The
transactionTypeidentifies the type of operation represented by the Transaction.
For example, a payment can be represented by a Transaction with:
transactionType: payment
If a refund is subsequently performed, the refund is represented as a Transaction with:
transactionType: refund
This means that the type of operation is represented by the Transaction rather than by changing the original Transaction from one type to another.
Related transactions
Some operations can reference a previous Transaction.
The parentTransactionId field contains the unique identifier of a referenced Transaction. It is used in payment flows where the merchant initiates the payment and the consumer is not present, such as certain recurring or merchant-initiated payments.
This allows related operations to be associated with the Transaction that preceded them.
Payment information
Payment-specific information is returned as part of the Transaction response.
For example, a payment response can include:
paymentMethod— the method used to process the payment.transactionId— the unique identifier of the Transaction.transactionStatus— the current status of the Transaction.transactionType— the type of operation.orderId— the Order associated with the Transaction.tokenId— the token identifier when a token has been generated.mid— information about the merchant and payment provider used to process the payment.
The complete list of available fields is documented in the Payment fields reference.
Summary
The relationship between Orders and Transactions can be summarized as:
An Order provides the information associated with an operation, while a Transaction represents the operation itself and its current status.
The orderId, transactionId, transactionType, and transactionStatus fields allow merchants to identify and track the operation throughout its lifecycle.
For the complete list of fields and allowed values, see the Field appendix.