Skip to main content

Transactions are represented by the transaction object. The Marqeta platform creates a separate transaction object for each transaction message received from the card network. The attributes of a given transaction object depend on the transaction type.

This section documents all fields that might be included in a transaction object.

// This schema is used by InfoDev to generate API reference documentation. // File location in GitHub is: openapi/transactions/schemas/transaction_model.yaml

acting_user_token
string
required

Unique identifier of the user who conducted the transaction. This might be a child user configured to share its parent's account balance.

Maximum string length: 36
amount
number
required

Amount of the transaction.

state
enum<string>
required

Current state of the transaction. For more information about the state field, see <</developer-guides/about-transactions#_the_transaction_lifecycle, The transaction lifecycle>>.

Available options:
PENDING,
CLEARED,
COMPLETION,
DECLINED,
ERROR
token
string
required
read-only

Unique identifier of the transaction, formatted as a UUID.

NOTE: For subsequent related transactions, this token value appears as the preceding_related_transaction_token.

Required string length: 1 - 36
type
enum<string>
required

Transaction event type. For more information about the type field, see <</core-api/event-types#_transaction_events, Transaction events>>.

Available options:
gpa.credit,
gpa.credit.pending,
gpa.credit.pending.reversal,
gpa.credit.reversal,
gpa.credit.networkload,
gpa.credit.networkload.reversal,
gpa.debit.networkload,
gpa.debit,
gpa.debit.pending,
gpa.debit.pending.reversal,
gpa.grant,
gpa.credit.issueroperator,
gpa.debit.issueroperator,
gpa.credit.chargeback,
gpa.credit.chargeback.reversal,
gpa.credit.billpayment,
gpa.credit.authorization.billpayment,
gpa.credit.authorization.billpayment.reversal,
authorization,
authorization.advice,
authorization.reversal,
authorization.clearing,
authorization.reversal.issuerexpiration,
dispute.credit,
dispute.debit,
authorization.clearing.chargeback,
authorization.clearing.chargeback.reversal,
refund,
pindebit.atm.withdrawal,
pindebit.balanceinquiry,
pindebit.cashback,
pindebit.checkavs,
pindebit,
programreserve.credit,
programreserve.debit,
fee.charge.pending,
fee.charge,
fee.charge.refund,
fee.charge.reversal,
fee.charge.waived,
fee.collection.debit,
fee.collection.credit,
funds.expire,
reward.earn,
transfer.peer,
transfer.fee,
account.funding.authorization,
account.funding.authorization.reversal,
account.funding.authorization.clearing,
account.funding.auth_plus_capture,
account.funding.auth_plus_capture.reversal,
account.credit,
account.debit,
balanceinquiry,
authorization.atm.withdrawal,
authorization.pin.change,
authorization.pin.unblock,
authorization.clearing.atm.withdrawal,
authorization.cashback,
authorization.clearing.cashback,
transfer.program,
authorization.quasi.cash,
authorization.clearing.quasi.cash,
authorization.incremental,
gpa.credit.authorization,
gpa.credit.authorization.reversal,
gpa.debit.authorization,
gpa.debit.reversal,
original.credit.authorization,
original.credit.authorization.reversal,
original.credit.authorization.clearing,
original.credit.auth_plus_capture,
original.credit.auth_plus_capture.reversal,
refund.authorization,
refund.authorization.advice,
refund.authorization.clearing,
refund.authorization.reversal,
token.activation-request,
token.advice,
pindebit.authorization,
pindebit.authorization.clearing,
pindebit.authorization.reversal,
pindebit.authorization.reversal.issuerexpiration,
authorization.standin,
authorization.clearing.chargeback.completed,
authorization.clearing.chargeback.provisional.credit,
authorization.clearing.chargeback.provisional.debit,
authorization.clearing.chargeback.writeoff,
directdeposit.credit,
directdeposit.credit.pending,
directdeposit.credit.reject,
directdeposit.credit.pending.reversal,
directdeposit.credit.reversal,
directdeposit.debit,
directdeposit.debit.pending,
directdeposit.debit.reject,
directdeposit.debit.reversal,
pin.change.reversal,
pin.change.reversal.advice,
directdeposit.debit.pending.reversal,
pindebit.chargeback,
pindebit.chargeback.completed,
pindebit.chargeback.provisional.credit,
pindebit.chargeback.provisional.debit,
pindebit.chargeback.reversal,
pindebit.chargeback.writeoff,
pindebit.pin.change,
pindebit.pin.unblock,
pindebit.credit.adjustment,
pindebit.debit.adjustment,
pindebit.quasi.cash,
pindebit.refund,
pindebit.refund.reversal,
pindebit.reversal,
pindebit.transfer,
pin.change.via.api,
product.inquiry,
transit.offer,
transfer.from.checking.hold,
transfer.from.checking.clear,
transfer.to.checking.open,
transfer.to.checking.clear,
transfer.to.savings.open,
transfer.to.savings.clear,
transfer.from.savings.hold,
transfer.from.savings.clear,
fps.debit.hold,
fps.debit.clear,
fps.debit.hold.reverse,
fps.debit.clear.reverse,
fps.credit.open,
fps.credit.clear,
fps.credit.open.reverse,
fps.credit.clear.reverse,
open.banking.fps.debit.hold,
open.banking.fps.debit.clear,
open.banking.fps.debit.hold.reverse,
open.banking.fps.debit.clear.reverse,
interest.posting.clear,
interest.posting.clear.reverse,
interest.posting.adjustment,
chaps.credit.open,
chaps.credit.open.reverse,
chaps.credit.clear,
chaps.credit.clear.reverse,
bacs.credit.open,
bacs.credit.open.reverse,
bacs.credit.clear,
bacs.credit.clear.reverse,
unknown
account_funding
object

