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

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
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
amount
number
required

Amount of the transaction.

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
fee
object

Contains details about the fee.

gpa
object

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

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.

card
object

Contains information about the card used in the transaction.

fees
object[]

List of fees associated with the transaction.

This array is returned if it exists in the resource.

flex
object

Contains information about a Flexible Credential transaction.

user
object

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

fraud
object

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

store
object
billpay
object
dispute
object

Contains information about a disputed transaction.

network
string

Indicates which card network was used to complete the transactions.

program
object

Information about the program on the Marqeta platform.

accounts
object[]
acquirer
object

Contains information about the merchant's financial institution.

business
object

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

duration
integer<int32>

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

merchant
object
polarity
enum<string>

Indicates whether the transaction is credit or debit.

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

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

sub_type
string
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.

bin_prefix
string
read-only
Required string length: 8
card_token
string

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

Maximum string length: 36
chargeback
object

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

fleet_data
object

Contains details about fleet program transactions.

identifier
string

Sequential identifier of the transaction.

standin_by
string

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

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.

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
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.

batch_number
string

The batch number of the transaction.

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.

fee_transfer
object

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

from_account
string

Specifies the funding account type.

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
account_owner
object

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

approval_code
string

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

card_acceptor
object

Contains information about the merchant.

currency_code
string

Currency type of the transaction.

issuer_script
object
peer_transfer
object

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

visa_pop_code
string
business_token
string

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

Maximum string length: 36
direct_deposit
object

Contains information about a direct deposit.

request_amount
number

Merchant-requested amount, including any fees.

standin_reason
string

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

account_funding
object

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

atc_information
object
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.

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.

vdcap_qualified
boolean
cash_back_amount
number

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

cashloads_direct
object
gpa_order_unload
object

Contains information about a GPA unload order.

installment_data
object

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

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

program_transfer
object

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

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.

card_holder_model
object

Contains information about a cardholder.

cardholder_impact
boolean
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.

advice_reason_code
string

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

anticipated_amount
number

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

card_product_token
string

Unique identifier of the card product.

Maximum string length: 36
from_account_token
string
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.

bank_transfer_token
string
currency_conversion
object

Contains information about currency conversion.

enhanced_data_token
string

The enhanced commercial card data token for the transaction.

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.

issuer_payment_node
string

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

payment_facilitator
object

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

real_time_fee_group
object

Contains information about a real-time fee group.

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.

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.

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.

issuer_received_time
string

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

network_reference_id
string

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

reconciliation_cycle
string
settlement_indicator
string

Indicates the settlement service used for the transaction.

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.

acquirer_reference_id
string

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

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.

preceding_transaction
object

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

Contains information about the preceding transaction.

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.

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.

transaction_attributes
object

Additional transaction attributes.

acquirer_reference_data
string

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

cardholder_verification
object
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.

authorization_expiration
string<date-time>
deferred_settlement_days
string
original_settlement_date
string<date-time>
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.

issuer_interchange_amount
number

The amount of interchange charged by the card issuer.

velocity_control_balances
object
original_transaction_token
string

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

interchange_rate_descriptor
string
national_net_cpd_of_original
string
program_reserve_deposit_info
object
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.

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.
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.

strong_customer_authentication
object

Strong Customer Authentication information for contactless transactions

card_security_code_verification
object

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

clearing_record_sequence_number
string

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

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.

relay_resistance_protocol_result
string

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>>.

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.

original_interchange_rate_descriptor
string
digital_commerce_solutions_indicators
object
digital_commerce_authentication_program
object
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
original_network_transaction_lifecycle_id
string
incremental_authorization_transaction_tokens
string[]

An array of incremental authorization transaction tokens.

digital_wallet_token_transaction_service_provider_info
object