Fiserv · Schema

Fiserv Payment Transaction

Schema representing a payment transaction across Fiserv payment processing APIs including CommerceHub and CardPointe Gateway.

BankingFinancialPaymentsWealth ManagementFortune 500

Properties

Name Type Description
transactionId string The unique identifier assigned to the transaction by the gateway.
orderId string The merchant-assigned order identifier.
merchantId string The merchant identifier.
transactionType string The type of transaction.
transactionState string The current state of the transaction.
amount object
currency string The ISO 4217 three-letter currency code.
paymentSource object
processorResponse object
billingAddress object
createdAt string The timestamp when the transaction was created.
updatedAt string The timestamp when the transaction was last updated.
captureFlag boolean Whether the transaction was captured immediately.
settlementDate string The date the transaction was settled.
View JSON Schema on GitHub

JSON Schema

fiserv-payment-transaction-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://developer.fiserv.com/schemas/fiserv/payment-transaction.json",
  "title": "Fiserv Payment Transaction",
  "description": "Schema representing a payment transaction across Fiserv payment processing APIs including CommerceHub and CardPointe Gateway.",
  "type": "object",
  "required": ["transactionId", "amount", "currency", "transactionType", "transactionState"],
  "properties": {
    "transactionId": {
      "type": "string",
      "description": "The unique identifier assigned to the transaction by the gateway."
    },
    "orderId": {
      "type": "string",
      "description": "The merchant-assigned order identifier."
    },
    "merchantId": {
      "type": "string",
      "description": "The merchant identifier."
    },
    "transactionType": {
      "type": "string",
      "enum": ["CHARGE", "AUTHORIZATION", "CAPTURE", "REFUND", "VOID", "VERIFICATION"],
      "description": "The type of transaction."
    },
    "transactionState": {
      "type": "string",
      "enum": ["AUTHORIZED", "CAPTURED", "SETTLED", "REFUNDED", "VOIDED", "DECLINED", "PENDING"],
      "description": "The current state of the transaction."
    },
    "amount": {
      "$ref": "#/$defs/Amount"
    },
    "currency": {
      "type": "string",
      "pattern": "^[A-Z]{3}$",
      "description": "The ISO 4217 three-letter currency code."
    },
    "paymentSource": {
      "$ref": "#/$defs/PaymentSource"
    },
    "processorResponse": {
      "$ref": "#/$defs/ProcessorResponse"
    },
    "billingAddress": {
      "$ref": "#/$defs/Address"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp when the transaction was created."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp when the transaction was last updated."
    },
    "captureFlag": {
      "type": "boolean",
      "description": "Whether the transaction was captured immediately."
    },
    "settlementDate": {
      "type": "string",
      "format": "date",
      "description": "The date the transaction was settled."
    }
  },
  "$defs": {
    "Amount": {
      "type": "object",
      "description": "A monetary amount.",
      "required": ["total"],
      "properties": {
        "total": {
          "type": "number",
          "minimum": 0,
          "description": "The total amount."
        },
        "currency": {
          "type": "string",
          "pattern": "^[A-Z]{3}$",
          "description": "The ISO 4217 currency code."
        }
      }
    },
    "PaymentSource": {
      "type": "object",
      "description": "The payment source used for the transaction.",
      "properties": {
        "sourceType": {
          "type": "string",
          "enum": ["PaymentCard", "PaymentToken", "PaymentSession", "GooglePay", "ApplePay", "BankAccount"],
          "description": "The type of payment source."
        },
        "cardBrand": {
          "type": "string",
          "enum": ["VISA", "MASTERCARD", "AMEX", "DISCOVER", "JCB", "DINERS"],
          "description": "The card brand."
        },
        "maskedCardNumber": {
          "type": "string",
          "pattern": "^\\*{4,}\\d{4}$",
          "description": "The masked card number showing only the last four digits."
        },
        "expirationMonth": {
          "type": "string",
          "pattern": "^\\d{2}$",
          "description": "The card expiration month in MM format."
        },
        "expirationYear": {
          "type": "string",
          "pattern": "^\\d{4}$",
          "description": "The card expiration year in YYYY format."
        },
        "token": {
          "type": "string",
          "description": "The payment token if tokenized."
        }
      }
    },
    "ProcessorResponse": {
      "type": "object",
      "description": "The response from the payment processor.",
      "properties": {
        "approvalStatus": {
          "type": "string",
          "enum": ["APPROVED", "DECLINED", "PROCESSING_FAILED", "RETRY"],
          "description": "The approval status."
        },
        "approvalCode": {
          "type": "string",
          "description": "The issuer approval code."
        },
        "responseCode": {
          "type": "string",
          "description": "The processor response code."
        },
        "responseMessage": {
          "type": "string",
          "description": "The human-readable response message."
        },
        "avsResponseCode": {
          "type": "string",
          "description": "The Address Verification System response code."
        },
        "cvvResponseCode": {
          "type": "string",
          "description": "The Card Verification Value response code."
        }
      }
    },
    "Address": {
      "type": "object",
      "description": "A physical or billing address.",
      "properties": {
        "line1": {
          "type": "string",
          "maxLength": 255,
          "description": "Address line 1."
        },
        "line2": {
          "type": "string",
          "maxLength": 255,
          "description": "Address line 2."
        },
        "city": {
          "type": "string",
          "maxLength": 100,
          "description": "The city."
        },
        "state": {
          "type": "string",
          "maxLength": 100,
          "description": "The state or province."
        },
        "postalCode": {
          "type": "string",
          "maxLength": 20,
          "description": "The postal or ZIP code."
        },
        "country": {
          "type": "string",
          "pattern": "^[A-Z]{2}$",
          "description": "The ISO 3166-1 alpha-2 country code."
        }
      }
    }
  }
}