Contains details about account funding transactions. Account funding transactions move money into a cardholder's general purpose account (GPA).

account_name_verification
object

Contains name verification data: the full name entered by the cardholder, name data held by the Marqeta platform, and an assertion by the Marqeta platform as to whether the two sets of data match.

account_owner
object

Information about the owner of an account participating in an account funding or original credit transaction.

accounts
object[]
acquirer
object

Contains information about the merchant's financial institution.

acquirer_fee_amount
number

Indicates the amount of the acquirer fee. Account holders are sometimes charged an acquirer fee for card use at ATMs, fuel dispensers, and so on.

acquirer_reference_data
string

Acquirer-assigned unique identifier of the transaction. Useful for settlement and reconciliation.

acquirer_reference_id
string

Acquirer-assigned unique identifier of the transaction. Useful for settlement and reconciliation.

address_verification
object

Contains address verification data consisting of address data entered by the cardholder, address data held by the Marqeta platform, and an assertion by the Marqeta platform as to whether the two sets of data match.

advice_reason_code
string

Extended stand-in processing (STIP) reason code, as provided by the card network.

advice_reason_details
string

Extended stand-in processing (STIP) reason details, as provided by the card network.

amount_to_be_released
number

Amount of original authorization to be released. This field appears in final clearing transactions where the clearing amount is lower than the authorization amount.

anticipated_amount
number

Anticipated amount of the transaction, as provided by the card network. This field applies to anticipated amount verification transactions (AAVTs).

approval_code
string

Unique identifier assigned to an authorization, printed on the receipt at point of sale.

atc_information
object
authorization_expiration
string<date-time>
auto_reload
object

Contains information about an auto reload. See <</core-api/auto-reload, Auto Reloads>> for more information.

Returned if an auto reload was executed.

bank_transfer_token
string
batch_number
string

The batch number of the transaction.

billpay
object
bin_prefix
string
read-only
Required string length: 8
business
object

Contains customer-provided information about the business that funded the transaction.

business_token
string

Unique identifier of the business that owns the account that funded the transaction.

Maximum string length: 36
card
object

Contains information about the card used in the transaction.

card_acceptor
object

Contains information about the merchant.

card_holder_model
object

Contains information about a cardholder.

card_product_token
string

Unique identifier of the card product.

Maximum string length: 36
card_security_code_verification
object

Contains information about a verification check performed on the card's security code.

card_token
string

Unique identifier of the card. Useful when a single account holder has multiple cards.

Maximum string length: 36
cardholder_authentication_data
object

Contains authentication data for 3D Secure and digital wallet token transactions:

  • electronic_commerce_indicator – The level of verification performed.
  • verification_result – The result of the verification.
  • verification_value_created_by – The transaction participant who determined the verification result.
  • three_ds_message_version – The 3D Secure message version used for authentication.
  • authentication_method – The 3D Secure authentication method.
  • authentication_status – The 3D Secure authentication status.
  • acquirer_exemption – Indicates a 3D Secure authentication exemption from the acquirer.
  • issuer_exemption – Indicates a 3D Secure authentication exemption from the issuer.
  • cavv_authentication_amount – CAVV authentication amount.
  • raw_cavv_data – Raw CAVV data provided by the card network.
cardholder_impact
boolean
cardholder_verification
object
cash_back_amount
number

Amount of cash back requested by the cardholder during the transaction. Included in the total transaction amount.

cashloads_direct
object
chargeback
object

Contains the chargeback object associated with this transaction if a chargeback has been initiated.

clearing_record_sequence_number
string

A sequence number that identifies a specific clearing message among multiple clearing messages for an authorization.

