Verifone · Schema
EcomResponseCard
EcomResponseCard from Verifone eCommerce API
PaymentsPOSTerminal ManagementeCommerceFinTechPayment ProcessingOmnichannel
Properties
| Name | Type | Description | ||
|---|---|---|---|---|
| id | string | The ID of the transaction. | ||
| payment_provider_contract | string | The identifier of payment provider contract you want to process the transaction request with. | ||
| amount | integer | Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details. For Account Verification transactions, provide | ||
| blocked | boolean | True if the transaction has been blocked by a ruleset, false otherwise | ||
| created_at | string | The time at which the transaction was created. | ||
| customer | string | The ID of a customer | ||
| merchant_reference | string | A reference specified by the merchant to identify the transaction | ||
| payment_product | string | The payment product corresponding to this transaction | ||
| payment_product_type | string | The name of the processor used for this transaction | ||
| processor_reference | string | Reference identifying the transaction, as provided by the processor. | ||
| processor_details | object | Stores all details specific for the processor of the transaction. | ||
| status | string | The outcome of the payment request. | ||
| status_reason | string | Message provided by the 3rd party service as additional information, when the transaction does not succeed. | ||
| shipping_information | object | |||
| customer_details | object | |||
| arn | string | Acquirer reference number. Generated by the Acquirer at the time of clearing for card transactions. | ||
| authorization_code | string | * When the payment is authorized successfully, this field holds the authorization code for the payment. * When the payment is not authorized, this field is not returned. | ||
| avs_result | string | Address verification services result, which provides information about the outcome of the AVS check. The full list of codes and descriptions can be found card | string | The token representing the payment card |
| created_by | string | The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order | ||
| cvv_present | boolean | True if the card was used with a cvv | ||
| cvv_result | string | The CVC verification result, which provides information about the outcome of the CVC check. CVC-CVV result codes: * `0` Unknown * `1` Matches. * `2` Doesn't match. * `3` Not checked. * `4` No CVC/CVV | ||
| cavv_result | string | This field will be populated for any Verified by Visa transaction and AVV Authorisation message sent by MasterCard SecureCode: This includes CAVV and AEVV from American Express SafeKey. CAVV Transacti | ||
| invoice_number | string | Optional. The invoice number to track this payment. | ||
| stored_credential | object | |||
| details | object | |||
| reason_code | string | A reason code assigned by the acquiring platform; '0000' in case of success | ||
| rrn | string | A client (user friendly) identifier for the transaction generated at the outset of a business event. The format will be dependent on the calling system. A reference supplied by the system retaining th | ||
| shopper_interaction | string | Determines the point of sale of a customer. Possible values: pos, moto, mail_order, telephone_order, ecommerce and cont_auth | ||
| stan | string | System Trace Audit Number. | ||
| threed_authentication | object | |||
| reversal_status | string | Indicates to the API client if a technical reversal has been completed by Verifone. | ||
| geo_location | array | The latitude / longitude resolved from the customer's ip address. | ||
| city | string | The city resolved from the customer's ip address. | ||
| country_code | string | The country code resolved from the customer's ip address. | ||
| additional_data | object | |||
| token_details | object | |||
| promo_code | string | A code defined by the merchant that affects the calculation of the total amount. | ||
| promo_financing_result | object | |||
| purchase_order_number | string | The purchase order number. It can be provided in transactions with purchase or procurement cards for the cardholder to get better interchange rates (note that this functionality needs alignment with t | ||
| issuer_instalment_result | object | |||
| balance_amount | integer | Balance amount is the amount remaining on a card or account of cardholder without a decimal place e.g. $1.5 = 150. The required number of decimal places for a currency code is according to ISO 4217. H |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/api-evangelist/verifone/refs/heads/main/json-schema/ecommerce-api-ecomresponsecard.json",
"title": "EcomResponseCard",
"description": "EcomResponseCard from Verifone eCommerce API",
"type": "object",
"properties": {
"id": {
"type": "string",
"title": "Transaction ID",
"format": "uuid-flexible",
"description": "The ID of the transaction."
},
"payment_provider_contract": {
"type": "string",
"description": "The identifier of payment provider contract you want to process the transaction request with.",
"format": "uuid-flexible"
},
"amount": {
"type": "integer",
"description": "Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details. For Account Verification transactions, provide 0 as value for this field."
},
"blocked": {
"type": "boolean",
"description": "True if the transaction has been blocked by a ruleset, false otherwise"
},
"created_at": {
"type": "string",
"description": "The time at which the transaction was created.",
"format": "date-time"
},
"customer": {
"type": "string",
"description": "The ID of a customer"
},
"merchant_reference": {
"type": "string",
"description": "A reference specified by the merchant to identify the transaction"
},
"payment_product": {
"type": "string",
"description": "The payment product corresponding to this transaction"
},
"payment_product_type": {
"type": "string",
"description": "The name of the processor used for this transaction"
},
"processor_reference": {
"type": "string",
"description": "Reference identifying the transaction, as provided by the processor."
},
"processor_details": {
"type": "object",
"description": "Stores all details specific for the processor of the transaction."
},
"status": {
"type": "string",
"description": "The outcome of the payment request.",
"title": "Ecommerce Transaction Status",
"enum": [
"INITIATED",
"AUTHORIZED",
"AUTHORIZATION_VOIDED",
"CANCELLED",
"CUSTOMER_ACCEPTED",
"REFUNDED",
"FAILED",
"PENDING",
"DECLINED",
"SETTLEMENT_CANCELLED",
"SETTLEMENT_REQUESTED",
"SETTLEMENT_SUBMITTED",
"SETTLEMENT_COMPLETED",
"SETTLEMENT_PARTIAL",
"SETTLEMENT_DECLINED",
"VOIDED",
"UNKNOWN"
]
},
"status_reason": {
"type": "string",
"description": "Message provided by the 3rd party service as additional information, when the transaction does not succeed."
},
"shipping_information": {
"allOf": [
{
"$ref": "#/components/schemas/ShippingInformation"
},
{
"title": "Shipping Address",
"description": "The address where the purchased goods should be delivered to.\n<br><b>Please use customer_details.shipping.</b>",
"deprecated": true
}
]
},
"customer_details": {
"allOf": [
{
"$ref": "#/components/schemas/CustomerDetailsDto"
}
]
},
"arn": {
"type": "string",
"description": "Acquirer reference number. Generated by the Acquirer at the time of clearing for card transactions."
},
"authorization_code": {
"type": "string",
"description": "* When the payment is authorized successfully, this field holds the authorization code for the payment.\n\n* When the payment is not authorized, this field is not returned.",
"maxLength": 6
},
"avs_result": {
"type": "string",
"description": "Address verification services result, which provides information about the outcome of the AVS check. The full list of codes and descriptions can be found <a href=\"https://docs.verifone.com/online-payments/fraud-management/address-verification-service-avs\">here</a>",
"enum": [
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"I",
"K",
"L",
"M",
"N",
"O",
"P",
"R",
"S",
"T",
"U",
"W",
"X",
"Y",
"Z"
]
},
"card": {
"type": "string",
"description": "The token representing the payment card"
},
"created_by": {
"type": "string",
"description": "The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order"
},
"cvv_present": {
"type": "boolean",
"description": "True if the card was used with a cvv"
},
"cvv_result": {
"type": "string",
"description": "The CVC verification result, which provides information about the outcome of the CVC check.\n\n CVC-CVV result codes:\n * `0` Unknown\n * `1` Matches.\n * `2` Doesn't match.\n * `3` Not checked.\n * `4` No CVC/CVV provided, but was required.\n * `5` Issuer not certified for CVC/CVV.\n * `6` No CVC/CVV provided.\n\n<strong>The following are included only for backwards compatibility. They are deprecated and will be removed in the next major release. The client must take action now to ensure ongoing support.</strong>\n * `M` Match\n * `Y` Match\n * `N` No Match\n * `P` Not Processed\n * `S` CVV Should be present, but Merchant indicates not present.\n * `U` Issuer not certified or registered to process card verification.",
"enum": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"9",
"M",
"Y",
"N",
"P",
"S",
"U"
]
},
"cavv_result": {
"type": "string",
"description": "This field will be populated for any Verified by Visa transaction and AVV Authorisation message sent by MasterCard SecureCode: This includes CAVV and AEVV from American Express SafeKey.\n\n\n CAVV Transaction Response Code Values:\n\n* `0` CAVV or AEVV Not Validated due to erroneous data submitted.\n\n\n* `1` CAVV or AEVV Failed Validation - Authentication Transaction. This is an indication of potential bad or fraudulent data submitted.\n\n\n* `2` CAVV or AEVV Passed Validation \u2013 Authentication Transaction.\n\n\n* `3` CAVV or AEVV Passed Validation \u2013 Attempted Authentication Transaction. (Determined that the Issuer ACS generated this value from the use of the Issuer\u2019s CAVV/AEVV key[s]).\n\n\n* `4` CAVV or AEVV Failed Validation \u2013 Attempted Authentication Transaction. Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (Determined that Visa generated this value from the use of CAVV/AEVV key[s]).\n\n\n* `5` Reserved.\n\n\n* `6` CAVV or AEVV Not Validated \u2013 Issuer not participated. This value is generated when an Issuer requests the `do not verify` flag to be established for its BINs. This parameter enables an Issuer to temporarily stop CAVV/AEVV verification while resolving CAVV/AEVV key issues. VisaNet processes this value as a valid CAVV/AEVV.\n\n\n* `7` CAVV or AEVV Failed Validation \u2013 Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (CAVV/AEVV generated with Visa Key).\n\n\n* `8` CAVV or AEVV Passed Validation \u2013 Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key).\n\n\n* `9` CAVV or AEVV Failed Validation \u2013 Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV (CAVV/AEVV generated with Visa Key \u2013 Issuer ACS unavailable).\n\n\n* `99` An unknown value was returned from the processor.\n\n\n* `A` CAVV or AEVV Passed Validation \u2013 Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key \u2013 Issuer ACS unavailable).\n\n\n* `B` CAVV or AEVV Failed Validation \u2013 Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (CAVV/AEVV generated with Visa Key).\n\n\n* `C` CAVV or AEVV Not Validated \u2013 Attempted Authentication Transaction. Issuer did not return a CAVV/AEVV results code in the authorisation response. VisaNet will treat this as valid CAVV/AEVV if the Issuer approves the authorisation.\n\n\n* `D` CAVV or AEVV Not Validated \u2013 Authentication. Issuer did not return a CAVV/AEVV results code in the authorisation response. VisaNet will treat this as valid CAVV/AEVV if the Issuer approves the authorisation.\n\n\n* `I` Invalid Security Data.\n\n\n* `U` Issuer does not participate or 3-D Secure data not utilised.\n\n\n* `NA` Blank CAVV or AEVV Not Present.\n\n\n",
"enum": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"99",
"A",
"B",
"C",
"D",
"I",
"U",
"NA"
]
},
"invoice_number": {
"type": "string",
"title": "Invoice Number",
"description": "Optional. The invoice number to track this payment.",
"maxLength": 127
},
"stored_credential": {
"allOf": [
{
"$ref": "#/components/schemas/StoredCredential",
"description": "Defines a recurring payment type"
}
]
},
"details": {
"$ref": "#/components/schemas/Details"
},
"reason_code": {
"type": "string",
"description": "A reason code assigned by the acquiring platform; '0000' in case of success",
"maxLength": 4
},
"rrn": {
"type": "string",
"description": "A client (user friendly) identifier for the transaction generated at the outset of a business event. The format will be dependent on the calling system.\n\nA reference supplied by the system retaining the original source information and used to assist in locating that transaction or a copy of the transaction. This value is critical in matching values that are sent to other Payment processors or Acquirers.\n This value would correspond to the **ISO8583 specification as RRN in attribute DE 37, which limits the value to being an alphanumeric value 12 characters.**\n\n For the GSC client android application the format will correspond to <strong>YYMMdd<stan 6 digits></strong>.",
"maxLength": 12
},
"shopper_interaction": {
"type": "string",
"description": "Determines the point of sale of a customer. Possible values: pos, moto, mail_order, telephone_order, ecommerce and cont_auth",
"enum": [
"ECOMMERCE",
"MAIL",
"TELEPHONE"
]
},
"stan": {
"type": "string",
"description": "System Trace Audit Number."
},
"threed_authentication": {
"allOf": [
{
"$ref": "#/components/schemas/ThreedAuthentication",
"description": "MPI authentication data. Please refer to the integration guide for information on its usage."
}
]
},
"reversal_status": {
"type": "string",
"description": "Indicates to the API client if a technical reversal has been completed by Verifone.",
"enum": [
"NONE",
"REQUIRED",
"COMPLETED"
],
"default": "NONE"
},
"geo_location": {
"type": "array",
"description": "The latitude / longitude resolved from the customer's ip address.",
"items": {
"type": "number"
}
},
"city": {
"type": "string",
"description": "The city resolved from the customer's ip address."
},
"country_code": {
"type": "string",
"description": "The country code resolved from the customer's ip address."
},
"additional_data": {
"$ref": "#/components/schemas/AdditionalData"
},
"token_details": {
"allOf": [
{
"$ref": "#/components/schemas/TokenDetails",
"description": "This object is returned as the response to a request for Create/Update Token."
}
]
},
"promo_code": {
"type": "string",
"description": "A code defined by the merchant that affects the calculation of the total amount."
},
"promo_financing_result": {
"$ref": "#/components/schemas/PromoFinancingResults"
},
"purchase_order_number": {
"title": "Purchase Order Number",
"description": "The purchase order number. It can be provided in transactions with purchase or procurement cards for the cardholder to get better interchange rates (note that this functionality needs alignment with the acquirer and the scheme). This field is part of so-called Level 2 data.\n",
"type": "string",
"maxLength": 17
},
"issuer_instalment_result": {
"$ref": "#/components/schemas/ecomPaymentResponse_issuer_instalment_result"
},
"balance_amount": {
"type": "integer",
"title": "balanceAmount",
"description": "Balance amount is the amount remaining on a card or account of cardholder without a decimal place e.g. $1.5 = 150.\n\nThe required number of decimal places for a currency code is according to ISO 4217. However the following table takes precedence over ISO 4217:"
}
}
}