PaymentInput is a JSON Structure definition published by Amadeus Reservations, describing 3 properties, of which 1 is required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amadeus-reservations/refs/heads/main/json-structure/hotel-booking-payment-input-structure.json",
"name": "PaymentInput",
"description": "Model with the hotel payment information",
"type": "object",
"properties": {
"iataTravelAgency": {
"type": "object",
"description": "Agency IATA/ARC Number used to Guarantee the booking.\nIf not provided it is taken form the Amadeus Office profile.",
"properties": {
"iataNumber": {
"type": "string"
}
}
},
"method": {
"type": "string",
"description": "Indicates the method of payment. \n- CREDIT_CARD : It allows payment through a credit card. It is expected to provide the credit card information in the paymentCard section.",
"enum": [
"CREDIT_CARD"
]
},
"paymentCard": {
"type": "object",
"description": "Credit card information.\nThe full details of a credit card are expected :\n . credit card holder name (mandatory, maximum 64 chars) \n . credit card vendor code (mandatory)\n . credit card number (mandatory)\n . credit card expiry date (mandatory)\n . credit card security code (optional, it is anyway strongly recommended to always provide it for Aggregators)",
"properties": {
"paymentCardInfo": {
"type": "object",
"description": "Credit or Debits cards.",
"name": "PaymentCard",
"properties": {
"vendorCode": {
"type": "string",
"example": "VI",
"description": "Two-letter code card type or vendor code. E.g. VI for VISA, MA for MasterCard.",
"maxLength": 30,
"minLength": 0
},
"holderName": {
"type": "string",
"description": "Name of credit card holder.",
"maxLength": 99,
"minLength": 1
},
"cardNumber": {
"type": "string",
"description": "Card number"
},
"securityCode": {
"type": "string",
"description": "Card security code",
"example": "193",
"minLength": 3,
"maxLength": 4
},
"expiryDate": {
"type": "string",
"description": "Date of the expiration of the card in the format MMYY"
}
},
"required": [
"vendorCode",
"holderName",
"cardNumber",
"expiryDate"
]
},
"address": {
"$ref": "#/definitions/Address"
}
},
"required": [
"paymentCardInfo"
]
}
},
"required": [
"method"
]
}