created_time
string<date-time>

Date and time when the Marqeta platform created the transaction entry, in UTC format. For example, when Marqeta processed the clearing record for a refund.

currency_code
string

Currency type of the transaction.

currency_conversion
object

Contains information about currency conversion.

deferred_settlement_days
string
digital_commerce_authentication_indicator
string

Visa Digital Commerce Authentication Program (VDCAP) indicator for U.S. domestic card-not-present transactions. Indicates the presence of key data elements, along with the eligible method used to share authentication data.

  • 02: Visa Secure
  • 03: Visa data only
  • 04: Visa Payment Passkey with Visa Secure
  • 05: Visa Payment Passkey with Visa Token Service
  • 06: IDX 3rd party
  • 07: Visa Token Service data only
digital_commerce_authentication_program
object
digital_wallet_token
object

Contains information about the digital wallet that funded the transaction.

Returned for all transactions funded by a digital wallet or related to digital wallet token provisioning.

For more on digital wallets, see the <</core-api/digital-wallets-management, Digital Wallets Management>> API reference and <</developer-guides/digital-wallets-and-tokenization, Digital Wallets and Tokenization>> developer guide.

digital_wallet_token_transaction_service_provider_info
object
direct_deposit
object

Contains information about a direct deposit.

dispute
object

Contains information about a disputed transaction.

duration
integer<int32>

Duration of the transaction on Marqeta's servers, in milliseconds.

enhanced_data_token
string

The enhanced commercial card data token for the transaction.

estimated_authorization
boolean

Indicates an estimated authorization. An estimated authorization allows the merchant to obtain an approval for funds before the cardholder has finalized exactly what goods or services will be purchased.

fee
object

Contains details about the fee.

fee_transfer
object

Contains information about a fee charge, including the amount, currency code, and user or business token.

fees
object[]

List of fees associated with the transaction.

This array is returned if it exists in the resource.

fleet_data
object

Contains details about fleet program transactions.

flex
object

Contains information about a Flexible Credential transaction.

fraud
object

Contains one or more fraud determinations by the card network that apply to either the transaction or the cardholder's account.

from_account
string

Specifies the funding account type.

from_account_token
string
gpa
object

Returns general purpose account (GPA) balances for a user or business.

gpa_order
object

Contains information about a GPA order, including fees, funding sources, and addresses. See <</core-api/gpa-orders, GPA Orders>> for more information.

gpa_order_unload
object

Contains information about a GPA unload order.

identifier
string

Sequential identifier of the transaction.

incremental_authorization_transaction_tokens
string[]

An array of incremental authorization transaction tokens.

installment_data
object

Contains the installment plan identifier used by the Visa Transaction Matching Service for Issuers.

interchange_rate_descriptor
string
is_final_clearing
boolean

Indicates the final clearing event for an authorization. If the final cleared amount is lower than the authorized amount, you must release the hold on the funds per the value in the amount_to_be_released field.

is_offline_approved
string

Indicates that the card and terminal approved the transaction offline locally, without real-time issuer approval. Included only on transactions approved offline; omitted for all other transactions.

is_preauthorization
boolean
default:false

Indicates if the transaction is a pre-authorization.

isaIndicator
enum<string>

The international service assessment indicator indicates if an ISA fee is applicable to the transaction.

Available options:
MULTI_CURRENCY,
SINGLE_CURRENCY,
REBATE_CANCELLED,
MULTI_CURRENCY_NON_US_COUNTRIES,
SINGLE_CURRENCY_PAID_BY_ISSUER,
NO_CHARGE_ASSESSED
issuer_interchange_amount
number

The amount of interchange charged by the card issuer.

issuer_payment_node
string

Unique identifier of the Marqeta platform server that received the transaction from the card network.

issuer_received_time
string

Date and time when the Marqeta platform received the transaction from the card network, in UTC.

local_transaction_date
string<date-time>

Indicates the local time of the transaction at the card acceptor's location. You can use this field to determine the correct time of the transaction when filing a dispute.

merchant
object
merchant_initiated_original_trace_id
string

Unique network identification value formed by combining the 6- to 9-character Mastercard Banknet Reference Number and the 4-digit settlement date for recurring payments and other merchant-initiated transactions.

multi_clearing_sequence_count
string

If an authorization has multiple clearing transactions, this field displays their total number. For example, if an authorization has four clearing transactions, the sequence count is 04.

multi_clearing_sequence_number
string

If an authorization has multiple clearing transactions, this field displays the sequence number for the clearing transaction. For example, if this is the second clearing transaction of four, the sequence number is 02.

national_net_cpd_of_original
string
network
string

Indicates which card network was used to complete the transactions.

network_metadata
object

Contains network-related metadata for the transaction, including details about the card program and the card product. Returned if provided by the card network

network_reference_id
string

Network-assigned unique identifier of the transaction. Useful for settlement and reconciliation.

network_transaction_lifecycle_id
string

Transaction identifier, as provided by the card network. This identifier connects the original transaction to all subsequent activities throughout the transaction lifecycle.

original_credit
object

Contains information about an original credit transaction (OCT), which enables the cardholder to receive funds on the specified card from an external source via the card network.

original_interchange_rate_descriptor
string
original_network_transaction_lifecycle_id
string
original_settlement_date
string<date-time>
original_transaction_token
string

Unique identifier of the original transaction in a series of related transactions.

payment_facilitator
object

Information about the payment facilitator of an account funding or original credit transaction.

peer_transfer
object

Contains information about an intra-account transfer, including sender and recipient tokens, transfer amount, and currency code.

polarity
enum<string>

Indicates whether the transaction is credit or debit.

Available options:
CREDIT,
DEBIT,
PENDING_CREDIT,
PENDING_DEBIT
pos
object

Contains information about the point of sale, including details on how the card was presented.

Returned if provided by the card network, and the request uses Transaction Model v2 of the Marqeta Core API. Not returned for Transaction Model v1 requests.

Returned for final transaction types.

Unique identifier of the preceding related transaction. Useful for identifying the transaction that preceded the current one.

For example, authorization, a temporary transaction type, precedes and is completed by authorization.clearing, a final transaction type. In this case, the authorization token is returned with this field. For which transaction types are temporary or final, see <</core-api/event-types#_transaction_events, Transaction events in Event Types>>.

preceding_transaction
object

Returned for authorization.clearing transaction types following a financial advice.

Contains information about the preceding transaction.

program
object

Information about the program on the Marqeta platform.

program_reserve_deposit_info
object
program_transfer
object

Contains information about a program transfer, which moves funds from an account holder's GPA to a program funding source.

real_time_fee_group
object

Contains information about a real-time fee group.

reconciliation_cycle
string
relay_resistance_protocol_result
string
request_amount
number

Merchant-requested amount, including any fees.

response
object

Response codes and memos for account name verification, address verification, card security verification, and transactions.

settlement_date
string<date-time>

Date and time when funds were moved for a transaction, in UTC. For example, in the case of a refund, when funds were credited to the cardholder.

settlement_indicator
string

Indicates the settlement service used for the transaction.

standin_approved_by
string

Indicates which party approved a transaction: the card network using stand-in processing, or Marqeta using Commando Mode. Returned only when a transaction is approved.

standin_by
string

Indicates which party approved a transaction: the card network using stand-in processing, or Marqeta using Commando Mode.

standin_reason
string

Indicates why the card network handled a transaction requiring stand-in processing.

stop_order_token
string

Token of the ACTIVE stop order that caused this recurring transaction to be declined. Present only on transactions declined for a cardholder stop-payment request (response code 1949); absent otherwise.

store
object
strong_customer_authentication
object

Strong Customer Authentication information for contactless transactions

sub_type
string
subnetwork
string

Indicates which subnetwork was used to complete the transaction. Possible values include the following:

  • VISANET – Used for VisaNet signature-based transactions.
  • VISANETDEBIT – Used for VisaNet Debit PIN-based transaction.
  • VISAINTERLINK – Used for Visa Interlink PIN-based transactions.
  • VISAPLUS – Used for ATM withdrawals on Visa.
  • MAESTRO – Used for PIN-based transactions on Mastercard.
  • CIRRUS – Used for ATM withdrawals on Mastercard.
  • MASTERCARDDEBIT – Used for signature-based transactions on Mastercard.
  • GATEWAY_JIT – Used for Gateway JIT Funding transactions.
  • MANAGED_JIT – Used for Managed JIT Funding transactions or for transactions that occur while Commando Mode is enabled.
to_account
string

Specifies the receiving account type.

transaction_attributes
object

Additional transaction attributes.

transaction_metadata
object

Contains merchant-provided metadata related to the transaction, including details about lodging- and transit-related purchases.

May be returned if the request uses Transaction Model v2 of the Marqeta Core API. Not returned for Transaction Model v1 requests.

user
object

Contains customer-provided information about the cardholder that performed the transaction.

user_token
string

Unique identifier of the user who owns the account that funded the transaction; subsequent related transactions retain the same user_token, even if the card used to complete the transaction moves to another user.

Maximum string length: 36
user_transaction_time
string<date-time>

Date and time when the user initiated the transaction, in UTC. For example, when a merchant performed the original authorization for a refund.

vdcap_qualified
boolean
velocity_control_balances
object
visa_pop_code
string