{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/clickatell/main/json-schema/clickatell-payment-gateway-operation-result-response-schema.json",
  "title": "PaymentGatewayOperationResultResponse",
  "x-generated": "2026-10-13",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/clickatell-chat-2-pay-api-openapi.json#/components/schemas/PaymentGatewayOperationResultResponse",
  "type": "object",
  "properties": {
    "transactionType": {
      "type": "string",
      "description": "The type of transaction executed",
      "enum": [
        "TransactionType.AUTHORIZATION(name=Authorization, id=1)",
        "TransactionType.SALE(name=Sale, id=2)",
        "TransactionType.VOID(name=Void, id=3)",
        "TransactionType.CAPTURE(name=Capture, id=4)"
      ]
    },
    "totalAmount": {
      "type": "number",
      "description": "The total amount of the transaction"
    },
    "paymentGatewayDecision": {
      "type": "string",
      "description": "Decision received back from the Payment Gateway for the payment request"
    },
    "paymentGatewayReqReferenceNumber": {
      "type": "string",
      "description": "Payment Reference number received back from the Payment Gateway for the payment request"
    },
    "paymentGatewayResponseTimestamp": {
      "type": "string",
      "description": "Timestamp received back from the Payment Gateway for the payment request",
      "format": "date-time"
    },
    "paymentGatewayResponseCode": {
      "type": "integer",
      "description": "Response code received back from the Payment Gateway for the payment request",
      "format": "int32"
    },
    "paymentGatewayErrorDecision": {
      "type": "string",
      "description": "Error description received back from Payment Gateway if error occurred"
    },
    "paymentGatewayAuthReconciliationReferenceNumber": {
      "type": "string",
      "description": "Unique number generated by Payment Gateway to identify the transaction for the payment request"
    },
    "cardType": {
      "type": "string",
      "description": "The type of card used for the transaction, as received back from the Payment Gateway for the payment request"
    },
    "maskedCardNumber": {
      "type": "string",
      "description": "The masked card number used for the transaction, as received back from the Payment Gateway for the payment request\n"
    },
    "cardExpiryDate": {
      "type": "string",
      "description": "The expiry date of the card used for the payment, as received back from the Payment Gateway for the payment request\n"
    },
    "paymentStatus": {
      "type": "string",
      "description": "New payment status if it was changed"
    },
    "paymentStatusId": {
      "type": "string",
      "description": "The ID of the new payment status"
    }
  }
}