Transaction Data for JIT Funding Decisions
If you have enabled Gateway Just-in-Time (JIT) Funding for your program, the Marqeta platform sends funding requests to your system for each transaction. Some transaction types, such as authorizations, are actionable, meaning your system must respond programmatically to the request and approve or deny the funding. Other transaction types, such as refunds or reversals, are informative only, meaning your system receives a funding notification but does not need to send a response.
To aid in your system’s decisioning process, the Marqeta platform includes data in the request about the transaction being funded. This data describes aspects of the transaction that indicate to your system whether it is advisable to approve or deny the funding request.
The message sent to your JIT Funding gateway endpoint includes the following key objects for decisioning:
-
jit_funding
-
fraud
-
cardholder_authentication_data
-
card_security_code_verification
-
transaction_metadata
In addition to your system’s programmatic responses to JIT Funding requests, you can configure the following restrictions for your program on the Marqeta platform:
-
Spend controls — Limits when, where, and how much a user can spend with their card. For more information, see Controlling Spending.
-
Address Verification System (AVS) — Verifies that the address provided by the cardholder matches the address on file. For more information, see About Address Verification.
The Marqeta platform processes these restrictions before sending a JIT Funding request to your gateway endpoint.
JIT Funding
Copy section link
The jit_funding
object contains information about the funding event, including the associated user token and transaction amount.
The method
field indicates the type of transaction and whether the message is an actionable funding request sent to your gateway endpoint or an informative message sent to your webhook endpoint.
Actionable transaction types
Copy section link
Your system must programmatically approve or deny JIT Funding requests for the following types of transactions:
-
pgfs.authorization
-
pgfs.authorization.incremental
-
pgfs.auth_plus_capture
-
pgfs.billpayment
-
pgfs.billpayment.capture
For more information about the jit_funding
object, as well as the differences between actionable and informative transaction types, see Gateway JIT Funding Messages.
Fraud
Copy section link
The fraud
object contains fraud-related data elements from the card network and the Marqeta platform when Real-Time Decisioning (Beta) is enabled.
Fraud data elements from the card network can include the following fields:
Fields | Description |
---|---|
transaction_risk_score
integer
|
(Visa and Mastercard) Transaction fraud risk score calculated by the card network; a higher score indicates higher risk. Allowable Values: 1-99 |
account_risk_score
string
|
(Visa only) Account holder risk condition code evaluated by the card network; a higher score indicates a greater likelihood that the card number is compromised. Allowable Values: 1-9 |
transaction_risk_score_reason_code
string
|
(Mastercard only) Unique code that describes the main driver of the Allowable Values: 1-29 |
transaction_risk_score_reason_description
string
|
(Mastercard only) Description of the Allowable Values: Various strings |
Fraud data elements from the Marqeta platform can include the following fields:
Fields | Description |
---|---|
score
integer
|
Transaction risk score calculated by Marqeta; a higher score indicates higher risk. Allowable Values: 1-99 |
risk_level
string
|
Estimate of the risk level of the transaction, based on the Marqeta risk score. Allowable Values:
|
recommended_action
string
|
Flags transactions based on the rules defined for the program within Real-Time Decisioning (Beta).
When a rule is triggered, the value is Allowable Values:
|
rule_violations
array
|
Real-Time Decisioning (Beta) rules that were flagged at transaction time. Allowable Values: Array of strings |
The following code block shows a sample fraud
object as it would appear in a JIT Funding request:
Cardholder authentication data
Copy section link
The cardholder_authentication_data
object contains information about additional authentication performed for e-commerce transactions.
For example, a transaction participant (such as the card network) can request additional verification during the transaction process, such as the cardholder’s name or date of birth.
Fields | Description |
---|---|
acquirer_exemption
array of strings
|
Indicates 3D Secure authentication exemptions from the acquirer. This array is returned if it is included in the transaction data from the card network. Allowable Values:
|
authentication_method
string
|
Specifies the 3D Secure authentication method. Allowable Values: null,
|
authentication_status
string
|
Specifies the status of the 3D Secure authentication. Allowable Values:
|
electronic_commerce_indicator
string
|
Status of the verification attempt, as provided by a transaction participant. Allowable Values:
|
three_ds_message_version
string
|
Specifies the 3D Secure message version used for authentication. Allowable Values:
|
verification_result
string
|
Result of the verification attempt, as provided by a transaction participant. Allowable Values:
|
verification_value_created_by
string
|
Transaction participant who determined the verification result. Allowable Values:
|
The following code block shows a sample cardholder_authentication_data
object as it would appear in a JIT Funding request:
Card security code verification
Copy section link
The card_security_code_verification
object contains information about a verification check performed on the card’s security code.
The type
field indicates the type of security code and can have the following possible values:
-
CVV1 – The security code stored in the magnetic stripe on the card.
-
CVV2 – The security code printed on the card.
-
ICVV – The security code stored on the chip of the card.
-
DCVV – A dynamic security code used in some contactless payments when a card or device is tapped on the card reader.
The response.code
field indicates whether the verification check passed and can have one of the following values:
-
0000 – Passed
-
0001 – Did not pass
Fields | Description |
---|---|
type
string
|
Type of security code verified. Allowable Values:
|
response.code
string
|
Indicates whether the verification check passed. Allowable Values: 0000, 0001 |
response.memo
string
|
Free-form description of the verification result, as provided by a transaction participant. Allowable Values: 99 char max |
The following code block shows a sample card_security_code_verification
object as it would appear in a JIT Funding request:
Transaction metadata
Copy section link
The transaction_metadata
object contains additional merchant-provided details about a transaction.
It also includes sub-objects for more detailed information about transit and air travel purchases.
Note
Transaction metadata is only included when provided by the merchant.Fields | Description |
---|---|
transaction_category
string
|
Type of product or service being purchased, if provided by the merchant. Allowable Values:
|
authorization_life_cycle
integer
|
Number of days until pre-authorization expires, if provided by the merchant. Allowable Values: |
lodging_auto_rental_start_date
date
|
Pick-up date for an auto rental, or check-in date for lodging, if provided by the merchant. Allowable Values: |
The transaction_metadata.transit
sub-object can contain the following fields related to transportation other than air travel:
Fields | Description |
---|---|
transaction_type
string
|
Type of transit transaction performed, if provided by the merchant. Allowable Values:
|
transportation_mode
string
|
Mode of transportation purchased, if provided by the merchant. Allowable Values:
|
The transaction_metadata.airline
sub-object can contain the following fields related to air travel:
Fields | Description |
---|---|
passenger_name
string
|
Name of passenger for air travel, if provided by the merchant. Allowable Values: Format: forename surname |
depart_date
date
|
Date of departure for air travel, if provided by the merchant. Allowable Values: Format: dd/mm/yyyy |
origination_city
string
|
Three-letter airport code for the city of departure, if provided by the merchant. Allowable Values: Format: SFO |
The following code block shows a sample of the transaction_metadata
object as it would appear in a JIT Funding request: