Transaction Fields
A reference of all fields available on a transaction object. Fields are grouped by category.
Core
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the transaction. |
state | string | Current state of the transaction. One of: SUCCEEDED, FAILED, TIMEOUT, CANCELLED, ABORTED, REJECTED, ERROR. |
scheme | string | Payment scheme the transaction was processed on (e.g. Visa, Mastercard). |
protocolversion | string | Protocol Version used for this transaction (e.g. 2.1.0, 2.2.0). |
category | string | Transaction Category. One of: PAYMENT, NON_PAYMENT. |
transactiontype | string | Transaction Type being processed (e.g. payment, wallet tokenisation, account creation). |
devicechannel | string | Device Channel used to initiate the transaction. One of: APP, BROWSER, REQUESTOR_INITIATED. |
language | string | Language used for the Challenge Interface. |
Card & Account
| Field | Type | Description |
|---|---|---|
cardid | string | Unique identifier for the card in Apata. |
financialinstitutionid | string | Identifier of the Financial Institution the card belongs to. |
cardexternalid | string | External reference for the card provided by the issuer via Card Link or Enrolment. |
cardprogramid | string | Identifier of the Card Program the card was routed through. |
bin | string | BIN of the card. |
cardtype | string | The type of the card e.g. default, corporate. Certain card types like corporate cards can be exempted from Challenge Flow |
isnetworktoken | boolean | Whether the PAN used is a network token rather than the actual card number. |
accounttype | string | Indicates the type of account. For example, debit or credit. |
issuingcountry | string | Country of the issuing institution. |
card_lookup_method | string | How the card details were resolved. See Card Link Storage Mode. One of: CARD_LINK, CARD_LINK_BACKUP, SYSTEM_STORE, UNKNOWN. |
Authentication Outcome
| Field | Type | Description |
|---|---|---|
waschallenged | boolean | Whether the cardholder was presented with a Challenge. |
wasfrictionless | boolean | Whether the transaction was approved as a Frictionless Transaction. |
waspresentedchoice | boolean | Whether the cardholder was shown a choice of Challenge Methods. |
didmakechoice | boolean | Whether the cardholder selected a challenge method from the choice screen. |
didwhitelist | boolean | Whether the cardholder added the merchant to their Whitelist during the challenge. |
exemption | string | Exemption type applied to the transaction (e.g. Low Value Payment, Recurring Payment). |
eci | string | ECI value reported to the acquirer. |
authmethods | array | Authentication methods used during the transaction (e.g. SMS OTP, OOB). |
avcreationkeyid | string | Identifier of the ACS key used to generate the CAVV. |
reason | string | Reason code returned by the ACS for the transaction outcome. |
errorcode | string | Error code when the transaction state is ERROR. |
errordescription | string | Human-readable description of the error. |
Challenge
| Field | Type | Description |
|---|---|---|
challengepreference | string | Challenge Preference indicated by the merchant in the AReq. |
decoupledpreference | string | Whether the merchant requested Decoupled Authentication. |
challengemethods | array | Challenge Methods available for this transaction based on the Challenge Profile. |
completedchallengemethods | array | Challenge Methods the cardholder successfully completed. |
challenges | array | All challenges that are associated with the transaction. |
Risk
| Field | Type | Description |
|---|---|---|
riskprofileid | string | Identifier of the Risk Profile used to evaluate the transaction. |
riskprofileversion | integer | Version of the Risk Profile at the time of evaluation. |
riskprofileevalreason | string | The reason indicates the outcome of the risk profile evaluation (e.g., CHALLENGE_PREFERENCE, APATA_DEFAULT_ACTION, CONCURRENT_AREQ_FOR_CARD, NO_RULES). |
riskruleid | string | Identifier of the Risk Rule that determined the final outcome. |
riskruletype | string | Type of the Risk Rule that determined the outcome. One of: Simple Rule, Conditional Rule, Low-Risk Rule. |
riskenginerecommendation | string | Recommendation returned by an External Risk Engine, if used. |
fraudstate | string | Whether the transaction has been reported as fraudulent. See Fraud Reporting. One of: FRAUD, NOT_FRAUD. |
Merchant & Acquirer
| Field | Type | Description |
|---|---|---|
merchantid | string | Acquirer-assigned merchant identifier. |
merchantname | string | Merchant name as provided by the Acquirer. |
merchantcountry | string | Country where the merchant is located. |
mcc | string | MCC describing the merchant's type of business. |
acquirerbin | string | BIN of the Acquirer. |
threedsrequestorid | string | Unique identifier assigned by the DS to the 3DS Requestor. |
threedsrequestorname | string | Name of the 3DS Requestor. |
threedsrequestorurl | string | URL of the 3DS Requestor. |
threedsserverreferencenumber | string | Reference number assigned to the 3DS Server by EMVCo. |
threedsserveroperatorid | string | Operator ID assigned to the 3DS Server by the DS. |
Transaction IDs
| Field | Type | Description |
|---|---|---|
dstransactionid | string | Transaction ID assigned by the DS. |
threedsservertransactionid | string | Transaction ID assigned by the 3DS Server. |
sdktransactionid | string | Transaction ID generated by the 3DS SDK. Only present for App Channel transactions. |
sdkappid | string | 3DS SDK application identifier. Only present for App Channel transactions. |
Purchase
| Field | Type | Description |
|---|---|---|
purchaseamount | integer | Transaction amount in the original currency, expressed in minor units. |
purchasecurrency | string | Purchase currency in ISO 4217 Alpha3 format. |
purchasetimestamp | datetime | Timestamp of the purchase. |
purchaseamountineuro | integer | Transaction amount converted to EUR in minor units. |
purchaseamountinusd | integer | Transaction amount converted to USD in minor units. |
purchaseamountingbp | integer | Transaction amount converted to GBP in minor units. |
exchangerate | number | Exchange rate used to convert the purchase amount to EUR. |
exchangeratetimestamp | datetime | Timestamp of the exchange rate used. |
exchangerateusd | number | Exchange rate used to convert the purchase amount to USD. |
exchangerategbp | number | Exchange rate used to convert the purchase amount to GBP. |
installments | integer | Maximum number of authorisations permitted for instalment payments. |
recurfrequency | integer | Minimum number of days between authorisations for Recurring Payment transactions. |
recurexpiry | string | Expiry date after which no further recurring authorisations should be performed. |
Cardholder
| Field | Type | Description |
|---|---|---|
emailhash | string | SHA-256 hash of the cardholder's email address. |
mobilephonehash | string | SHA-256 hash of the cardholder's mobile phone number. |
homephonehash | string | SHA-256 hash of the cardholder's home phone number. |
workphonehash | string | SHA-256 hash of the cardholder's work phone number. |
cardholdernamehash | string | SHA-256 hash of the cardholder's name. |
billaddresscity | string | Billing address city. |
billaddressstate | string | Billing address state or region. |
billaddresscountry | string | Billing address country. |
shipaddresscity | string | Shipping address city. |
shipaddressstate | string | Shipping address state or region. |
shipaddresscountry | string | Shipping address country. |
addressesmatch | boolean | Whether the billing and shipping addresses are the same. |
Device
| Field | Type | Description |
|---|---|---|
deviceplatform | string | |
devicemodel | string | Model of the device. |
deviceos | string | Operating system of the device. |
deviceosversion | string | Operating system version. |
devicelocale | string | Locale setting of the device. |
devicetimezone | string | Timezone of the device. |
deviceadvertisingid | string | Advertising ID of the device. |
devicescreenheight | integer | Screen height of the device in pixels. |
devicescreenwidth | integer | Screen width of the device in pixels. |
devicename | string | Name of the device. |
deviceip | string | IP address of the device that initiated the transaction. |
devicelatitude | number | Latitude from the device's geolocation. |
devicelongitude | number | Longitude from the device's geolocation. |
devicecountry | string | Country determined from the device IP address or geolocation. |
devicelanguage | string | Language setting of the device. |
Browser
| Field | Type | Description |
|---|---|---|
browseracceptheader | string | HTTP Accept header from the cardholder's browser. |
browserjavaenabled | boolean | Whether Java is enabled in the cardholder's browser. |
browserjavascriptenabled | boolean | Whether JavaScript is enabled in the cardholder's browser. |
browsercolourdepth | integer | Colour depth of the browser screen in bits. |
browserutcoffsetminutes | integer | UTC offset of the browser's timezone in minutes. |
browseruseragent | string | User agent string of the cardholder's browser. |
3DS Protocol
| Field | Type | Description |
|---|---|---|
redacted_areq | object | The AReq message sent for this transaction with sensitive fields (PAN and cardholder name) removed. |
Updated about 1 month ago