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
View JSON Schema on GitHub

JSON Schema

ecommerce-api-ecomresponsecard.json Raw ↑
{
  "$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:"
    }
  }
}