{
  "$schema" : "http://json-schema.org/draft-04/schema#",
  "type" : "object",
  "properties" : {
    "bankTransferPaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/BankTransferPaymentMethodSpecificInputBase"
    },
    "cardPaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/CardPaymentMethodSpecificInputBase"
    },
    "cashPaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/CashPaymentMethodSpecificInputBase"
    },
    "eInvoicePaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/EInvoicePaymentMethodSpecificInputBase"
    },
    "fraudFields" : {
      "$ref" : "#/definitions/FraudFields"
    },
    "hostedCheckoutSpecificInput" : {
      "$ref" : "#/definitions/HostedCheckoutSpecificInput"
    },
    "merchant" : {
      "$ref" : "#/definitions/Merchant"
    },
    "mobilePaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/MobilePaymentMethodSpecificInputHostedCheckout"
    },
    "order" : {
      "$ref" : "#/definitions/Order"
    },
    "redirectPaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/RedirectPaymentMethodSpecificInputBase"
    },
    "sepaDirectDebitPaymentMethodSpecificInput" : {
      "$ref" : "#/definitions/SepaDirectDebitPaymentMethodSpecificInputBase"
    }
  },
  "additionalProperties" : false,
  "definitions" : {
    "AccountFundingRecipient" : {
      "type" : "object",
      "properties" : {
        "accountNumber" : {
          "type" : "string"
        },
        "accountNumberType" : {
          "type" : "string"
        },
        "address" : {
          "$ref" : "#/definitions/Address"
        },
        "dateOfBirth" : {
          "type" : "string"
        },
        "name" : {
          "$ref" : "#/definitions/AfrName"
        },
        "partialPan" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AdditionalOrderInput" : {
      "type" : "object",
      "properties" : {
        "accountFundingRecipient" : {
          "$ref" : "#/definitions/AccountFundingRecipient"
        },
        "airlineData" : {
          "$ref" : "#/definitions/AirlineData"
        },
        "installments" : {
          "$ref" : "#/definitions/Installments"
        },
        "level3SummaryData" : {
          "$ref" : "#/definitions/Level3SummaryData"
        },
        "loanRecipient" : {
          "$ref" : "#/definitions/LoanRecipient"
        },
        "lodgingData" : {
          "$ref" : "#/definitions/LodgingData"
        },
        "numberOfInstallments" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "orderDate" : {
          "type" : "string"
        },
        "typeInformation" : {
          "$ref" : "#/definitions/OrderTypeInformation"
        }
      },
      "additionalProperties" : false
    },
    "Address" : {
      "type" : "object",
      "properties" : {
        "additionalInfo" : {
          "type" : "string"
        },
        "city" : {
          "type" : "string"
        },
        "countryCode" : {
          "type" : "string"
        },
        "houseNumber" : {
          "type" : "string"
        },
        "state" : {
          "type" : "string"
        },
        "stateCode" : {
          "type" : "string"
        },
        "street" : {
          "type" : "string"
        },
        "zip" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AddressPersonal" : {
      "type" : "object",
      "properties" : {
        "additionalInfo" : {
          "type" : "string"
        },
        "city" : {
          "type" : "string"
        },
        "countryCode" : {
          "type" : "string"
        },
        "houseNumber" : {
          "type" : "string"
        },
        "name" : {
          "$ref" : "#/definitions/PersonalName"
        },
        "state" : {
          "type" : "string"
        },
        "stateCode" : {
          "type" : "string"
        },
        "street" : {
          "type" : "string"
        },
        "zip" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AfrName" : {
      "type" : "object",
      "properties" : {
        "firstName" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AirlineData" : {
      "type" : "object",
      "properties" : {
        "agentNumericCode" : {
          "type" : "string"
        },
        "code" : {
          "type" : "string"
        },
        "flightDate" : {
          "type" : "string"
        },
        "flightLegs" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/AirlineFlightLeg"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "invoiceNumber" : {
          "type" : "string"
        },
        "isETicket" : {
          "type" : "boolean"
        },
        "isRegisteredCustomer" : {
          "type" : "boolean"
        },
        "isRestrictedTicket" : {
          "type" : "boolean"
        },
        "isThirdParty" : {
          "type" : "boolean"
        },
        "issueDate" : {
          "type" : "string"
        },
        "merchantCustomerId" : {
          "type" : "string"
        },
        "name" : {
          "type" : "string"
        },
        "numberInParty" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "passengerName" : {
          "type" : "string"
        },
        "passengers" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/AirlinePassenger"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "placeOfIssue" : {
          "type" : "string"
        },
        "pnr" : {
          "type" : "string"
        },
        "pointOfSale" : {
          "type" : "string"
        },
        "posCityCode" : {
          "type" : "string"
        },
        "ticketDeliveryMethod" : {
          "type" : "string"
        },
        "ticketNumber" : {
          "type" : "string"
        },
        "totalFare" : {
          "type" : "integer",
          "maximum" : 10000
        },
        "totalFee" : {
          "type" : "integer",
          "maximum" : 10000
        },
        "totalTaxes" : {
          "type" : "integer",
          "maximum" : 10000
        },
        "travelAgencyName" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AirlineFlightLeg" : {
      "type" : "object",
      "properties" : {
        "airlineClass" : {
          "type" : "string"
        },
        "arrivalAirport" : {
          "type" : "string"
        },
        "arrivalTime" : {
          "type" : "string"
        },
        "carrierCode" : {
          "type" : "string"
        },
        "conjunctionTicket" : {
          "type" : "string"
        },
        "couponNumber" : {
          "type" : "string"
        },
        "date" : {
          "type" : "string"
        },
        "departureTime" : {
          "type" : "string"
        },
        "endorsementOrRestriction" : {
          "type" : "string"
        },
        "exchangeTicket" : {
          "type" : "string"
        },
        "fare" : {
          "type" : "string"
        },
        "fareBasis" : {
          "type" : "string"
        },
        "fee" : {
          "type" : "integer",
          "maximum" : 10000
        },
        "flightNumber" : {
          "type" : "string"
        },
        "number" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "originAirport" : {
          "type" : "string"
        },
        "passengerClass" : {
          "type" : "string"
        },
        "serviceClass" : {
          "type" : "string"
        },
        "stopoverCode" : {
          "type" : "string"
        },
        "taxes" : {
          "type" : "integer",
          "maximum" : 10000
        }
      },
      "additionalProperties" : false
    },
    "AirlinePassenger" : {
      "type" : "object",
      "properties" : {
        "firstName" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        },
        "surnamePrefix" : {
          "type" : "string"
        },
        "title" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AmountBreakdown" : {
      "type" : "object",
      "properties" : {
        "amount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "type" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AmountOfMoney" : {
      "type" : "object",
      "properties" : {
        "amount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "currencyCode" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "AutomaticReloadBillingDetails" : {
      "type" : "object",
      "properties" : {
        "automaticReloadPaymentThresholdAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "description" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "BankAccountIban" : {
      "type" : "object",
      "properties" : {
        "accountHolderName" : {
          "type" : "string"
        },
        "iban" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "BankTransferPaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "additionalReference" : {
          "type" : "string"
        },
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "BrowserData" : {
      "type" : "object",
      "properties" : {
        "colorDepth" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "innerHeight" : {
          "type" : "string"
        },
        "innerWidth" : {
          "type" : "string"
        },
        "javaEnabled" : {
          "type" : "boolean"
        },
        "javaScriptEnabled" : {
          "type" : "boolean"
        },
        "screenHeight" : {
          "type" : "string"
        },
        "screenWidth" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CardPaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "acquirerPromotionCode" : {
          "type" : "string"
        },
        "authorizationMode" : {
          "type" : "string"
        },
        "customerReference" : {
          "type" : "string"
        },
        "initialSchemeTransactionId" : {
          "type" : "string"
        },
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "recurring" : {
          "$ref" : "#/definitions/CardRecurrenceDetails"
        },
        "recurringPaymentSequenceIndicator" : {
          "type" : "string"
        },
        "requiresApproval" : {
          "type" : "boolean"
        },
        "skipAuthentication" : {
          "type" : "boolean"
        },
        "skipFraudService" : {
          "type" : "boolean"
        },
        "threeDSecure" : {
          "$ref" : "#/definitions/ThreeDSecureBase"
        },
        "token" : {
          "type" : "string"
        },
        "tokenize" : {
          "type" : "boolean"
        },
        "transactionChannel" : {
          "type" : "string"
        },
        "unscheduledCardOnFileIndicator" : {
          "type" : "string"
        },
        "unscheduledCardOnFileRequestor" : {
          "type" : "string"
        },
        "unscheduledCardOnFileSequenceIndicator" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CardRecurrenceDetails" : {
      "type" : "object",
      "properties" : {
        "endDate" : {
          "type" : "string"
        },
        "minFrequency" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "recurringPaymentSequenceIndicator" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CashPaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "CompanyInformation" : {
      "type" : "object",
      "properties" : {
        "dateOfIncorporation" : {
          "type" : "string"
        },
        "name" : {
          "type" : "string"
        },
        "vatNumber" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "ContactDetails" : {
      "type" : "object",
      "properties" : {
        "emailAddress" : {
          "type" : "string"
        },
        "emailMessageType" : {
          "type" : "string"
        },
        "faxNumber" : {
          "type" : "string"
        },
        "mobilePhoneNumber" : {
          "type" : "string"
        },
        "phoneNumber" : {
          "type" : "string"
        },
        "workPhoneNumber" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CreateMandateBase" : {
      "type" : "object",
      "properties" : {
        "alias" : {
          "type" : "string"
        },
        "customer" : {
          "$ref" : "#/definitions/MandateCustomer"
        },
        "customerReference" : {
          "type" : "string"
        },
        "language" : {
          "type" : "string"
        },
        "recurrenceType" : {
          "type" : "string"
        },
        "signatureType" : {
          "type" : "string"
        },
        "uniqueMandateReference" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "Customer" : {
      "type" : "object",
      "properties" : {
        "account" : {
          "$ref" : "#/definitions/CustomerAccount"
        },
        "accountType" : {
          "type" : "string"
        },
        "billingAddress" : {
          "$ref" : "#/definitions/Address"
        },
        "companyInformation" : {
          "$ref" : "#/definitions/CompanyInformation"
        },
        "contactDetails" : {
          "$ref" : "#/definitions/ContactDetails"
        },
        "device" : {
          "$ref" : "#/definitions/CustomerDevice"
        },
        "fiscalNumber" : {
          "type" : "string"
        },
        "isCompany" : {
          "type" : "boolean"
        },
        "isPreviousCustomer" : {
          "type" : "boolean"
        },
        "locale" : {
          "type" : "string"
        },
        "merchantCustomerId" : {
          "type" : "string"
        },
        "personalInformation" : {
          "$ref" : "#/definitions/PersonalInformation"
        },
        "shippingAddress" : {
          "$ref" : "#/definitions/AddressPersonal"
        },
        "vatNumber" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CustomerAccount" : {
      "type" : "object",
      "properties" : {
        "authentication" : {
          "$ref" : "#/definitions/CustomerAccountAuthentication"
        },
        "changeDate" : {
          "type" : "string"
        },
        "changedDuringCheckout" : {
          "type" : "boolean"
        },
        "createDate" : {
          "type" : "string"
        },
        "hadSuspiciousActivity" : {
          "type" : "boolean"
        },
        "hasForgottenPassword" : {
          "type" : "boolean"
        },
        "hasPassword" : {
          "type" : "boolean"
        },
        "passwordChangeDate" : {
          "type" : "string"
        },
        "passwordChangedDuringCheckout" : {
          "type" : "boolean"
        },
        "paymentAccountOnFile" : {
          "$ref" : "#/definitions/PaymentAccountOnFile"
        },
        "paymentAccountOnFileType" : {
          "type" : "string"
        },
        "paymentActivity" : {
          "$ref" : "#/definitions/CustomerPaymentActivity"
        }
      },
      "additionalProperties" : false
    },
    "CustomerAccountAuthentication" : {
      "type" : "object",
      "properties" : {
        "data" : {
          "type" : "string"
        },
        "method" : {
          "type" : "string"
        },
        "utcTimestamp" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CustomerDevice" : {
      "type" : "object",
      "properties" : {
        "acceptHeader" : {
          "type" : "string"
        },
        "browserData" : {
          "$ref" : "#/definitions/BrowserData"
        },
        "defaultFormFill" : {
          "type" : "string"
        },
        "deviceFingerprintTransactionId" : {
          "type" : "string"
        },
        "ipAddress" : {
          "type" : "string"
        },
        "locale" : {
          "type" : "string"
        },
        "timezoneOffsetUtcMinutes" : {
          "type" : "string"
        },
        "userAgent" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "CustomerPaymentActivity" : {
      "type" : "object",
      "properties" : {
        "numberOfPaymentAttemptsLast24Hours" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "numberOfPaymentAttemptsLastYear" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "numberOfPurchasesLast6Months" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "DeferredBillingDetails" : {
      "type" : "object",
      "properties" : {
        "deferredPaymentAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "deferredPaymentDate" : {
          "type" : "string"
        },
        "description" : {
          "type" : "string"
        },
        "freeCancellationDate" : {
          "type" : "string"
        },
        "freeCancellationDateTimeZone" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "DeviceRenderOptions" : {
      "type" : "object",
      "properties" : {
        "sdkInterface" : {
          "type" : "string"
        },
        "sdkUiType" : {
          "type" : "string"
        },
        "sdkUiTypes" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          },
          "minItems" : 0,
          "uniqueItems" : false
        }
      },
      "additionalProperties" : false
    },
    "EInvoicePaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "requiresApproval" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "FraudFields" : {
      "type" : "object",
      "properties" : {
        "addressesAreIdentical" : {
          "type" : "boolean"
        },
        "blackListData" : {
          "type" : "string"
        },
        "cardOwnerAddress" : {
          "$ref" : "#/definitions/Address"
        },
        "customerIpAddress" : {
          "type" : "string"
        },
        "defaultFormFill" : {
          "type" : "string"
        },
        "deviceFingerprintActivated" : {
          "type" : "boolean"
        },
        "deviceFingerprintTransactionId" : {
          "type" : "string"
        },
        "giftCardType" : {
          "type" : "string"
        },
        "giftMessage" : {
          "type" : "string"
        },
        "hasForgottenPwd" : {
          "type" : "boolean"
        },
        "hasPassword" : {
          "type" : "boolean"
        },
        "isPreviousCustomer" : {
          "type" : "boolean"
        },
        "orderTimezone" : {
          "type" : "string"
        },
        "shipComments" : {
          "type" : "string"
        },
        "shipmentTrackingNumber" : {
          "type" : "string"
        },
        "shippingDetails" : {
          "$ref" : "#/definitions/FraudFieldsShippingDetails"
        },
        "userData" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "website" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "FraudFieldsShippingDetails" : {
      "type" : "object",
      "properties" : {
        "methodDetails" : {
          "type" : "string"
        },
        "methodSpeed" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "methodType" : {
          "type" : "integer",
          "maximum" : 32767
        }
      },
      "additionalProperties" : false
    },
    "Frequency" : {
      "type" : "object",
      "properties" : {
        "interval" : {
          "type" : "string"
        },
        "intervalFrequency" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "GPayThreeDSecure" : {
      "type" : "object",
      "properties" : {
        "challengeCanvasSize" : {
          "type" : "string"
        },
        "challengeIndicator" : {
          "type" : "string"
        },
        "exemptionRequest" : {
          "type" : "string"
        },
        "redirectionData" : {
          "$ref" : "#/definitions/RedirectionData"
        },
        "skipAuthentication" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "GiftCardPurchase" : {
      "type" : "object",
      "properties" : {
        "amountOfMoney" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "numberOfGiftCards" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "HostedCheckoutSpecificInput" : {
      "type" : "object",
      "properties" : {
        "allowClickToPay" : {
          "type" : "boolean"
        },
        "isRecurring" : {
          "type" : "boolean"
        },
        "locale" : {
          "type" : "string"
        },
        "paymentProductFilters" : {
          "$ref" : "#/definitions/PaymentProductFiltersHostedCheckout"
        },
        "recurringPaymentsData" : {
          "$ref" : "#/definitions/RecurringPaymentsData"
        },
        "returnCancelState" : {
          "type" : "boolean"
        },
        "returnUrl" : {
          "type" : "string"
        },
        "showResultPage" : {
          "type" : "boolean"
        },
        "tokens" : {
          "type" : "string"
        },
        "validateShoppingCart" : {
          "type" : "boolean"
        },
        "variant" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "Installments" : {
      "type" : "object",
      "properties" : {
        "amountOfMoneyPerInstallment" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "amountOfMoneyTotal" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "frequencyOfInstallments" : {
          "type" : "string"
        },
        "installmentPlanCode" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "interestRate" : {
          "type" : "string"
        },
        "numberOfInstallments" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        }
      },
      "additionalProperties" : false
    },
    "Level3SummaryData" : {
      "type" : "object",
      "properties" : {
        "discountAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "dutyAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "shippingAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        }
      },
      "additionalProperties" : false
    },
    "LineItem" : {
      "type" : "object",
      "properties" : {
        "amountOfMoney" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "invoiceData" : {
          "$ref" : "#/definitions/LineItemInvoiceData"
        },
        "level3InterchangeInformation" : {
          "$ref" : "#/definitions/LineItemLevel3InterchangeInformation"
        },
        "orderLineDetails" : {
          "$ref" : "#/definitions/OrderLineDetails"
        }
      },
      "additionalProperties" : false
    },
    "LineItemInvoiceData" : {
      "type" : "object",
      "properties" : {
        "description" : {
          "type" : "string"
        },
        "merchantLinenumber" : {
          "type" : "string"
        },
        "merchantPagenumber" : {
          "type" : "string"
        },
        "nrOfItems" : {
          "type" : "string"
        },
        "pricePerItem" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        }
      },
      "additionalProperties" : false
    },
    "LineItemLevel3InterchangeInformation" : {
      "type" : "object",
      "properties" : {
        "discountAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "lineAmountTotal" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "productCode" : {
          "type" : "string"
        },
        "productPrice" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "productType" : {
          "type" : "string"
        },
        "quantity" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "taxAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "unit" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "LoanRecipient" : {
      "type" : "object",
      "properties" : {
        "accountNumber" : {
          "type" : "string"
        },
        "dateOfBirth" : {
          "type" : "string"
        },
        "partialPan" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        },
        "zip" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "LodgingCharge" : {
      "type" : "object",
      "properties" : {
        "chargeAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "chargeAmountCurrencyCode" : {
          "type" : "string"
        },
        "chargeType" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "LodgingData" : {
      "type" : "object",
      "properties" : {
        "charges" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/LodgingCharge"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "checkInDate" : {
          "type" : "string"
        },
        "checkOutDate" : {
          "type" : "string"
        },
        "folioNumber" : {
          "type" : "string"
        },
        "isConfirmedReservation" : {
          "type" : "boolean"
        },
        "isFacilityFireSafetyConform" : {
          "type" : "boolean"
        },
        "isNoShow" : {
          "type" : "boolean"
        },
        "isPreferenceSmokingRoom" : {
          "type" : "boolean"
        },
        "numberOfAdults" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "numberOfNights" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "numberOfRooms" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "programCode" : {
          "type" : "string"
        },
        "propertyCustomerServicePhoneNumber" : {
          "type" : "string"
        },
        "propertyPhoneNumber" : {
          "type" : "string"
        },
        "renterName" : {
          "type" : "string"
        },
        "rooms" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/LodgingRoom"
          },
          "minItems" : 0,
          "uniqueItems" : false
        }
      },
      "additionalProperties" : false
    },
    "LodgingRoom" : {
      "type" : "object",
      "properties" : {
        "dailyRoomRate" : {
          "type" : "string"
        },
        "dailyRoomRateCurrencyCode" : {
          "type" : "string"
        },
        "dailyRoomTaxAmount" : {
          "type" : "string"
        },
        "dailyRoomTaxAmountCurrencyCode" : {
          "type" : "string"
        },
        "numberOfNightsAtRoomRate" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "roomLocation" : {
          "type" : "string"
        },
        "roomNumber" : {
          "type" : "string"
        },
        "typeOfBed" : {
          "type" : "string"
        },
        "typeOfRoom" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateAddress" : {
      "type" : "object",
      "properties" : {
        "city" : {
          "type" : "string"
        },
        "countryCode" : {
          "type" : "string"
        },
        "houseNumber" : {
          "type" : "string"
        },
        "street" : {
          "type" : "string"
        },
        "zip" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateContactDetails" : {
      "type" : "object",
      "properties" : {
        "emailAddress" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateCustomer" : {
      "type" : "object",
      "properties" : {
        "bankAccountIban" : {
          "$ref" : "#/definitions/BankAccountIban"
        },
        "companyName" : {
          "type" : "string"
        },
        "contactDetails" : {
          "$ref" : "#/definitions/MandateContactDetails"
        },
        "mandateAddress" : {
          "$ref" : "#/definitions/MandateAddress"
        },
        "personalInformation" : {
          "$ref" : "#/definitions/MandatePersonalInformation"
        }
      },
      "additionalProperties" : false
    },
    "MandatePersonalInformation" : {
      "type" : "object",
      "properties" : {
        "name" : {
          "$ref" : "#/definitions/MandatePersonalName"
        },
        "title" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandatePersonalName" : {
      "type" : "object",
      "properties" : {
        "firstName" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "Merchant" : {
      "type" : "object",
      "properties" : {
        "configurationId" : {
          "type" : "string"
        },
        "contactWebsiteUrl" : {
          "type" : "string"
        },
        "seller" : {
          "$ref" : "#/definitions/Seller"
        },
        "websiteUrl" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MobilePaymentMethodSpecificInputHostedCheckout" : {
      "type" : "object",
      "properties" : {
        "authorizationMode" : {
          "type" : "string"
        },
        "customerReference" : {
          "type" : "string"
        },
        "initialSchemeTransactionId" : {
          "type" : "string"
        },
        "paymentProduct302SpecificInput" : {
          "$ref" : "#/definitions/MobilePaymentProduct302SpecificInputHostedCheckout"
        },
        "paymentProduct320SpecificInput" : {
          "$ref" : "#/definitions/MobilePaymentProduct320SpecificInputHostedCheckout"
        },
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "recurring" : {
          "$ref" : "#/definitions/CardRecurrenceDetails"
        },
        "requiresApproval" : {
          "type" : "boolean"
        },
        "skipFraudService" : {
          "type" : "boolean"
        },
        "token" : {
          "type" : "string"
        },
        "tokenize" : {
          "type" : "boolean"
        },
        "unscheduledCardOnFileRequestor" : {
          "type" : "string"
        },
        "unscheduledCardOnFileSequenceIndicator" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MobilePaymentProduct302SpecificInputHostedCheckout" : {
      "type" : "object",
      "properties" : {
        "businessName" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MobilePaymentProduct320SpecificInputHostedCheckout" : {
      "type" : "object",
      "properties" : {
        "merchantName" : {
          "type" : "string"
        },
        "merchantOrigin" : {
          "type" : "string"
        },
        "threeDSecure" : {
          "$ref" : "#/definitions/GPayThreeDSecure"
        }
      },
      "additionalProperties" : false
    },
    "Order" : {
      "type" : "object",
      "properties" : {
        "additionalInput" : {
          "$ref" : "#/definitions/AdditionalOrderInput"
        },
        "amountOfMoney" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "customer" : {
          "$ref" : "#/definitions/Customer"
        },
        "items" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/LineItem"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "references" : {
          "$ref" : "#/definitions/OrderReferences"
        },
        "seller" : {
          "$ref" : "#/definitions/Seller"
        },
        "shipping" : {
          "$ref" : "#/definitions/Shipping"
        },
        "shoppingCart" : {
          "$ref" : "#/definitions/ShoppingCart"
        }
      },
      "additionalProperties" : false
    },
    "OrderInvoiceData" : {
      "type" : "object",
      "properties" : {
        "additionalData" : {
          "type" : "string"
        },
        "invoiceDate" : {
          "type" : "string"
        },
        "invoiceNumber" : {
          "type" : "string"
        },
        "textQualifiers" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          },
          "minItems" : 0,
          "uniqueItems" : false
        }
      },
      "additionalProperties" : false
    },
    "OrderLineDetails" : {
      "type" : "object",
      "properties" : {
        "discountAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "googleProductCategoryId" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "lineAmountTotal" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "naicsCommodityCode" : {
          "type" : "string"
        },
        "productCategory" : {
          "type" : "string"
        },
        "productCode" : {
          "type" : "string"
        },
        "productImageUrl" : {
          "type" : "string"
        },
        "productName" : {
          "type" : "string"
        },
        "productPrice" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "productSku" : {
          "type" : "string"
        },
        "productType" : {
          "type" : "string"
        },
        "productUrl" : {
          "type" : "string"
        },
        "quantity" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "taxAmount" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "unit" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "OrderReferences" : {
      "type" : "object",
      "properties" : {
        "descriptor" : {
          "type" : "string"
        },
        "invoiceData" : {
          "$ref" : "#/definitions/OrderInvoiceData"
        },
        "merchantOrderId" : {
          "type" : "integer",
          "maximum" : 9223372036854775807
        },
        "merchantReference" : {
          "type" : "string"
        },
        "providerId" : {
          "type" : "string"
        },
        "providerMerchantId" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "OrderTypeInformation" : {
      "type" : "object",
      "properties" : {
        "fundingType" : {
          "type" : "string"
        },
        "paymentCode" : {
          "type" : "string"
        },
        "purchaseType" : {
          "type" : "string"
        },
        "transactionType" : {
          "type" : "string"
        },
        "usageType" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "PaymentAccountOnFile" : {
      "type" : "object",
      "properties" : {
        "createDate" : {
          "type" : "string"
        },
        "numberOfCardOnFileCreationAttemptsLast24Hours" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "PaymentProduct302SpecificInput" : {
      "type" : "object",
      "properties" : {
        "automaticReloadBilling" : {
          "$ref" : "#/definitions/AutomaticReloadBillingDetails"
        },
        "billingAgreement" : {
          "type" : "string"
        },
        "deferredBilling" : {
          "$ref" : "#/definitions/DeferredBillingDetails"
        },
        "managementUrl" : {
          "type" : "string"
        },
        "paymentDescription" : {
          "type" : "string"
        },
        "regularBilling" : {
          "$ref" : "#/definitions/RecurringBillingDetails"
        },
        "tokenNotificationUrl" : {
          "type" : "string"
        },
        "trialBilling" : {
          "$ref" : "#/definitions/RecurringBillingDetails"
        }
      },
      "additionalProperties" : false
    },
    "PaymentProductFilter" : {
      "type" : "object",
      "properties" : {
        "groups" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          },
          "minItems" : 0,
          "uniqueItems" : true
        },
        "products" : {
          "type" : "array",
          "items" : {
            "type" : "integer",
            "maximum" : 2147483647
          },
          "minItems" : 0,
          "uniqueItems" : true
        }
      },
      "additionalProperties" : false
    },
    "PaymentProductFiltersHostedCheckout" : {
      "type" : "object",
      "properties" : {
        "exclude" : {
          "$ref" : "#/definitions/PaymentProductFilter"
        },
        "restrictTo" : {
          "$ref" : "#/definitions/PaymentProductFilter"
        },
        "tokensOnly" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "PersonalIdentification" : {
      "type" : "object",
      "properties" : {
        "idIssuingCountryCode" : {
          "type" : "string"
        },
        "idType" : {
          "type" : "string"
        },
        "idValue" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "PersonalInformation" : {
      "type" : "object",
      "properties" : {
        "dateOfBirth" : {
          "type" : "string"
        },
        "gender" : {
          "type" : "string"
        },
        "identification" : {
          "$ref" : "#/definitions/PersonalIdentification"
        },
        "name" : {
          "$ref" : "#/definitions/PersonalName"
        }
      },
      "additionalProperties" : false
    },
    "PersonalName" : {
      "type" : "object",
      "properties" : {
        "firstName" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        },
        "surnamePrefix" : {
          "type" : "string"
        },
        "title" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "RecurringBillingDetails" : {
      "type" : "object",
      "properties" : {
        "description" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "RecurringPaymentsData" : {
      "type" : "object",
      "properties" : {
        "paymentProduct302SpecificInput" : {
          "$ref" : "#/definitions/PaymentProduct302SpecificInput"
        },
        "recurringEndDate" : {
          "type" : "string"
        },
        "recurringInterval" : {
          "$ref" : "#/definitions/Frequency"
        },
        "recurringStartDate" : {
          "type" : "string"
        },
        "trialInformation" : {
          "$ref" : "#/definitions/TrialInformation"
        }
      },
      "additionalProperties" : false
    },
    "RedirectPaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "expirationPeriod" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "paymentProduct4101SpecificInput" : {
          "$ref" : "#/definitions/RedirectPaymentProduct4101SpecificInputBase"
        },
        "paymentProduct838SpecificInput" : {
          "$ref" : "#/definitions/RedirectPaymentProduct838SpecificInputBase"
        },
        "paymentProduct840SpecificInput" : {
          "$ref" : "#/definitions/RedirectPaymentProduct840SpecificInputBase"
        },
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "recurringPaymentSequenceIndicator" : {
          "type" : "string"
        },
        "requiresApproval" : {
          "type" : "boolean"
        },
        "token" : {
          "type" : "string"
        },
        "tokenize" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "RedirectPaymentProduct4101SpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "displayName" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "RedirectPaymentProduct838SpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "interoperabilityData" : {
          "type" : "string"
        },
        "interoperabilityToken" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "RedirectPaymentProduct840SpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "addressSelectionAtPayPal" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "RedirectionData" : {
      "type" : "object",
      "properties" : {
        "returnUrl" : {
          "type" : "string"
        },
        "variant" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "SdkDataInput" : {
      "type" : "object",
      "properties" : {
        "deviceRenderOptions" : {
          "$ref" : "#/definitions/DeviceRenderOptions"
        },
        "sdkAppId" : {
          "type" : "string"
        },
        "sdkEncryptedData" : {
          "type" : "string"
        },
        "sdkEphemeralPublicKey" : {
          "type" : "string"
        },
        "sdkMaxTimeout" : {
          "type" : "string"
        },
        "sdkReferenceNumber" : {
          "type" : "string"
        },
        "sdkTransactionId" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "Seller" : {
      "type" : "object",
      "properties" : {
        "address" : {
          "$ref" : "#/definitions/Address"
        },
        "channelCode" : {
          "type" : "string"
        },
        "description" : {
          "type" : "string"
        },
        "externalReferenceId" : {
          "type" : "string"
        },
        "geocode" : {
          "type" : "string"
        },
        "id" : {
          "type" : "string"
        },
        "invoiceNumber" : {
          "type" : "string"
        },
        "isForeignRetailer" : {
          "type" : "boolean"
        },
        "mcc" : {
          "type" : "string"
        },
        "name" : {
          "type" : "string"
        },
        "phoneNumber" : {
          "type" : "string"
        },
        "type" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "SepaDirectDebitPaymentMethodSpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "paymentProduct771SpecificInput" : {
          "$ref" : "#/definitions/SepaDirectDebitPaymentProduct771SpecificInputBase"
        },
        "paymentProductId" : {
          "type" : "integer",
          "maximum" : 2147483647
        }
      },
      "additionalProperties" : false
    },
    "SepaDirectDebitPaymentProduct771SpecificInputBase" : {
      "type" : "object",
      "properties" : {
        "existingUniqueMandateReference" : {
          "type" : "string"
        },
        "mandate" : {
          "$ref" : "#/definitions/CreateMandateBase"
        },
        "mandateReference" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "Shipping" : {
      "type" : "object",
      "properties" : {
        "address" : {
          "$ref" : "#/definitions/AddressPersonal"
        },
        "addressIndicator" : {
          "type" : "string"
        },
        "carrier" : {
          "type" : "string"
        },
        "comments" : {
          "type" : "string"
        },
        "emailAddress" : {
          "type" : "string"
        },
        "firstUsageDate" : {
          "type" : "string"
        },
        "instructions" : {
          "type" : "string"
        },
        "isFirstUsage" : {
          "type" : "boolean"
        },
        "shippedFromZip" : {
          "type" : "string"
        },
        "trackingNumber" : {
          "type" : "string"
        },
        "type" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "ShoppingCart" : {
      "type" : "object",
      "properties" : {
        "amountBreakdown" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/AmountBreakdown"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "giftCardPurchase" : {
          "$ref" : "#/definitions/GiftCardPurchase"
        },
        "isPreOrder" : {
          "type" : "boolean"
        },
        "items" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/LineItem"
          },
          "minItems" : 0,
          "uniqueItems" : false
        },
        "preOrderItemAvailabilityDate" : {
          "type" : "string"
        },
        "reOrderIndicator" : {
          "type" : "boolean"
        }
      },
      "additionalProperties" : false
    },
    "ThreeDSecureBase" : {
      "type" : "object",
      "properties" : {
        "authenticationAmount" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "authenticationFlow" : {
          "type" : "string"
        },
        "challengeCanvasSize" : {
          "type" : "string"
        },
        "challengeIndicator" : {
          "type" : "string"
        },
        "exemptionRequest" : {
          "type" : "string"
        },
        "priorThreeDSecureData" : {
          "$ref" : "#/definitions/ThreeDSecureData"
        },
        "sdkData" : {
          "$ref" : "#/definitions/SdkDataInput"
        },
        "skipAuthentication" : {
          "type" : "boolean"
        },
        "transactionRiskLevel" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "ThreeDSecureData" : {
      "type" : "object",
      "properties" : {
        "acsTransactionId" : {
          "type" : "string"
        },
        "method" : {
          "type" : "string"
        },
        "utcTimestamp" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "TrialInformation" : {
      "type" : "object",
      "properties" : {
        "amountOfMoneyAfterTrial" : {
          "$ref" : "#/definitions/AmountOfMoney"
        },
        "endDate" : {
          "type" : "string"
        },
        "isRecurring" : {
          "type" : "boolean"
        },
        "startDate" : {
          "type" : "string"
        },
        "trialPeriod" : {
          "$ref" : "#/definitions/TrialPeriod"
        },
        "trialPeriodRecurring" : {
          "$ref" : "#/definitions/Frequency"
        }
      },
      "additionalProperties" : false
    },
    "TrialPeriod" : {
      "type" : "object",
      "properties" : {
        "duration" : {
          "type" : "integer",
          "maximum" : 2147483647
        },
        "interval" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    }
  }
}
