openapi: 3.2.0 info: title: Tui Group Booking/payments API version: '1.0' description: 'Operations tagged booking/payments across 2 of this provider''s published API definitions: tui-group-tui-newskies-digital-api-openapi.yml, tui-group-tui-newskies-payment-api-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service tags: - name: booking/payments paths: /api/nsk/v1/booking/payments: get: tags: - booking/payments summary: Retrieves the booking payments on the booking in state. description: Requires a booking in state. operationId: nsk_v1_booking_payments_get responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfPayment' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v5/booking/payments: post: tags: - booking/payments summary: Creates a new external payment or prepaid payment on the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` The payment fields are dynamic to the criteria of your payment provider. Here is an example request for a credit card payment that does not require address, zip, etc. { "amount": 10, "currencyCode": "USD", "paymentFields": {"ACCTNO":"411111111111", "EXPDATE":"10/8/2017", "CC::AccountHolderName":"Bob Smith", "CC::VerificationCode":"111"}} A 202 (HTTP status code) response returns alternate data signifying that either Three D Secure was enabled for this payment and is required for this payment type or a direct currency conversion (Dcc) offer was given. The payment will need to be resent using the 3DS endpoint or the Dcc endpoint. Note that it is possible for a payment to return a dcc offer and also have three d secure enabled. In these cases the direct currency conversion offer will need to be handled first and then the three d secure payment can be handled. If you would like to make a Dcc offer and the system using this endpoint cannot display a dcc offer to the end user, the status should be updated to DccNotOffered. This indicates that the offer was not displayed to the end user and is to be accepted automatically. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) This endpoint can also only be used with the v6 three d secure endpoint, POST `api/nsk/v6/booking/payments/threeDSecure`. GraphQL endpoint: paymentAddv5' operationId: nsk_v5_booking_payments_post parameters: - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 2 requestBody: x-name: request description: Payment request. content: application/json: schema: $ref: '#/components/schemas/PaymentMethodRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentInformation' examples: Three D Secure 1 Redirect needed: description: Example response for a Three D Secure 1 redirect is required. value: threeDSecureResponse: redirectUrl: https://merchantacsstag.cardinalcommerce.com/MerchantACSWeb/pareq.jsp?vaa=b&gold=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA paReq: eNpdkl1PwjAUhu/7K4jxeu26gUoOTUAiHxGyyILgXe1OYMZ90G2A/952bKL26jyn57TnfVsI9xpxvEJVaRSwwKKQO+zE0eBGrTchn7JgVgSvz7v3XO3m7EZAMHzBg4Aj6iLOUuE6zOFAWyTmCK32Mi0FSHUYzZai2+16nge0QQIJ6tlYMLOAXmICqUxQLOUxLmWs0VFZArTOEVBZlZb6S9z7pr4FApX+FPuyzIs+pafTyfnXbLcJ0Os0QWWjwog8x5HYum/b9Xg+WzyN5sodbcJJFKvJMl19DAdAbQWBSJYoOOPcZczvuA997vd9F2idJyATO4u49bhjlTRIILcXDS/kcbv1O2P0VFpjqlpBLRHAc56laGqMnz+xGQMLJUIsSmbvtmB0XdU8Tq3TqjQ29liPu3e11TXXR8bGLe7Z3gZMt+2hzUPS5s1N9OcvfAMe8K4M responseUrl: null md: null raw:
paymentTransactionKey: Y1ZYVDJIMFBJc1BXTGdicGNnSjAhMSEtMSEtMSEtMSFYWFhYWFhYWFhYWFgwMDA3 threeDSecureVersion: '1.0' directCurrencyConversionOffer: null DCC Offer: description: Example response for when a DCC Offer is proposed. value: threeDSecureResponse: null directCurrencyConversionOffer: dccPaymentTransactionKey: MSFYWFhYWFhYWFhYWFg0NDQ0IUFVRCEyODA0LjAwITAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMA-- currencyCode: AUD rateValue: 2.0 amount: 2804.0 '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Paying with a Blacklisted Card: description: Example response when attempting to pay with a blacklisted card without a reason. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is None. rawMessage: Blacklisted Card, the reason given is None. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Lost Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as lost. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Lost. rawMessage: Blacklisted Card, the reason given is Lost. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Stolen Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as stolen. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Stolen. rawMessage: Blacklisted Card, the reason given is Stolen. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Chargedback Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as chargedback. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is ChargedBack. rawMessage: Blacklisted Card, the reason given is ChargedBack. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Inexistent or inactive payment method: description: Example response when the payment method is inexistent or inactive. Please see /resources/PaymentMethods for valid codes. value: errors: - id: null code: nsk:Exceptions:OutOfRange message: nsk:Exceptions:OutOfRange type: Validation details: null rawMessage: '"The value ''DT'' is out of range for ''PaymentMethodRequest.PaymentMethodCode''.\nExpected values: (AC,AG,AP,AX,BD,BN,CA,CF,CK,DI,EA,EM,HP,IF,LP,LY,MC,OM,PP,PS,SO,SW,TA,TV,VI,VO)"' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/{paymentKey}: get: tags: - booking/payments summary: Gets a specific payment. description: 'GraphQL endpoint: payments' operationId: nsk_v1_booking_payments_paymentKey_get parameters: - name: paymentKey in: path required: true description: Payment key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPayment' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] delete: tags: - booking/payments summary: Deletes the payment. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentDelete' operationId: nsk_v1_booking_payments_paymentKey_delete parameters: - name: paymentKey in: path required: true description: Payment key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/{paymentKey}/authorize: patch: tags: - booking/payments summary: Manually authorize a committed payment. description: 'NOTE: This endpoint takes a singular property for the request body and as such the request will need to be formatted differently than what it typically looks like. For more information, please see https://navitaire-developer-digital-api.azurewebsites.net/articles/Miscellaneous/UniqueInputSingleRequestBodiesREST and the Swagger request examples. This endpoint is to be used with caution and is only permissible to use under certain circumstances. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentAuthorizev3' operationId: nsk_v2_booking_payments_paymentKey_authorize_patch parameters: - name: paymentKey in: path required: true description: The payment key. schema: type: string x-position: 1 requestBody: x-name: authorizationCode description: The authorization code. content: application/json: schema: type: string examples: Manual Authorize JSON request body, with an authorization code: description: Example request for when you want to authorize a payment. value: ac89c98fdajldsfa required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/{paymentKey}/decline: patch: tags: - booking/payments summary: Manually decline a committed payment. description: 'This endpoint is to be used with caution and is only permissible to use under certain circumstances. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentDeclinev3' operationId: nsk_v2_booking_payments_paymentKey_decline_patch parameters: - name: paymentKey in: path required: true description: The payment key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/{paymentMethod}/dcc: post: tags: - booking/payments summary: 'Gets the available direct currency codes offer. This is for making an inline DCC payment.' description: 'This endpoint behaves like a GET but is masked as a POST. If a DCC offer is accepted the payment transaction will need to be completed before getting another DCC offer. For example, a user cannot get a DCC offer for a VISA, get a DCC offer for a MasterCard and then accept the VISA DCC offer and pay with the VISA. The only way to complete this would be to get a DCC offer on one card, accept, and then pay and then get the DCC offer for another card, accept, and pay. Regardless of whether the offer is accepted or not, the endpoint /api/nsk/v6/booking/payments/dcc/{dccKey} will need to be called.' operationId: nsk_v1_booking_payments_paymentMethod_dcc_post parameters: - name: paymentMethod in: path required: true description: The payment method code. schema: type: string x-position: 1 requestBody: x-name: request description: The DCC availability request. content: application/json: schema: $ref: '#/components/schemas/DccAvailabilityBaseRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfDirectCurrencyConversionAvailability' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/allocations: get: tags: - booking/payments summary: 'Gets the payment allocations for the booking in state. Payment allocations are a collection of the payments assigned to each passenger on the booking.' description: 'GraphQL endpoint: paymentAllocations' operationId: nsk_v1_booking_payments_allocations_get responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentAllocations' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/available: get: tags: - booking/payments summary: Retrieves the booking payment methods available for the booking in state. description: 'Requires a booking in state. GraphQL endpoint: paymentsAvailablev2' operationId: nsk_v2_booking_payments_available_get parameters: - name: currencyCode in: query description: The optional currency code. Defaults to the logged in users currency code. schema: type: - string - 'null' x-position: 1 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIDictionaryOfStringAndPaymentMethod' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/blacklist: post: tags: - booking/payments summary: Adds the booking payment to the blacklist. description: 'GraphQL endpoint: paymentsBlacklistAdd' operationId: nsk_v1_booking_payments_blacklist_post requestBody: x-name: request description: The blacklist payment request. content: application/json: schema: $ref: '#/components/schemas/BlacklistPaymentEntry' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/blacklist/{paymentKey}: get: tags: - booking/payments summary: Retrieves the specified blacklisted payment. description: 'GraphQL endpoint: paymentsBlacklistGet' operationId: nsk_v1_booking_payments_blacklist_paymentKey_get parameters: - name: paymentKey in: path required: true description: The unique identifier of the blacklisted payment to retrieve. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfBlacklistPaymentEntry' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] patch: tags: - booking/payments summary: Modifies the specified blacklisted payment. description: 'GraphQL endpoint: paymentsBlacklistModify' operationId: nsk_v1_booking_payments_blacklist_paymentKey_patch parameters: - name: paymentKey in: path required: true description: The unique identifier of the blacklisted payment to modify. schema: type: string x-position: 1 requestBody: x-name: request description: The modify blacklisted payment request. content: application/json: schema: $ref: '#/components/schemas/DeltaMapperOfBlacklistPaymentEntryEditRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] delete: tags: - booking/payments summary: Removes the specified payment from the blacklist. description: 'GraphQL endpoint: paymentsBlacklistDelete' operationId: nsk_v1_booking_payments_blacklist_paymentKey_delete parameters: - name: paymentKey in: path required: true description: 'The unique identifier of the payment to be removed from the blacklist. ' schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/blacklist/{paymentKey}: get: tags: - booking/payments summary: Retrieves the specified blacklisted payment. description: 'GraphQL endpoint: paymentsBlacklistGetv2' operationId: nsk_v2_booking_payments_blacklist_paymentKey_get parameters: - name: paymentKey in: path required: true description: The unique identifier of the blacklisted payment to retrieve. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfGetBlacklistPaymentEntryResponse' examples: Retrieve Blacklisted Payment: description: Successful retrieval of the blacklisted payment. value: data: reason: 2 notes: The credit card was lost startDate: '2026-07-10T05:55:13.7045443Z' endDate: '2026-07-14T05:55:13.7045567Z' paymentKey: MzU5NTcxITEhTUMhMzg1MjAy createdDate: '2026-07-09T05:55:13.7045061Z' modifiedDate: '2026-07-12T05:55:13.7045291Z' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Payment Not Found: description: Payment key does not exist in the booking in state value: errors: - code: nsk:Payment:PaymentKeyNotFoundOnBooking message: The payment key FdZvq0FzTaNkJ8M6dKtU is not found on the booking in state. type: Validation number: null details: paymentKey: FdZvq0FzTaNkJ8M6dKtU No Booking in State: description: No booking was put into state before retrieving a blacklisted payment. value: errors: - code: nsk:Booking:NoBookingInState message: No booking was found in session, cannot perform operation. type: Validation number: null details: null '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/bookingCredit: get: tags: - booking/payments summary: Gets credit available from a past booking. description: 'See booking retrieve. This method uses the same validation rules. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentBookingCreditsv3' operationId: nsk_v2_booking_payments_bookingCredit_get parameters: - name: CurrencyCode in: query description: "The currency code of the account.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 1 - name: RecordLocator in: query description: "Record locator being requested.\n " schema: type: - string - 'null' maxLength: 12 minLength: 0 x-position: 2 - name: EmailAddress in: query description: "The email address of a contact.\n " schema: type: - string - 'null' maxLength: 266 minLength: 0 x-position: 3 - name: Origin in: query description: "The origin station code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 3 x-position: 4 - name: FirstName in: query description: "The first name of a passenger or contact.\n " schema: type: - string - 'null' maxLength: 32 minLength: 0 x-position: 5 - name: LastName in: query description: "The last name of a passenger or contact.\n " schema: type: - string - 'null' maxLength: 32 minLength: 0 x-position: 6 - name: CustomerNumber in: query description: "One of the passengers customer numbers applied.\n " schema: type: - string - 'null' maxLength: 20 minLength: 0 x-position: 7 - name: DepartureDate in: query description: "The first journeys departure date.\n " schema: type: - string - 'null' format: date-time x-position: 8 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfCreditAccount' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Invalid search criteria: description: The search parameters used did not meet the configured strategy in the Management Console. For more information about setting up the strategies, please refer to the Navitaire Developer Portal. value: errors: - id: null code: nsk:Booking:GeneralRestriction message: nsk:Booking:GeneralRestriction type: Validation details: null rawMessage: Invalid search criteria exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Validation failed: description: The booking associated with the record locator is not found or the provided search parameters didn't match with the booking. The value for the `rawMessage` might differ depending on the strategy used. Aside from the first and last name, it could be email, customer number, last name or origin and departure date. value: errors: - id: null code: nsk:Booking:GeneralRestriction message: nsk:Booking:GeneralRestriction type: Validation details: null rawMessage: First and last name validation failed exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Agent not allowed to view past-dated bookings: description: The agent is not allowed to retrieve past-dated bookings that are outside the configured number of days in the Management Console. value: errors: - id: null code: nsk-server:AuthorizationViewPastDatedBookingNotAllowed message: nsk-server:AuthorizationViewPastDatedBookingNotAllowed type: Validation details: null rawMessage: Agent is not allowed to retrieve the booking. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/bookingCredit: post: tags: - booking/payments summary: Applies credit from a past booking. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentBookingCreditsAddv4' operationId: nsk_v3_booking_payments_bookingCredit_post requestBody: x-name: request description: Apply booking credit request. content: application/json: schema: $ref: '#/components/schemas/ApplyBookingCreditRequestv2' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Invalid search criteria: description: The search parameters used did not meet the configured strategy in the Management Console. For more information about setting up the strategies, please refer to the Navitaire Developer Portal. value: errors: - id: null code: nsk:Booking:GeneralRestriction message: nsk:Booking:GeneralRestriction type: Validation details: null rawMessage: Invalid search criteria exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Validation failed: description: The booking associated with the record locator is not found or the provided search parameters didn't match with the booking. The value for the `rawMessage` might differ depending on the strategy used. Aside from the first and last name, it could be email, customer number, last name or origin and departure date. value: errors: - id: null code: nsk:Booking:GeneralRestriction message: nsk:Booking:GeneralRestriction type: Validation details: null rawMessage: First and last name validation failed exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Agent not allowed to view past-dated bookings: description: The agent is not allowed to retrieve past-dated bookings that are outside the configured number of days in the Management Console. value: errors: - id: null code: nsk-server:AuthorizationViewPastDatedBookingNotAllowed message: nsk-server:AuthorizationViewPastDatedBookingNotAllowed type: Validation details: null rawMessage: Agent is not allowed to retrieve the booking. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/credit: post: tags: - booking/payments summary: Applies credit by reference number and type. description: 'This endpoint is for agents and can apply credit for any user or type. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentCreditsAddv3' operationId: nsk_v3_booking_payments_credit_post requestBody: x-name: request description: Apply credit request. content: application/json: schema: $ref: '#/components/schemas/ApplyCreditAccountRequestv2' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/credit: get: tags: - booking/payments summary: Gets credit available by reference number and type. description: 'This endpoint is for agents and can get credit available for any user or type. GraphQL endpoint: paymentCreditsv2' operationId: nsk_v2_booking_payments_credit_get parameters: - name: ReferenceNumber in: query description: "The account reference. This will be the record locator, customer account number, or organization code depending on\nthe type.\n " schema: type: - string - 'null' maxLength: 20 minLength: 1 x-position: 1 - name: CurrencyCode in: query description: "The currency code of the account.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 2 - name: Type in: query description: "Defines the type of credit being applied.\n \nEnumeration values: 0 = Customer, 1 = Booking, 2 = Organization" schema: $ref: '#/components/schemas/CreditType' x-position: 3 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfCreditAccount' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/customerCredit: post: tags: - booking/payments summary: Applies credit from the logged in customer to the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentCustomerCreditsAddv3' operationId: nsk_v3_booking_payments_customerCredit_post requestBody: x-name: request description: Apply credit request. content: application/json: schema: $ref: '#/components/schemas/ApplyCreditRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/customerCredit: get: tags: - booking/payments summary: Gets credit available for the logged in user on the booking in state. description: 'Depending on configuration, credit may be validated by the contacts and passengers on the booking. GraphQL endpoint: paymentCustomerCreditsv2' operationId: nsk_v2_booking_payments_customerCredit_get parameters: - name: CurrencyCode in: query description: "The currency code of the account.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfCreditAccount' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v6/booking/payments/dcc/{dccKey}: post: tags: - booking/payments summary: 'Creates a new external payment with direct currency conversion. This endpoint is used for inline DCC payments only.' description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` If a DCC offer is accepted the payment transaction will need to be completed before getting another DCC offer. For example, a user cannot get a DCC offer for a VISA, get a DCC offer for a MasterCard and then accept the VISA DCC offer and pay with the VISA. The only way to complete this would be to get a DCC offer on one card, accept, and then pay and then get the DCC offer for another card, accept, and pay. Regardless of whether the offer is accepted or not, the endpoint /api/nsk/v5/booking/payments/dcc/{dccKey} will need to be called. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) GraphQL endpoint: paymentDccAddv6' operationId: nsk_v6_booking_payments_dcc_dccKey_post parameters: - name: dccKey in: path required: true description: The DCC key. schema: type: string x-position: 1 - name: termUrl in: query description: The term url. schema: type: - string - 'null' x-position: 3 requestBody: x-name: request description: The DCC request. content: application/json: schema: $ref: '#/components/schemas/DccRequestBasev2' required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfThreeDSecureResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Paying with a Blacklisted Card: description: Example response when attempting to pay with a blacklisted card without a reason. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is None. rawMessage: Blacklisted Card, the reason given is None. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Lost Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as lost. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Lost. rawMessage: Blacklisted Card, the reason given is Lost. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Stolen Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as stolen. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Stolen. rawMessage: Blacklisted Card, the reason given is Stolen. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Chargedback Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as chargedback. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is ChargedBack. rawMessage: Blacklisted Card, the reason given is ChargedBack. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Inexistent or inactive payment method: description: Example response when the payment method is inexistent or inactive. Please see /resources/PaymentMethods for valid codes. value: errors: - id: null code: nsk:Exceptions:OutOfRange message: nsk:Exceptions:OutOfRange type: Validation details: null rawMessage: '"The value ''DT'' is out of range for ''PaymentMethodRequest.PaymentMethodCode''.\nExpected values: (AC,AG,AP,AX,BD,BN,CA,CF,CK,DI,EA,EM,HP,IF,LP,LY,MC,OM,PP,PS,SO,SW,TA,TV,VI,VO)"' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/dcc/{dccPaymentTransactionKey}: post: tags: - booking/payments summary: Adds a dcc payment to the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` NOTE: This endpoint takes a singular property for the request body and as such the request will need to be formatted differently than what it typically looks like. For more information, please see https://navitaire-developer-digital-api.azurewebsites.net/articles/Miscellaneous/UniqueInputSingleRequestBodiesREST and the Swagger request examples. If the system using this endpoint cannot display a dcc offer to the end user, the status should be updated to DccNotOffered. This indicates that the offer was not displayed to the end user and is it to be accepted automatically. A 202 (HTTP status code) response returns alternate data signifying that Three D Secure was enabled for this payment and is required for this payment type. The payment will need to be resent using the 3DS endpoint. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT)' operationId: nsk_v1_booking_payments_dcc_dccPaymentTransactionKey_post parameters: - name: dccPaymentTransactionKey in: path required: true description: The dcc payment transaction key. schema: type: string x-position: 1 requestBody: x-name: status description: The dcc status. content: application/json: schema: type: string examples: Accepting a Dcc Offer JSON request body, 1: description: Example request for when wanting to accept a dcc offer. value: 2 Accepting a Dcc Offer JSON request body, 2: description: Example request for when wanting to accept a dcc offer. value: DccOfferAccepted required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfThreeDSecureResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/fees/{feeCode}: post: tags: - booking/payments summary: 'Retrieves the payment fee for the fee code by providing the account number and payment method code for a manual form of payment.' description: 'This endpoint behaves like a GET endpoint but is masked as POST. GraphQL endpoint: paymentFeeManual' operationId: nsk_v1_booking_payments_fees_feeCode_post parameters: - name: feeCode in: path required: true description: The feeCode. schema: type: string x-position: 1 requestBody: x-name: request description: The payment fee price request. content: application/json: schema: $ref: '#/components/schemas/ManualPaymentFeeRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentFeeResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/fees/{feeCode}/storedPayment/{storedPaymentKey}: get: tags: - booking/payments summary: 'Retrieves the payment fee for the fee code by providing the stored payment key for a stored payment. The stored payment key will be able to provide to retrieve the account number, payment method code and account number id.' description: 'GraphQL endpoint: paymentFeeStored' operationId: nsk_v1_booking_payments_fees_feeCode_storedPayment_storedPaymentKey_get parameters: - name: feeCode in: path required: true description: The fee code. schema: type: string x-position: 1 - name: storedPaymentKey in: path required: true description: The stored payment key of the agent holding the session. schema: type: string x-position: 2 - name: Amount in: query description: "The amount being payed.\n " schema: type: number format: decimal x-position: 3 - name: CurrencyCode in: query description: "The currency code. This will default to the bookings currency code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 4 - name: CollectedCurrencyCode in: query description: "The optional collected currency code. This will be needed for MCC requests.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 5 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentFeeResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/inProcess: delete: tags: - booking/payments summary: 'Cancels an in-process payment, if one exists, from the session state. This can be used when in the middle of a 3DS, MCC, or DCC payment to remove the payment.' description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: inProcessPaymentDelete' operationId: nsk_v1_booking_payments_inProcess_delete responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/mcc: get: tags: - booking/payments summary: Gets the available multi-currency codes available. description: 'This is affected by the booking currency code. GraphQL endpoint: paymentMccAvailabilityv3' operationId: nsk_v3_booking_payments_mcc_get responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIDictionaryOfStringAndMccCurrencyInformationv2' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v6/booking/payments/mcc/{currencyCode}: post: tags: - booking/payments summary: Creates a new MCC payment. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` This is affected by the booking currency code. The MCC payment cannot have the same currency code in the URL and body. In a normal MCC rate scenario, the rate ID and exchange rate payment fields are auto-populated and should not be passed in manually. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent Accept GraphQL endpoint: paymentMccAddv6' operationId: nsk_v6_booking_payments_mcc_currencyCode_post parameters: - name: currencyCode in: path required: true description: The collected currency code. schema: type: string x-position: 1 - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 3 requestBody: x-name: request description: The payment method request. content: application/json: schema: $ref: '#/components/schemas/MccPaymentMethodRequest' examples: Normal MCC Payment Request: description: Example request for making a normal MCC payment. value: thirdPartyExternalRate: null paymentMethodCode: MC amount: 5.0 deposit: null paymentFields: acctno: '5210000010001001' cC::AccountHolderName: Jim Bob cC::VerificationCode: '123' waiveFees: false currencyCode: null installments: null Third Party External Rate MCC Payment Request: description: NOT RECOMMENDED TO USE. Example request for making an Mcc payment with a third party external rate. value: thirdPartyExternalRate: rateId: v2I0fC quotedCurrency: USD collectedCurrency: AUD exchangeRate: 1.31 paymentMethodCode: MC amount: 5.0 deposit: null paymentFields: acctno: '5210000010001001' cC::AccountHolderName: Jim Bob cC::VerificationCode: '123' waiveFees: null currencyCode: null installments: null required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfThreeDSecureResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Paying with a Blacklisted Card: description: Example response when attempting to pay with a blacklisted card without a reason. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is None. rawMessage: Blacklisted Card, the reason given is None. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Lost Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as lost. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Lost. rawMessage: Blacklisted Card, the reason given is Lost. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Stolen Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as stolen. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Stolen. rawMessage: Blacklisted Card, the reason given is Stolen. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Chargedback Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as chargedback. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is ChargedBack. rawMessage: Blacklisted Card, the reason given is ChargedBack. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Collected currency code is null: description: Example response when the collected currency code is null. It can be set to null by setting it to a URL encoded space value `%20`. value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Error details: null rawMessage: The payment field is invalid. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Invalid payment method code: description: 'Example response when the payment method code is invalid. Invalid can mean the following: inactive, non-existent, payment method type is not external account, unallowed for the role, or unallowed for the request currency code. Please see /resources/PaymentMethods for valid codes.' value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Error details: null rawMessage: The payment field MC is invalid. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Request currency code and collected currency code are the same: description: Example response when the request currency code and collected currency code are the same. value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Error details: null rawMessage: MCC currency code cannot be the same as the payment currency code. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Request currency code and collected currency code are not configured in the external rates: description: Example response when the request currency code and collected currency code are not configured in the external rates. Please see resources/ExternalRates for valid currencies. value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Error details: null rawMessage: The payment field PHP is invalid. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v6/booking/payments/mcc/{currencyCode}/storedPayment/{storedPaymentKey}: post: tags: - booking/payments summary: Creates a new MCC payment from a stored payment. description: 'IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. This is affected by the booking currency code. The MCC payment cannot have the same currency code in the URL and body. In a normal MCC rate scenario, the rate ID and exchange rate payment fields are auto-populated and should not be passed in manually. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent Accept GraphQL endpoint: paymentMccAddStoredv6' operationId: nsk_v6_booking_payments_mcc_currencyCode_storedPayment_storedPaymentKey_post parameters: - name: currencyCode in: path required: true description: The collected currency code. schema: type: string x-position: 1 - name: storedPaymentKey in: path required: true description: Stored payment key. schema: type: string x-position: 2 - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 4 requestBody: x-name: request description: The payment method request. content: application/json: schema: $ref: '#/components/schemas/MccPaymentRequest' examples: Normal MCC Stored Payment Request: description: Example request for making a normal MCC stored payment. value: thirdPartyExternalRate: null amount: 5.0 paymentFields: null currencyCode: null installments: null Third Party External Rate MCC Stored Payment Request: description: NOT RECOMMENDED TO USE. Example request for making an MCC stored payment with a third party external rate. value: thirdPartyExternalRate: rateId: v2I0fC quotedCurrency: USD collectedCurrency: AUD exchangeRate: 1.31 amount: 5.0 paymentFields: null currencyCode: null installments: null required: true x-position: 3 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfThreeDSecureResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Paying with a Blacklisted Card: description: Example response when attempting to pay with a blacklisted card without a reason. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is None. rawMessage: Blacklisted Card, the reason given is None. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Lost Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as lost. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Lost. rawMessage: Blacklisted Card, the reason given is Lost. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Stolen Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as stolen. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Stolen. rawMessage: Blacklisted Card, the reason given is Stolen. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Chargedback Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as chargedback. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is ChargedBack. rawMessage: Blacklisted Card, the reason given is ChargedBack. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Inexistent or inactive payment method: description: Example response when the payment method is inexistent or inactive. Please see /resources/PaymentMethods for valid codes. value: errors: - id: null code: nsk:Exceptions:OutOfRange message: nsk:Exceptions:OutOfRange type: Validation details: null rawMessage: '"The value ''DT'' is out of range for ''PaymentMethodRequest.PaymentMethodCode''.\nExpected values: (AC,AG,AP,AX,BD,BN,CA,CF,CK,DI,EA,EM,HP,IF,LP,LY,MC,OM,PP,PS,SO,SW,TA,TV,VI,VO)"' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/organizationCredit: post: tags: - booking/payments summary: 'Applies credit to the logged-in or specified user''s organization. NOTE: It is not recommended to use a custom agency credit payment as it will not have the same behavior nor be validated like the pre-configured `AG` credit payment.' description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentOrganizationCreditsAddv3' operationId: nsk_v3_booking_payments_organizationCredit_post requestBody: x-name: request description: Apply credit request. content: application/json: schema: $ref: '#/components/schemas/ApplyOrganizationCreditRequest' examples: Apply Organization Credit Request: description: Example request for applying credit to the user's organization. value: waiveFees: true amount: 100.0 currencyCode: USD organizationCreditCode: AG comment: Applying organization credit to the booking. accountReference: SYSTEM required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: With Inactive Payment Method: description: The payment method is unknown or inactive. value: errors: - id: null code: nsk-server:Payment:ValidationError:UnknownOrInactivePaymentMethod message: nsk-server:Payment:ValidationError:UnknownOrInactivePaymentMethod type: Validation details: null rawMessage: Unknown or Inactive PaymentMethod exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. With Payment Method Not Allowed: description: The payment method is not allowed for the role. value: errors: - id: null code: nsk-server:Payment:ValidationError:PaymentMethodNotAllowedForRole message: nsk-server:Payment:ValidationError:PaymentMethodNotAllowedForRole type: Validation details: null rawMessage: Agent is not authorized for requested payment method KJ\AgencyAccount. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. With Invalid Organization Code: description: The organization code in the request does not match the logged-in user's organization code. value: errors: - id: null code: nsk-server:Payment:ValidationError:AccountNumber message: nsk-server:Payment:ValidationError:AccountNumber type: Validation details: null rawMessage: 'Agency payment account number: (SYSTEM) does not match current Organization Code: 5876651' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: With Invalid Account Reference: description: The account reference does not match the logged-in user's organization code. value: errors: - id: null code: nsk:Payment:FundsNotAvailable message: nsk:Payment:FundsNotAvailable type: Error details: null rawMessage: Funds not available. The maximum expected amount is 0. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. With Invalid Payment Method Type: description: The payment method type provided in the request is not of an agency account. value: errors: - id: null code: nsk:Payment:CreditFileNotConfigured message: nsk:Payment:CreditFileNotConfigured type: Validation details: null rawMessage: Credit file is not configured correctly. Verify the credit file in the settings.json file and also the payment method resources. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/organizationCredit: get: tags: - booking/payments summary: Gets credit available for the logged in users organization. description: 'Depending on configuration, credit may be validated by the contacts and passengers on the booking. GraphQL endpoint: paymentOrganizationCreditsv2' operationId: nsk_v2_booking_payments_organizationCredit_get parameters: - name: CurrencyCode in: query description: "The currency code of the account.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfCreditAccount' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/refunds: get: tags: - booking/payments summary: Retrieves the booking payment methods available for a refund on the booking in state. description: 'Requires a booking in state. GraphQL endpoint: paymentRefundsAvailability' operationId: nsk_v1_booking_payments_refunds_get responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIDictionaryOfStringAndPaymentMethod' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v5/booking/payments/refunds: post: tags: - booking/payments summary: Creates a refund for the booking in state. No longer handles Credit Shell or `CS` refunds. description: 'Requires a booking in state. NOTE: CS, credit shell refunds are no longer accepted through this endpoint. It is now recommended to use POST `api/nsk/v1/booking/payments/refunds/creditShell` endpoint for any credit shell refund. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentRefundsAddv5' operationId: nsk_v5_booking_payments_refunds_post requestBody: x-name: request description: The request for the refund. content: application/json: schema: $ref: '#/components/schemas/PaymentRefundRequestv2' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v4/booking/payments/refunds: post: tags: - booking/payments summary: Creates a refund for the booking in state. description: 'Requires a booking in state. Credit shell payment types will default to a customer credit if logged in. If not logged in a booking credit will be applied. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentRefundsAddv4' operationId: nsk_v4_booking_payments_refunds_post requestBody: x-name: request description: The payment reversal request. content: application/json: schema: $ref: '#/components/schemas/PaymentRefundRequest' required: true x-position: 1 responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/refunds/creditShell: post: tags: - booking/payments summary: Creates a credit shell refund for the booking in state. description: 'Requires a booking in state. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentRefundsCreditShell' operationId: nsk_v1_booking_payments_refunds_creditShell_post requestBody: x-name: request description: The credit shell refund request. content: application/json: schema: $ref: '#/components/schemas/CreditShellRefundRequest' required: true x-position: 1 responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: No Booking In State: description: Example of no booking in state. value: errors: - id: null code: nsk:Booking:NoBookingInState message: No booking was found in session, cannot perform operation. type: Error details: null rawMessage: null exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Invalid Credit Shell Account Type: description: Example of anonymous user attempting to create a customer credit. value: errors: - id: null code: nsk:Payment:InvalidCreditShellAccountType message: The payment credit shell account type CustomerNumber is not valid for the current user. type: Error details: null rawMessage: null exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Invalid Payment Method Code For Refund: description: Example of sending an empty or invalid refund request. value: errors: - id: null code: nsk:Payment:PaymentMethodCodeInvalidForRefund message: The payment method code CS is not allowed for refund. type: Error details: null rawMessage: null exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/refunds/customerCredit: post: tags: - booking/payments summary: Creates a customer credit for a specified customer. description: 'Requires a booking in state and an agent token. Agents should use /refunds endpoint for booking credits. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentRefundsCustomerCreditv4' operationId: nsk_v3_booking_payments_refunds_customerCredit_post parameters: - name: skipBalanceValidation in: query description: Indicates whether the validation of the booking balance should be skipped. schema: type: - boolean - 'null' x-position: 2 requestBody: x-name: request description: The customer credit refund request. content: application/json: schema: $ref: '#/components/schemas/CustomerCreditRefundRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/refunds/organizationCredit: post: tags: - booking/payments summary: 'Creates an organization account refund for a payment from the booking in state.' description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: organizations2PaymentRefundAddv3' operationId: nsk_v3_booking_payments_refunds_organizationCredit_post requestBody: x-name: request description: The organization refund request. content: application/json: schema: $ref: '#/components/schemas/OrganizationRefundRequestv2' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/refunds/organizationCredit: post: tags: - booking/payments summary: 'Creates an organization account refund for a payment from the booking in state.' description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: organizations2PaymentRefundAddv2' operationId: nsk_v2_booking_payments_refunds_organizationCredit_post requestBody: x-name: request description: The organization refund request. content: application/json: schema: $ref: '#/components/schemas/OrganizationRefundRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/reversals: post: tags: - booking/payments summary: Reverses a payment for the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` This endpoint works similarly with the refund endpoint (POST api/nsk/v4/booking/payments/refunds), but agent-only permissions are needed and does not require a zero or negative booking balance for processing. Requires a booking in state. Credit shell payment types will default to a customer credit if logged in. If not logged in a booking credit will be applied. GraphQL endpoint: paymentReversalsAdd' operationId: nsk_v1_booking_payments_reversals_post requestBody: x-name: request description: The payment reversal request. content: application/json: schema: $ref: '#/components/schemas/PaymentReversalRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/reversals: post: tags: - booking/payments summary: Reverses a payment for the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` This endpoint works similarly with the refund endpoint (POST api/nsk/v4/booking/payments/refunds), but agent-only permissions are needed and does not require a zero or negative booking balance for processing. Requires a booking in state. NOTE: CS, credit shell refunds are no longer accepted through this endpoint. It is now recommended to use POST `api/nsk/v1/booking/payments/refunds/creditShell` endpoint for any credit shell refund. GraphQL endpoint: paymentReversalsAddv2' operationId: nsk_v2_booking_payments_reversals_post requestBody: x-name: request description: The payment reversal request. content: application/json: schema: $ref: '#/components/schemas/PaymentReversalRequestv2' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v7/booking/payments/storedPayment/{storedPaymentKey}: post: tags: - booking/payments summary: Creates a payment using the stored payment information for the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` Account Number and Expiration Date are stored. With stored payments, payment fields may still be required to complete the transaction. For example, a credit card that requires address information, this information is not stored with the stored payment. A 202 (HTTP status code) response returns alternate data signifying that either Three D Secure was enabled for this payment and is required for this payment type or a direct currency conversion (Dcc) offer was given. The payment will need to be resent using the 3DS endpoint or the Dcc endpoint. Note that it is possible for a payment to return a dcc offer and also have three d secure enabled. In these cases the direct currency conversion offer will need to be handled first and then the three d secure payment can be handled. If you would like to make a Dcc offer and the system using this endpoint cannot display a dcc offer to the end user, the status should be updated to DccNotOffered. This indicates that the offer was not displayed to the end user and is to be accepted automatically. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) GraphQL endpoint: paymentAddStoredv7' operationId: nsk_v7_booking_payments_storedPayment_storedPaymentKey_post parameters: - name: storedPaymentKey in: path required: true description: Stored payment key. schema: type: string x-position: 1 - name: termUrl in: query description: The term url. schema: type: - string - 'null' x-position: 3 requestBody: x-name: request description: Payment request. content: application/json: schema: $ref: '#/components/schemas/StoredPaymentRequest' required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentInformation' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Paying with a Blacklisted Card: description: Example response when attempting to pay with a blacklisted card without a reason. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is None. rawMessage: Blacklisted Card, the reason given is None. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Lost Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as lost. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Lost. rawMessage: Blacklisted Card, the reason given is Lost. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Stolen Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as stolen. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is Stolen. rawMessage: Blacklisted Card, the reason given is Stolen. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Paying with a Chargedback Blacklisted Card: description: Example response when attempting to pay with a blacklisted card tagged as chargedback. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk-server:Payment:ValidationError:BlackListedCard message: nsk-server:Payment:ValidationError:BlackListedCard type: Validation details: blacklistErrorMessage: Blacklisted Card, the reason given is ChargedBack. rawMessage: Blacklisted Card, the reason given is ChargedBack. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Inexistent or inactive payment method: description: Example response when the payment method is inexistent or inactive. Please see /resources/PaymentMethods for valid codes. value: errors: - id: null code: nsk:Exceptions:OutOfRange message: nsk:Exceptions:OutOfRange type: Validation details: null rawMessage: '"The value ''DT'' is out of range for ''PaymentMethodRequest.PaymentMethodCode''.\nExpected values: (AC,AG,AP,AX,BD,BN,CA,CF,CK,DI,EA,EM,HP,IF,LP,LY,MC,OM,PP,PS,SO,SW,TA,TV,VI,VO)"' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v6/booking/payments/threeDSecure: post: tags: - booking/payments summary: Creates a new ThreeDSecure external payment or prepaid payment on the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` A call to payments post should be made first and processed to verify a 3DS payment is required. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) GraphQL endpoint: paymentThreeDSecureAddv6' operationId: nsk_v6_booking_payments_threeDSecure_post parameters: - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 2 requestBody: x-name: request description: Payment request. content: application/json: schema: $ref: '#/components/schemas/ThreeDSecurePaymentMethodRequestv3' examples: Request: description: Example request for Three D Secure v6 POST. value: paRes: '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 ' paReq: eNpdkk1TwjAQhu/5FQzjuWlSEIZZMgPiKAeBgQqOt5ju0Cr9IG35+vUmpRU1p302u8m+bwJ+qBEnK1SlRgEvmOdyi60oGLafXmfvU/3pr8rLfBN6matj1hawGC1xL+CAOo/SRDDHdTjQBok5QqtQJoUAqfbj6Ux0u13P84DWSCBGPZ0I1yyg15hAImMUM3mIChlpdFQaA61yBFRaJoU+i37H1DdAoNQ7ERZFlg8oPR6Pzr9mu02A3qZZlDbKjchTFIglW883X7uz3C394C1brPn2oibj84f/OARqKwgEskDBXe65jPEWdwe8P2BGSJUnIGM7i7jzuGOV1EggsxeNruRxu/U7Y/SUWmOiGkENEcBTliZoaoyfP7EZA3MlfMwLl5m7LRhdNzUPz9ZpVRgb71mv0+lVVldcHRkZtzi3vTWYbttD64ek9Zub6M9f+Ab9FK9z paymentTransactionKey: R1VOWklyalRTdXpPV2gzcDBybTEhMSEtMSEtMSEtMSFYWFhYWFhYWFhYWFgwMDA3 required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v7/booking/payments/threeDSecure: post: tags: - booking/payments summary: Creates a new ThreeDSecure external payment or prepaid payment on the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` A call to payments post should be made first and processed to verify a 3DS payment is required. If you would like to make a ThreeDSecure payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) GraphQL endpoint: paymentThreeDSecureAddv6' operationId: nsk_v7_booking_payments_threeDSecure_post parameters: - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 2 requestBody: x-name: request description: Payment request. content: application/json: schema: $ref: '#/components/schemas/ThreeDSecurePaymentMethodRequestv3' examples: Request: description: Example request for Three D Secure v6 POST. value: paRes: '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 ' paReq: eNpdkk1TwjAQhu/5FQzjuWlSEIZZMgPiKAeBgQqOt5ju0Cr9IG35+vUmpRU1p302u8m+bwJ+qBEnK1SlRgEvmOdyi60oGLafXmfvU/3pr8rLfBN6matj1hawGC1xL+CAOo/SRDDHdTjQBok5QqtQJoUAqfbj6Ux0u13P84DWSCBGPZ0I1yyg15hAImMUM3mIChlpdFQaA61yBFRaJoU+i37H1DdAoNQ7ERZFlg8oPR6Pzr9mu02A3qZZlDbKjchTFIglW883X7uz3C394C1brPn2oibj84f/OARqKwgEskDBXe65jPEWdwe8P2BGSJUnIGM7i7jzuGOV1EggsxeNruRxu/U7Y/SUWmOiGkENEcBTliZoaoyfP7EZA3MlfMwLl5m7LRhdNzUPz9ZpVRgb71mv0+lVVldcHRkZtzi3vTWYbttD64ek9Zub6M9f+Ab9FK9z paymentTransactionKey: R1VOWklyalRTdXpPV2gzcDBybTEhMSEtMSEtMSEtMSFYWFhYWFhYWFhYWFgwMDA3 required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPayment' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/threeDSecureRedirect: post: tags: - booking/payments summary: Creates a new ThreeDSecure Redirect external payment or prepaid payment on the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` A call to payments post should be made first and processed to verify a 3DS payment is required. If you would like to make a ThreeDSecure Redirect payment, you will need to provide a valid term url. You will also need to have these headers populated: User Agent (USER-AGENT) Accept (ACCEPT) GraphQL endpoint: paymentThreeDSecureRedirectAdd' operationId: nsk_v1_booking_payments_threeDSecureRedirect_post parameters: - name: termUrl in: query description: The term URL. schema: type: - string - 'null' x-position: 2 requestBody: x-name: request description: Payment request. content: application/json: schema: $ref: '#/components/schemas/ThreeDSecurePaymentMethodRequestv3' examples: Request: description: Example request for Three D Secure Redirect POST. value: paRes: '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 ' paReq: eNpdkk1TwjAQhu/5FQzjuWlSEIZZMgPiKAeBgQqOt5ju0Cr9IG35+vUmpRU1p302u8m+bwJ+qBEnK1SlRgEvmOdyi60oGLafXmfvU/3pr8rLfBN6matj1hawGC1xL+CAOo/SRDDHdTjQBok5QqtQJoUAqfbj6Ux0u13P84DWSCBGPZ0I1yyg15hAImMUM3mIChlpdFQaA61yBFRaJoU+i37H1DdAoNQ7ERZFlg8oPR6Pzr9mu02A3qZZlDbKjchTFIglW883X7uz3C394C1brPn2oibj84f/OARqKwgEskDBXe65jPEWdwe8P2BGSJUnIGM7i7jzuGOV1EggsxeNruRxu/U7Y/SUWmOiGkENEcBTliZoaoyfP7EZA3MlfMwLl5m7LRhdNzUPz9ZpVRgb71mv0+lVVldcHRkZtzi3vTWYbttD64ek9Zub6M9f+Ab9FK9z paymentTransactionKey: R1VOWklyalRTdXpPV2gzcDBybTEhMSEtMSEtMSEtMSFYWFhYWFhYWFhYWFgwMDA3 required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPayment' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v4/booking/payments/voucher: post: tags: - booking/payments summary: Creates a new voucher payment on the booking in state. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentVouchersAddv4' operationId: nsk_v4_booking_payments_voucher_post requestBody: x-name: request description: The request for payment with a voucher. content: application/json: schema: $ref: '#/components/schemas/VoucherPaymentRequest' required: true x-position: 1 responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Invalid payment method code: description: 'Example response when the payment method code is invalid. Invalid can mean the following: inactive, non-existent, payment method type is not voucher, unallowed for the role, or unallowed for the request currency code. Please see /resources/PaymentMethods for valid codes.' value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Validation details: null rawMessage: The payment field VO is invalid. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v3/booking/payments/voucher: get: tags: - booking/payments summary: 'Gets information regarding a specific voucher code and validates whether the referenced voucher exists as a voucher payment in the booking in state.' description: 'GraphQL endpoint: paymentVouchersv3' operationId: nsk_v3_booking_payments_voucher_get parameters: - name: ReferenceCode in: query description: "The voucher reference code.\n " schema: type: - string - 'null' maxLength: 20 minLength: 1 x-position: 1 - name: OverrideRestrictions in: query description: "Override restrictions. Defaults to false.\n " schema: type: - boolean - 'null' x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfVoucherInformation' examples: Valid Voucher Requested: description: Example Voucher Returned value: data: calculatedAmount: 7.0 customerNumber: null foreignCalculatedAmount: 0.0 foreignCalculatededCurrencyCode: null foreignReversableAmount: 0.0 nameRestriction: 0 redeemableAmount: 7.0 reversableAmount: 0.0 foreignAvailableCurrencyCode: '' availableAmount: 1000.0 foreignCurrencyCode: null foreignAmount: 1000.0 type: 1 password: null recordLocator: null transactions: null voucherKey: voucherKey reference: voucherReferenceNumber configurationCode: VOUCH status: 0 available: 1000.0 firstName: null lastName: null personKey: null voucherIssuanceKey: voucherIssuanceKey expiration: null currencyCode: USD amount: 1000.0 All Fields Filled Voucher Response: description: Example Voucher Returned value: data: calculatedAmount: 124.0 customerNumber: customerNumber foreignCalculatedAmount: 0.0 foreignCalculatededCurrencyCode: '' foreignReversableAmount: 0.0 nameRestriction: 2 redeemableAmount: 0.0 reversableAmount: 0.0 foreignAvailableCurrencyCode: '' availableAmount: 0.0 foreignCurrencyCode: '' foreignAmount: 0.0 type: 0 password: NOTSUPPORTED recordLocator: XXXXXX transactions: - voucherTransactionKey: voucherTransactionKey type: 1 recordLocator: XXXXXX foreignCurrencyCode: '' foreignAmount: 0.0 currencyCode: USD amount: 100.0 - voucherTransactionKey: voucherTransactionKey1 type: 0 recordLocator: XXXXXX foreignCurrencyCode: '' foreignAmount: 0.0 currencyCode: USD amount: 100.0 voucherKey: voucherKey reference: voucherReferenceNumber configurationCode: VOUCH status: 2 available: 0.0 firstName: firstName lastName: lastName personKey: personKey voucherIssuanceKey: voucherIssuanceKey expiration: '2026-07-10T00:00:00+00:00' currencyCode: USD amount: 100.0 '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Voucher Calculated Amount is 0: description: Example error if a voucher has a calculated amount of 0, or doesn't belong to the requester. value: errors: - id: null code: nsk:Voucher:VoucherUnavailable message: Requested Voucher has no Redeemable Balance. This can be due to any number of reasons including Balance already used, Balance already applied, Voucher doesn’t apply to Booking, Restriction on Voucher, Voucher doesn’t belong to Requested User, etc. type: Error details: null rawMessage: null exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. messages: - code: nsk:Voucher:VoucherValidationWarning type: VoucherValidation value: nsk:Voucher:VoucherValidationWarning status: 0 details: voucherWarningMessage: 'Journey: NV5610 Sat, 18Nov SLC-BOS 19:00-23:59 did not match any of the voucher market restrictions.' data: null Voucher Reference Not Supplied: description: Example error if no Voucher Reference is included on the request. value: errors: - id: null code: VoucherRequest.ReferenceCode:RequiredAttribute message: The VoucherRequest field is required. type: Validation details: validation: RequiredAttribute model: VoucherRequest member: ReferenceCode rawMessage: null exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null '403': description: There was a problem authorizing the request. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v2/booking/payments/voucher/{voucherPaymentReference}: delete: tags: - booking/payments summary: Reverses a voucher payment on the booking in state. This refunds the claimed amount on the voucher. description: '`IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems.` GraphQL endpoint: paymentVoucherDeletev2' operationId: nsk_v2_booking_payments_voucher_voucherPaymentReference_delete parameters: - name: voucherPaymentReference in: path required: true description: Voucher payment reference. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/voucher/passenger/{passengerKey}: post: tags: - booking/payments summary: Creates a new voucher payment for a specified passenger. description: 'For a passenger-select voucher to be shared across passengers, please use the standard voucher payment endpoint. IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentPassengerVouchersAdd' operationId: nsk_v1_booking_payments_voucher_passenger_passengerKey_post parameters: - name: passengerKey in: path required: true description: Passenger key. schema: type: string x-position: 1 requestBody: x-name: request description: Passenger voucher payment request. content: application/json: schema: $ref: '#/components/schemas/VoucherPaymentRequest' required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfPaymentInformation' '409': description: Concurrent changes were being made in the same session. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Invalid payment method code: description: 'Example response when the payment method code is invalid. Invalid can mean the following: inactive, non-existent, payment method type is not voucher, unallowed for the role, or unallowed for the request currency code. Please see /resources/PaymentMethods for valid codes.' value: errors: - id: null code: nsk:Payment:FieldInvalid message: nsk:Payment:FieldInvalid type: Error details: null rawMessage: The payment field VO is invalid. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /api/nsk/v1/booking/payments/voucher/reassess: put: tags: - booking/payments summary: 'Reassess the voucher payments on the current booking in state. This will reverse non-adjustable voucher payments to balance the voucher when the booking is overpaid. The use of the voucher is not considered in the reassessment of a non-adjustable voucher payment. Multi-use without adjustment vouchers will be prioritized over single-use without adjustment vouchers. Vouchers with a longer expiration date will also be prioritized. The voucher type will be honored first and then the expiration date.' description: 'IMPORTANT: This endpoint should NOT be called concurrently using the same session token to avoid performance problems. GraphQL endpoint: paymentVouchersReassess' operationId: nsk_v1_booking_payments_voucher_reassess_put responses: '200': description: The item was updated successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Agent Unauthorized to Reassess Voucher: description: Example response when the agent isn't authorized to reassess vouchers. value: errors: - id: 566a64d8-23f9-0568-3712-612449e0ae91 code: nsk-server:PaymentsDidNotPassValidation message: nsk-server:PaymentsDidNotPassValidation type: Validation details: null rawMessage: The agent is not authorized to reassess voucher payments. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Reassessment of Vouchers Failed: description: Example response when the voucher reassessment failed. value: errors: - id: 23c0d2aa-9c93-9c37-f9e4-39276217cbb8 code: nsk:Voucher:ReassessVoucherPaymentsFailed message: nsk:Voucher:ReassessVoucherPaymentsFailed type: Error details: null rawMessage: The reassessment of voucher payments failed. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null '401': description: Authorization Not Allowed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' security: - JWT: [] servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground /rest/api/nsk/v1/booking/payments: get: summary: Get booking payments description: Retrieves the booking payments on the booking in state operationId: getBookingPayments tags: - booking/payments responses: '200': description: OK '401': description: Unauthorized - Invalid API key '404': description: Not found security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v5/booking/payments: post: summary: Create booking payment description: 'Creates a new external payment or prepaid payment on the booking in state. Supports Three D Secure and Direct Currency Conversion (DCC). Note: This endpoint accepts wildcard paths like /rest/api/nsk/v5/booking/payments/* ' operationId: createBookingPaymentV5 tags: - booking/payments parameters: - name: termUrl in: query schema: type: string description: The term URL for 3DS requestBody: required: true content: application/json: schema: type: object properties: amount: type: number currencyCode: type: string paymentFields: type: object responses: '201': description: Payment created successfully '202': description: 3DS or DCC offer required '400': description: Bad request '401': description: Unauthorized - Invalid API key '409': description: Concurrent changes security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/{paymentKey}: get: summary: Get specific payment description: Gets a specific payment by key operationId: getPaymentByKey tags: - booking/payments parameters: - name: paymentKey in: path required: true schema: type: string responses: '200': description: OK '401': description: Unauthorized - Invalid API key '404': description: Not found security: - ApiKeyAuth: [] delete: summary: Delete payment description: Deletes the payment operationId: deletePayment tags: - booking/payments parameters: - name: paymentKey in: path required: true schema: type: string responses: '200': description: OK '400': description: Bad request '401': description: Unauthorized - Invalid API key '409': description: Concurrent changes security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v2/booking/payments/available: get: summary: Get available payment methods description: Retrieves the booking payment methods available for the booking in state operationId: getAvailablePaymentMethods tags: - booking/payments parameters: - name: currencyCode in: query schema: type: string description: Optional currency code responses: '200': description: OK '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v3/booking/payments/credit: post: summary: Add credit payment description: Creates a new credit payment on the booking operationId: addCreditPayment tags: - booking/payments requestBody: required: true content: application/json: schema: type: object responses: '201': description: Payment created '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v5/booking/payments/refunds: get: summary: Get payment refunds description: Gets the payment refunds for the booking operationId: getPaymentRefunds tags: - booking/payments responses: '200': description: OK '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] post: summary: Create payment refund description: Creates a new payment refund operationId: createPaymentRefund tags: - booking/payments requestBody: required: true content: application/json: schema: type: object responses: '201': description: Refund created '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/{paymentMethod}/dcc: post: summary: Get DCC offer description: 'Gets the available direct currency codes offer for inline DCC payment. This endpoint behaves like a GET but is masked as a POST. ' operationId: getDccOffer tags: - booking/payments parameters: - name: paymentMethod in: path required: true schema: type: string description: The payment method code requestBody: required: true content: application/json: schema: type: object description: DCC availability request responses: '200': description: DCC offer available '401': description: Unauthorized - Invalid API key '404': description: Not found security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v6/booking/payments/dcc/{dccKey}: post: summary: Create DCC payment description: 'Creates a new external payment with direct currency conversion. This endpoint is used for inline DCC payments only. ' operationId: createDccPayment tags: - booking/payments parameters: - name: dccKey in: path required: true schema: type: string description: The DCC key from the offer requestBody: required: true content: application/json: schema: type: object responses: '201': description: Payment created '202': description: 3DS required '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v3/booking/payments/mcc: get: summary: Get MCC offers description: Gets available multi-currency conversion offers operationId: getMccOffers tags: - booking/payments responses: '200': description: OK '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v6/booking/payments/mcc/{currencyCode}: post: summary: Create MCC payment description: Creates a new payment with multi-currency conversion operationId: createMccPayment tags: - booking/payments parameters: - name: currencyCode in: path required: true schema: type: string description: The currency code requestBody: required: true content: application/json: schema: type: object responses: '201': description: Payment created '202': description: 3DS required '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/fees/{feeCode}: post: summary: Add payment fee description: Adds a payment fee to the booking operationId: addPaymentFee tags: - booking/payments parameters: - name: feeCode in: path required: true schema: type: string description: The fee code requestBody: required: true content: application/json: schema: type: object responses: '201': description: Fee added '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/fees/{feeCode}/storedPayment/{storedPaymentKey}: get: summary: Get fee for stored payment description: Gets the payment fee for a stored payment method operationId: getFeeForStoredPayment tags: - booking/payments parameters: - name: feeCode in: path required: true schema: type: string description: The fee code - name: storedPaymentKey in: path required: true schema: type: string description: The stored payment key responses: '200': description: OK '401': description: Unauthorized - Invalid API key '404': description: Not found security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v3/booking/payments/voucher: get: summary: Get voucher payment details description: Gets the voucher payment details for the booking operationId: getVoucherPayment tags: - booking/payments responses: '200': description: OK '401': description: Unauthorized - Invalid API key '404': description: Not found security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v4/booking/payments/voucher: post: summary: Add voucher payment description: Creates a new voucher payment on the booking operationId: addVoucherPayment tags: - booking/payments requestBody: required: true content: application/json: schema: type: object properties: voucherCode: type: string amount: type: number responses: '201': description: Voucher payment created '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v2/booking/payments/voucher/{voucherPaymentReference}: delete: summary: Delete voucher payment description: Deletes a voucher payment from the booking operationId: deleteVoucherPayment tags: - booking/payments parameters: - name: voucherPaymentReference in: path required: true schema: type: string description: The voucher payment reference responses: '200': description: Voucher payment deleted '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/voucher/passenger/{passengerKey}: post: summary: Add voucher payment for passenger description: Creates a new voucher payment for a specific passenger operationId: addVoucherPaymentForPassenger tags: - booking/payments parameters: - name: passengerKey in: path required: true schema: type: string description: The passenger key requestBody: required: true content: application/json: schema: type: object responses: '201': description: Voucher payment created '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service /rest/api/nsk/v1/booking/payments/voucher/reassess: put: summary: Reassess voucher payment description: Reassesses the voucher payment on the booking operationId: reassessVoucherPayment tags: - booking/payments responses: '200': description: Voucher payment reassessed '400': description: Bad request '401': description: Unauthorized - Invalid API key security: - ApiKeyAuth: [] servers: - url: https://prod.api.tui/flight/newskies/payment description: TUI Prod Payment Service - url: https://playground.api.tui/flight/newskies/payment description: TUI Playground (Test) Payment Service components: schemas: ApplyCreditAccountRequestv2: type: object description: "Defines a request to apply credit for an account.\n " additionalProperties: false required: - referenceNumber - amount properties: referenceNumber: type: string description: "The account reference. This will be the record locator, customer account number, or organization code depending on\nthe type.\n " maxLength: 20 minLength: 1 currencyCode: type: - string - 'null' description: "The currency code of the account.\n " maxLength: 3 minLength: 0 type: description: "Defines the type of credit being applied.\n " $ref: '#/components/schemas/CreditType' amount: type: number description: "The amount of credit.\n " format: decimal addAsDeposit: type: - boolean - 'null' description: "The flag indicating whether to add credit as a deposit.\n " waiveFees: type: - boolean - 'null' description: "Determines if the system calculated payment fee should be waived when adding this payment. This flag is for agents\nonly.\n " comment: type: - string - 'null' description: "The payment comment, also known as the text details.\n " PaymentAttachment: type: object description: "Defines a payment attachment.\n " additionalProperties: false properties: id: type: integer description: "The attachment ID.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 paymentId: type: integer description: "The payment ID attached to.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 attachment: type: - string - 'null' description: "The attachment data.\n " format: byte IJsonResponseOfIDictionaryOfStringAndPaymentMethod: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - object - 'null' description: "The payload data.\n " additionalProperties: $ref: '#/components/schemas/PaymentMethod' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' AuthenticationStatus: type: integer description: "Defines the different possible payment authentication statuses for 3DS.\n \n\n0 = Unknown\n1 = AuthenticationSuccessful\n2 = AuthenticationFailed\n3 = AuthenticationCouldNotBePerformed\n4 = AuthenticationAttemptProcessing\n5 = AuthenticationRejected" x-enumNames: - Unknown - AuthenticationSuccessful - AuthenticationFailed - AuthenticationCouldNotBePerformed - AuthenticationAttemptProcessing - AuthenticationRejected enum: - 0 - 1 - 2 - 3 - 4 - 5 PaymentFeeResponse: type: object description: "Defines information for the payment fee response.\n " additionalProperties: false required: - feeAmount properties: feeAmount: type: number description: "The amount being payed.\n " format: decimal isFixedAmount: type: boolean description: "Is a fixed amount.\n " passengerFees: type: - array - 'null' description: "Passenger fee details.\n " items: $ref: '#/components/schemas/PassengerFee' BlacklistReasonCode: type: integer description: "Defines the reason for blacklisting a card used in an external payment.\nDefaults to `None` if no value is specified.\n \n\n0 = None\n1 = ChargedBack\n2 = Lost\n3 = Other\n4 = ProvidedByBank\n5 = Stolen" x-enumNames: - None - ChargedBack - Lost - Other - ProvidedByBank - Stolen enum: - 0 - 1 - 2 - 3 - 4 - 5 MccCurrencyInformationv2: type: object description: "Model with the Mcc curency and rate information.\n " additionalProperties: false properties: rate: description: "The external rate.\n " $ref: '#/components/schemas/ExternalRate' currency: description: "The currency.\n " $ref: '#/components/schemas/Currencyv2' balanceDue: type: number description: "The total balance due using this currency code.\n " format: decimal IJsonResponseOfDirectCurrencyConversionAvailability: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/DirectCurrencyConversionAvailability' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PaymentMethodRequest: type: object description: "Defines a request to apply payment to the booking in state.\n " additionalProperties: false required: - amount - paymentMethodCode properties: amount: type: number description: "The amount to apply.\n " format: decimal maximum: 2147483647.0 minimum: 0.0 paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 installments: type: - integer - 'null' description: "The requested number of installments. Defaults to 1.\n " maximum: 32767.0 minimum: 1.0 paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 deposit: type: - boolean - 'null' description: "Whether to add the payment as a deposit.\n " waiveFees: type: - boolean - 'null' description: "Determines if the system calculated payment fee should be waived when adding this payment. This flag is for agents\nonly.\n " VoucherStatus: type: integer description: "Defines the status of a voucher.\n \n\n0 = Available\n1 = Void\n2 = Redeemed\n3 = Expired" x-enumNames: - Available - Void - Redeemed - Expired enum: - 0 - 1 - 2 - 3 PaymentAllocations: type: object description: "Defines the booking payment allocations.\n " additionalProperties: false properties: recordLocator: type: - string - 'null' description: "The record locator.\n " currencyCode: type: - string - 'null' description: "The booking currency code.\n " maxLength: 3 minLength: 0 totalAllocationAmount: type: number description: "The total allocation amount.\n " format: decimal paymentAllocationDocuments: type: - array - 'null' description: "The list of payment allocation documents.\n " items: $ref: '#/components/schemas/PaymentAllocationDocument' Currencyv2: type: object description: "The currency model.\n " additionalProperties: false required: - currencyCode properties: currencyCode: type: string description: "The unique currency code of currency.\n " maxLength: 3 minLength: 1 description: type: - string - 'null' description: "The description of currency.\n " maxLength: 128 minLength: 0 roundFactor: type: number description: "The round factor of currency.\n " format: decimal displayDigits: type: integer description: "The display digits of currency.\n " format: int32 displayPrefix: type: - string - 'null' description: "The digit prefix of currency.\n " maxLength: 3 minLength: 0 displaySuffix: type: - string - 'null' description: "The digit suffix of currency.\n " maxLength: 3 minLength: 0 inActive: type: boolean description: "The flag indicating if the currency is inactive.\n " PassengerVoucherCustomerProgram: type: object description: "Defines the passenger voucher customer program.\n " additionalProperties: false properties: programCode: type: - string - 'null' description: "The program code.\n " programNumber: type: - string - 'null' description: "The program number.\n " ApplyBookingCreditRequestv2: type: object description: "Defines a request to apply credit from state.\n " additionalProperties: false required: - request - validation properties: request: description: "The credit details requested.\n " $ref: '#/components/schemas/ApplyCreditRequest' validation: description: "The query to retrieve the booking.\n " $ref: '#/components/schemas/RetrieveBookingv2' CollectType: type: integer description: "Used to identify the collect type of a service charge.\n \n\n0 = SellerChargeable\n1 = ExternalChargeable\n2 = SellerNonChargeable\n3 = ExternalNonChargeable\n4 = ExternalChargeableImmediate" x-enumNames: - SellerChargeable - ExternalChargeable - SellerNonChargeable - ExternalNonChargeable - ExternalChargeableImmediate enum: - 0 - 1 - 2 - 3 - 4 PaymentAmounts: type: object description: "Defines the different applied payment amounts for a single payment.\n " additionalProperties: false properties: amount: type: number description: "The amount in the booking currency (based off the origin).\n " format: decimal currencyCode: type: - string - 'null' description: "The payment amount currency code.\n " maxLength: 3 minLength: 0 collected: type: number description: "The collected amount post DCC or MCC.\n " format: decimal collectedCurrencyCode: type: - string - 'null' description: "The collected amounts currency code.\n " maxLength: 3 minLength: 0 quoted: type: number description: "The pre DCC or MCC amount (maybe different than the booking).\n " format: decimal quotedCurrencyCode: type: - string - 'null' description: "The quoted currency code.\n " maxLength: 3 minLength: 0 ThreeDSecureResponse: type: object description: "Defines three D secure response.\n " additionalProperties: false properties: redirectUrl: type: - string - 'null' description: "The url to visit for 3DS verification.\n " paReq: type: - string - 'null' description: "The 3DS standard PaReq verification token.\n " responseUrl: type: - string - 'null' description: "The response url for the bank to use after verification.\n " md: type: - string - 'null' description: "The 3DS standard MD field used for the merchant session tracker.\n " raw: type: - string - 'null' description: "The raw html used for a form post as sent by sky pay.\n " paymentTransactionKey: type: - string - 'null' description: "The payment transaction key.\n " threeDSecureVersion: type: - string - 'null' description: "The three d secure version. Indicates the version of 3DS that was applied during the authentication.\n " PaymentMethodType: type: integer description: "Defines the payment method types.\n \n\n0 = ExternalAccount\n1 = PrePaid\n2 = AgencyAccount\n3 = CustomerAccount\n4 = Voucher\n5 = Loyalty" x-enumNames: - ExternalAccount - PrePaid - AgencyAccount - CustomerAccount - Voucher - Loyalty enum: - 0 - 1 - 2 - 3 - 4 - 5 IJsonResponseOfPayment: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/Payment' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' CreditType: type: integer description: "Defines the different possible credit types.\n \n\n0 = Customer\n1 = Booking\n2 = Organization" x-enumNames: - Customer - Booking - Organization enum: - 0 - 1 - 2 ThreeDSecurePaymentMethodRequestv3: type: object description: "Defines information needed for a generic payment requested with ThreeDSecure validation.\n " additionalProperties: false required: - paRes - paymentTransactionKey properties: paRes: type: string description: "The response that comes back from the bank to verify ThreeDSecure validation.\n " minLength: 1 paReq: type: - string - 'null' description: "The original payment authorization request.\n " paymentTransactionKey: type: string description: "The payment transaction key.\n " minLength: 1 ChargeType: type: integer description: "The type of a service charge.\n \n\n0 = FarePrice\n1 = Discount\n2 = IncludedTravelFee\n3 = IncludedTax\n4 = TravelFee\n5 = Tax\n6 = ServiceCharge\n7 = PromotionDiscount\n8 = ConnectionAdjustmentAmount\n9 = AddOnsPrice\n10 = FarePoints\n11 = DiscountPoints\n16 = IncludedAddOnsFee\n17 = AddOnsFee\n18 = AddOnsMarkup\n19 = FareSurcharge\n21 = AddOnsCancelFee\n22 = Calculated\n23 = Note\n24 = Points\n25 = DynamicFareAdjustment" x-enumNames: - FarePrice - Discount - IncludedTravelFee - IncludedTax - TravelFee - Tax - ServiceCharge - PromotionDiscount - ConnectionAdjustmentAmount - AddOnsPrice - FarePoints - DiscountPoints - IncludedAddOnsFee - AddOnsFee - AddOnsMarkup - FareSurcharge - AddOnsCancelFee - Calculated - Note - Points - DynamicFareAdjustment enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 16 - 17 - 18 - 19 - 21 - 22 - 23 - 24 - 25 IJsonResponseOfPaymentAllocations: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/PaymentAllocations' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' AuthorizationStatus: type: integer description: "Defines the different possible payment authorization states.\n \n\n0 = Unknown\n1 = Acknowledged\n2 = Pending\n3 = InProcess\n4 = Approved\n5 = Declined\n6 = Referral\n7 = PickUpCard\n8 = HotCard\n9 = Voided\n10 = Retrieval\n11 = ChargedBack\n12 = Error\n13 = ValidationFailed\n14 = Address\n15 = VerificationCode\n16 = FraudPrevention\n17 = ForcedApproval\n18 = ForcedDecline\n19 = NoResponse\n20 = BadResponse" x-enumNames: - Unknown - Acknowledged - Pending - InProcess - Approved - Declined - Referral - PickUpCard - HotCard - Voided - Retrieval - ChargedBack - Error - ValidationFailed - Address - VerificationCode - FraudPrevention - ForcedApproval - ForcedDecline - NoResponse - BadResponse enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 - 18 - 19 - 20 ManualPaymentFeeRequest: type: object description: "Defines information to be converted to the payment request v2 for a payment fee price request\n " additionalProperties: false required: - amount properties: amount: type: number description: "The amount being payed.\n " format: decimal currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 collectedCurrencyCode: type: - string - 'null' description: "The optional collected currency code. This will be needed for MCC requests.\n " maxLength: 3 minLength: 0 accountNumber: type: - string - 'null' description: "The account number that is used for the PaymentFeePriceRequest\n " maxLength: 34 minLength: 0 paymentMethodCode: type: - string - 'null' description: "The payment method code that is used for the PaymentFeePriceRequest\n " maxLength: 2 minLength: 0 CreditShellRefundRequest: type: object description: "Defines information needed for a credit shell refund.\n " additionalProperties: false required: - parentPaymentKey - amount - accountTransactionCode - accountType properties: parentPaymentKey: type: string description: "The payment identifier used if this refund is being reversed from an existing payment to a credit shell.\n " minLength: 1 amount: type: number description: "The amount to apply.\n " format: decimal currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 accountTransactionCode: type: string description: "The account transaction code associated with the refund.\n " minLength: 1 accountType: description: "The credit shell account type.\n " $ref: '#/components/schemas/CreditShellAccountType' comment: type: - string - 'null' description: "The credit shell refund comment.\n " VoucherPaymentRequest: type: object description: "Model to request a voucher payment.\n " additionalProperties: false required: - referenceCode - paymentMethodCode properties: currencyCode: type: - string - 'null' description: "The currency code.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of currency.\n " format: decimal referenceCode: type: string description: "The voucher reference code.\n " maxLength: 20 minLength: 1 paymentMethodCode: type: string description: "The payment method to apply the voucher to. This will default to primary voucher code.\n " maxLength: 2 minLength: 1 overrideRestrictions: type: - boolean - 'null' description: "Whether to override voucher restrictions.\n " BookingPaymentStatus: type: integer description: "Determines if the booking has been paid for or not.\n \n\n0 = New\n1 = Received\n2 = Pending\n3 = Approved\n4 = Declined\n5 = Unknown\n6 = PendingCustomerAction" x-enumNames: - New - Received - Pending - Approved - Declined - Unknown - PendingCustomerAction enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 BlacklistPaymentEntry: type: object description: "Defines the request for a card used in an external payment to be blacklisted.\n " additionalProperties: false required: - paymentKey properties: reason: description: "The reason why the card is being blacklisted.\nDefaults to None of no value is specified.\n " $ref: '#/components/schemas/BlacklistReasonCode' notes: type: - string - 'null' description: "Additional description of the reason for blacklisting the card.\n " startDate: type: - string - 'null' description: "The start date for the card to be blacklisted.\nDefaults to the current UTC-based date if not specified.\n " format: date-time endDate: type: - string - 'null' description: "The date when the card will be removed from the blacklist.\nIf not specified or set to null, the payment is blacklisted without expiration.\n " format: date-time paymentKey: type: string description: "The unique identifier of the external payment with the card number to be blacklist.\n " minLength: 1 CreditAccount: type: object description: "Defines a credit account information.\n " additionalProperties: false properties: accountReference: type: - string - 'null' description: "The account reference.\n " currencyCode: type: - string - 'null' description: "The currency code of the account.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of credit.\n " format: decimal foreignAmount: type: - number - 'null' description: "The foreign amount of credit.\n " format: decimal foreignCurrencyCode: type: - string - 'null' description: "The foreign currency code of the account.\n " maxLength: 3 minLength: 0 FeeType: type: integer description: "Enumeration representing all the different fee types.\n \n\n0 = All\n1 = Tax\n2 = TravelFee\n3 = ServiceFee\n4 = PaymentFee\n5 = PenaltyFee\n6 = SsrFee\n7 = NonFlightServiceFee\n8 = UpgradeFee\n9 = SeatFee\n10 = BaseFare\n11 = SpoilageFee\n12 = NameChangeFee\n13 = ConvenienceFee\n14 = BaggageFee\n15 = FareSurcharge\n16 = PromotionDiscount\n17 = ServiceBundle\n18 = ExtraBagFee\n19 = ATPCOBagFee" x-enumNames: - All - Tax - TravelFee - ServiceFee - PaymentFee - PenaltyFee - SsrFee - NonFlightServiceFee - UpgradeFee - SeatFee - BaseFare - SpoilageFee - NameChangeFee - ConvenienceFee - BaggageFee - FareSurcharge - PromotionDiscount - ServiceBundle - ExtraBagFee - ATPCOBagFee enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 - 18 - 19 PaymentVoucherDetails: type: object description: "Payment voucher details. This describes a voucher applied to a payment.\n " additionalProperties: false properties: id: type: integer description: "The voucher ID.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 transactionId: type: integer description: "The vouchers transactions ID.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 overrideRestrictions: type: boolean description: "Flag indicating if the voucher restrictions were overridden.\n " overrideAmount: type: boolean description: "The amount applied of the voucher.\n " recordLocator: type: - string - 'null' description: "The record locator attached to the voucher.\n " maxLength: 12 minLength: 0 DirectCurrencyConversion: type: object description: "Defines a direct currency conversion.\n " additionalProperties: false properties: rateId: type: string description: "The rate ID.\n " format: guid currencyCode: type: - string - 'null' description: "The currency code converted to.\n " maxLength: 3 minLength: 0 rateValue: type: number description: "The conversion rate value.\n " format: decimal amount: type: number description: "The conversion rate amount.\n " format: decimal putInState: type: - string - 'null' description: "The put in state value.\n " status: description: "The conversion status.\n " $ref: '#/components/schemas/DirectCurrencyConversionStatus' applicable: type: boolean description: "Flag indicating if DCC is applicable.\n " BookingPaymentField: type: integer description: "This enum represents payment field categories.\n \n\n0 = Miscellaneous\n1 = AccountNumber\n2 = Amount\n3 = ExpirationDate\n4 = CurrencyCode\n5 = PaymentText\n6 = PrepaidApprovalCode\n7 = Deposit" x-enumNames: - Miscellaneous - AccountNumber - Amount - ExpirationDate - CurrencyCode - PaymentText - PrepaidApprovalCode - Deposit enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 IJsonResponseOfVoucherInformation: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/VoucherInformation' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PaymentInformation: type: object description: "Defines the extra payment information.\n " additionalProperties: false properties: threeDSecureResponse: description: "The three d secure response after making an initial payment.\n " $ref: '#/components/schemas/ThreeDSecureResponse' directCurrencyConversionOffer: description: "The direct currency conversion offer after making an initial payment.\n " $ref: '#/components/schemas/DirectCurrencyConversionOffer' VoucherInformation: type: object description: "Voucher information. This model describes a voucher information after being queried by the voucher code.\n " additionalProperties: false properties: foreignCurrencyCode: type: - string - 'null' description: "The foreign currency code.\n " maxLength: 3 minLength: 0 foreignAmount: type: number description: "The amount of foreign currency.\n " format: decimal type: description: "The voucher type.\n " $ref: '#/components/schemas/VoucherType' password: type: - string - 'null' description: "The password for the voucher.\n " recordLocator: type: - string - 'null' description: "The record locator associated with the voucher.\n " maxLength: 12 minLength: 0 transactions: type: - array - 'null' description: "The voucher transactions.\n " items: $ref: '#/components/schemas/VoucherTransaction' voucherKey: type: - string - 'null' description: "The voucher key.\n " reference: type: - string - 'null' description: "The reference number for the voucher.\n " maxLength: 20 minLength: 0 configurationCode: type: - string - 'null' description: "The voucher configuration code.\n " maxLength: 6 minLength: 0 status: description: "The voucher status.\n " $ref: '#/components/schemas/VoucherStatus' available: type: number description: "The availability count of the voucher.\n " format: decimal firstName: type: - string - 'null' description: "The first name associated with the voucher.\n " maxLength: 64 minLength: 0 lastName: type: - string - 'null' description: "The last name associated with the voucher.\n " maxLength: 64 minLength: 0 personKey: type: - string - 'null' description: "The person key associated with the voucher.\n " voucherIssuanceKey: type: - string - 'null' description: "The voucher issuance key.\n " expiration: type: - string - 'null' description: "The voucher expiration date.\n " format: date-time currencyCode: type: - string - 'null' description: "The currency code.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of currency.\n " format: decimal calculatedAmount: type: number description: "The total amount of the booking that is payable by the voucher.\n " format: decimal customerNumber: type: - string - 'null' description: "The customer number associated to the voucher.\n " foreignCalculatedAmount: type: number description: "The total amount of the booking that is payable by the voucher,\nconverted to a foreign currency specified by the ForeignCalculatededCurrencyCode.\nUsed if the booking and voucher are in different currencies.\n " format: decimal foreignCalculatededCurrencyCode: type: - string - 'null' description: "The currency code for used with the ForeignCalculatedAmount field.\nUsed if the booking and voucher are in different currencies, this would be the currency code being converted to.\n " foreignReversableAmount: type: number description: "Returns the original available amount of the voucher, converted to a foreign currency.\nUsed if the booking and voucher are in different currencies.\n " format: decimal nameRestriction: description: "The name restriction for the voucher.\n " $ref: '#/components/schemas/VoucherNameRestriction' redeemableAmount: type: number description: "The total amount of the booking that the voucher can pay for up to the full amount of the voucher.\n " format: decimal reversableAmount: type: number description: "Returns the original available amount of the voucher.\n " format: decimal foreignAvailableCurrencyCode: type: - string - 'null' description: "The currency code for used with the ForeignAvailableAmount field.\nUsed if the booking and voucher are in different currencies, this\nwould be the currency code being converted to.\n " availableAmount: type: number description: "The total amount available on the voucher for use in the currency that the booking in state is in.\n " format: decimal Message: type: object description: "Defines a unique informational message.\n " additionalProperties: false properties: code: type: - string - 'null' description: "The unique message code.\n " type: type: - string - 'null' description: "The message type.\n " value: type: - string - 'null' description: "The message's value.\n " status: description: "The message's status.\n " $ref: '#/components/schemas/MessageStatus' details: type: - object - 'null' description: "Dynamic detailed information about the message.\n " additionalProperties: type: string Payment: type: object description: "Defines an applied payment on the booking.\n " additionalProperties: false properties: paymentKey: type: - string - 'null' description: "The payment key that uniquely identifies the payment.\n " code: type: - string - 'null' description: "The payment method code.\n " maxLength: 2 minLength: 0 approvalDate: type: - string - 'null' description: "Date when the card/payment is approved in the database.\n " format: date-time details: description: "The payment detail information.\n " $ref: '#/components/schemas/PaymentDetails' amounts: description: "The payment amounts and currency codes.\n " $ref: '#/components/schemas/PaymentAmounts' authorizationCode: type: - string - 'null' description: "The banks auth code when funds are released.\n " maxLength: 10 minLength: 0 authorizationStatus: description: "The real payment status that should never be exposed to the end user unless a agent.\n " $ref: '#/components/schemas/AuthorizationStatus' fundedDate: type: - string - 'null' description: "The date restriction for a payment (when funds will be there).\n " format: date-time transactionCode: type: - string - 'null' description: "Used for credit shell payments and how to compute the expiration of the credit.\n " dcc: description: "DCC payment details.\n " $ref: '#/components/schemas/DirectCurrencyConversion' threeDSecure: description: "3DS payment details.\n " $ref: '#/components/schemas/ThreeDSecure' attachments: type: - array - 'null' description: "The list of payment attachments.\n " items: $ref: '#/components/schemas/PaymentAttachment' createdDate: type: - string - 'null' description: "The date the payment was created on.\n " format: date-time modifiedDate: type: - string - 'null' description: "The date the payment was modified.\n " format: date-time type: description: "The payment method type.\n " $ref: '#/components/schemas/PaymentMethodType' status: description: "The status of the booking (this is the safe status).\n " $ref: '#/components/schemas/BookingPaymentStatus' transferred: type: boolean description: "Flag that indicates if the payment is a result of a divide.\n " channelType: description: "The channel type that the payment was made through.\n " $ref: '#/components/schemas/ChannelType' pointOfSale: description: "The payments point of sale information.\n " $ref: '#/components/schemas/PointOfSale' sourcePointOfSale: description: "The payments source point of sale information.\n " $ref: '#/components/schemas/PointOfSale' deposit: type: boolean description: "Flag indicating if the payment is a deposit.\n " accountId: type: integer description: "Used to identify a credit shell, credit file and agency payments.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 voucher: description: "The applied voucher details.\n " $ref: '#/components/schemas/PaymentVoucherDetails' addedToState: type: boolean description: "Flag indicating if the payment has been added to state or not.\n " createdAgentId: type: integer description: "The created agents ID.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 modifiedAgentId: type: integer description: "The modified agents ID.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 reference: type: integer description: "The reference to the payment.\n " format: int64 passengerVoucher: description: "The passenger voucher.\n " $ref: '#/components/schemas/PassengerVoucher' GetBlacklistPaymentEntryResponse: type: object description: "Defines the response for getting a blacklisted payment.\n " additionalProperties: false required: - paymentKey properties: reason: description: "The reason why the card is being blacklisted.\nDefaults to None of no value is specified.\n " $ref: '#/components/schemas/BlacklistReasonCode' notes: type: - string - 'null' description: "Additional description of the reason for blacklisting the card.\n " startDate: type: - string - 'null' description: "The start date for the card to be blacklisted.\nDefaults to the current UTC-based date if not specified.\n " format: date-time endDate: type: - string - 'null' description: "The date when the card will be removed from the blacklist.\nIf not specified or set to null, the payment is blacklisted without expiration.\n " format: date-time paymentKey: type: string description: "The unique identifier of the external payment with the card number to be blacklist.\n " minLength: 1 createdDate: type: - string - 'null' description: "The date when the blacklist payment was created.\n " format: date-time modifiedDate: type: - string - 'null' description: "The date when the blacklist payment was modified.\n " format: date-time ChannelType: type: integer description: "Defines the available channel types doing invoking the communication with the server.\n \n\n0 = Default\n1 = Direct\n2 = Web\n3 = Gds\n4 = Api\n5 = DigitalApi\n6 = DigitalWeb\n7 = Ndc" x-enumNames: - Default - Direct - Web - Gds - Api - DigitalApi - DigitalWeb - Ndc enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 PassengerVoucherUsageType: type: integer description: "Passenger voucher usage type specifies what parts of a booking this voucher can pay for.\n \n\n0 = None\n1 = Fares\n2 = Taxes\n3 = TravelFees\n4 = ServiceFees\n5 = PenaltyFees\n6 = SsrFees\n7 = NonFlightServiceFees\n8 = UpgradeFees\n9 = SeatFees\n10 = SpoilageFees\n11 = NameChangeFees\n12 = ConvenienceFees\n13 = Car\n14 = Hotel\n15 = Insurance\n16 = Activities\n17 = BaseFeeOnly" x-enumNames: - None - Fares - Taxes - TravelFees - ServiceFees - PenaltyFees - SsrFees - NonFlightServiceFees - UpgradeFees - SeatFees - SpoilageFees - NameChangeFees - ConvenienceFees - Car - Hotel - Insurance - Activities - BaseFeeOnly enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 PaymentReversalRequest: type: object description: "Defines information needed for reversing a payment in the state booking.\n " additionalProperties: false required: - amount - paymentMethodCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment, which in turn, creates a\nline item refund.\nWhen set to null, a booking level refund is made instead.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 accountTransactionCode: type: - string - 'null' description: "The account transaction code associated with the account.\n " comment: type: - string - 'null' description: "The payment refund comment.\n " IJsonResponse: type: object description: "Defines the JSON response contract for a not content type response.\n " additionalProperties: false properties: data: description: "The payload data, this will always be null for errors responses and no content responses.\n " errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PassengerFee: type: object description: "Model representing passenger fee information.\n " additionalProperties: false required: - code properties: isConfirmed: type: boolean description: "A status flag to indicate if the fee has been confirmed or not.\n " isConfirming: type: boolean description: "A status flag to indicate if the fee is confirming or not.\n " isConfirmingExternal: type: boolean description: "A status flag to indicate if the fee is confirming external or not.\n " code: type: string description: "The fee code.\n " maxLength: 6 minLength: 0 detail: type: - string - 'null' description: "The fee detail.\n " maxLength: 32 minLength: 0 passengerFeeKey: type: - string - 'null' description: "The passenger fee key.\n " override: type: boolean description: "The fee override.\n " flightReference: type: - string - 'null' description: "The flight reference which signifies a link to a segment and or leg.\n " maxLength: 22 minLength: 0 note: type: - string - 'null' description: "The fee notes.\n " maxLength: 128 minLength: 0 createdDate: type: - string - 'null' description: "The created date for the fee.\n " format: date-time isProtected: type: boolean description: "Indicates if the fee is protected.\n " serviceCharges: type: - array - 'null' description: "The list of service charges for the fee.\n " items: $ref: '#/components/schemas/ServiceCharge' type: description: "The fee type.\n " $ref: '#/components/schemas/FeeType' ssrCode: type: - string - 'null' description: "The SSR code.\n " ssrNumber: type: integer description: "The fee SSR number.\n " paymentNumber: type: integer description: "The fee payment number.\n " VoucherNameRestriction: type: integer description: "Defines how the name on the voucher will be validated.\n \n\n0 = None\n1 = MustBePassenger\n2 = MustBePassengerOrContact" x-enumNames: - None - MustBePassenger - MustBePassengerOrContact enum: - 0 - 1 - 2 DccRequestBasev2: type: object description: "Model representing the DCC request without a unique key.\n " additionalProperties: false properties: paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string offerAccepted: type: - boolean - 'null' description: "Indication of whether the DCC offer was accepted or not. This will default to true if not set.\n " deposit: type: - boolean - 'null' description: "Indicates if the payment will be added as deposit.\nDefaults to false if not set.\n " installments: type: - integer - 'null' description: "The requested number of installments.\n " VoucherTransaction: type: object description: "The voucher transaction model.\n " additionalProperties: false properties: foreignCurrencyCode: type: - string - 'null' description: "The foreign currency code.\n " maxLength: 3 minLength: 0 foreignAmount: type: number description: "The amount of foreign currency.\n " format: decimal currencyCode: type: - string - 'null' description: "The currency code.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of currency.\n " format: decimal voucherTransactionKey: type: - string - 'null' description: "The voucher transaction key.\n " type: description: "The voucher transaction type.\n " $ref: '#/components/schemas/VoucherTransactionType' recordLocator: type: - string - 'null' description: "The record locator associated with the voucher transaction.\n " ThreeDSecure: type: object description: "Defines three D secure.\n " additionalProperties: false properties: browserUserAgent: type: - string - 'null' description: "The browser agent being used.\n " browserAccept: type: - string - 'null' description: "The browser agent accept.\n " remoteIpAddress: type: - string - 'null' description: "The remote IP address.\n " termUrl: type: - string - 'null' description: "The return URL from the bank.\n " paReq: type: - string - 'null' description: "The payload that will be sent to the bank site.\n " acsUrl: type: - string - 'null' description: "The URL to redirect to for TDS (aka the bank).\n " paRes: type: - string - 'null' description: "The response that comes back from the bank.\n " authResult: type: - string - 'null' description: "The result of 3DS.\n " cavv: type: - string - 'null' description: "The encrypted string of prof that 3DS was processed.\n " cavvAlgorithm: type: - string - 'null' description: "The algorithm that created the Cavv.\n " eci: type: - string - 'null' description: "The electronic commerce indicator (the level of 3DS).\n " xid: type: - string - 'null' description: "The transaction ID specific to the 3DS 3rd party processing.\n " applicable: type: boolean description: "Flag that indicates if more validation is needed.\n " successful: type: boolean description: "Flag indicating if 3DS was successful.\n " threeDSecureSessionId: type: - string - 'null' description: "The three d secure session id. This is returned by device data collection.\nThis ties the device data collection to the 3DSecure Lookup.\n " challengePreference: description: "The requested challenge preference.\nIndicates whether the merchant would like to force the issuer to present a 3DSecure challenge.\n " $ref: '#/components/schemas/ChallengePreference' challengeWindowSize: description: "The requested challenge window size.\nIndicates the preferred size of the 3DSecure challenge window.\n " $ref: '#/components/schemas/ChallengePreferenceWindowSize' transactionIdThreeDSecure: type: - string - 'null' description: "The transaction id three d secure. Used after completing 3DS Native challenge.\nThis is the equivalent of the 3DSecure Redirect PaRes value. For 3DSecure Native authentications,\nthe transaction ID should be populated in lieu of the PaRes.\n " threeDSecureVersion: type: - string - 'null' description: "The three d secure version. Indicates the version of 3DS that was applied during the authentication.\n " merchantData: type: - string - 'null' description: "Merchant data.\n " redirectJwt: type: - string - 'null' description: "The Jwt object created by SkyPay to use when redirecting a customer.\n " redirectJwtUrl: type: - string - 'null' description: "Secondary url that may be included in lieu or in addition to the Redirect Url.\n " dsTransactionId: type: - string - 'null' description: "The D S transaction id.\n " authenticationStatus: description: "The authentication status.\n " $ref: '#/components/schemas/AuthenticationStatus' ExternalRate: type: object description: "External rate model.\n " additionalProperties: false properties: rateId: type: - string - 'null' description: "The id for this external rate.\n " quotedCurrency: type: - string - 'null' description: "The quoted currency for this external rate.\n " maxLength: 3 minLength: 0 collectedCurrency: type: - string - 'null' description: "The collected currency for this external rate.\n " maxLength: 3 minLength: 0 exchangeRate: type: number description: "The exchange rate for this external rate.\n " format: decimal IJsonResponseOfBlacklistPaymentEntry: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/BlacklistPaymentEntry' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' DeltaMapperOfBlacklistPaymentEntryEditRequest: type: object description: "Map delta changes of a specific type T to another object.\n " additionalProperties: false properties: reason: description: "The reason why the card is being blacklisted.\nDefaults to None of no value is specified.\n " $ref: '#/components/schemas/BlacklistReasonCode' notes: type: - string - 'null' description: "Additional description of the reason for blacklisting the card.\n " startDate: type: - string - 'null' description: "The start date for the card to be blacklisted.\nDefaults to the current UTC-based date if not specified.\n " format: date-time endDate: type: - string - 'null' description: "The date when the card will be removed from the blacklist.\nIf not specified or set to null, the payment is blacklisted without expiration.\n " format: date-time PaymentMethod: type: object description: "The payment method model.\n " additionalProperties: false required: - paymentMethodCode - name properties: paymentMethodCode: type: string description: "The payment method code for this payment method.\n " maxLength: 2 minLength: 0 allowDeposit: type: boolean description: "The allow deposit flag for this payment method.\n " allowed: type: boolean description: "Deprecated - Please use api/nsk/v1/settings/general/codes endpoint to verify role based access instead.\n " allowZeroAmount: type: boolean description: "The allow zero amount flag for this payment method.\n " commissionable: type: boolean description: "The commissionable flag for this payment method.\n " dccType: description: "The DCC type for this payment method.\n " $ref: '#/components/schemas/DccType' disallowPartialRefund: type: boolean description: "The disallow partial refund flag for this payment method.\n " feeCode: type: - string - 'null' description: "The fee code for this payment method.\n " maxLength: 6 minLength: 0 inActive: type: boolean description: "The inactive flag for this payment method.\n " maxInstallments: type: integer description: "The max installments for this payment method.\n " name: type: string description: "The name for this payment method.\n " maxLength: 64 minLength: 0 paymentMethodFields: type: - object - 'null' description: "The payment method fields for this payment method.\n " additionalProperties: $ref: '#/components/schemas/PaymentMethodField' paymentMethodType: description: "The payment method type for this payment method.\n " $ref: '#/components/schemas/PaymentMethodType' paymentRefundType: description: "The payment refund type for this payment method.\n " $ref: '#/components/schemas/PaymentRefundType' proportionalRefund: type: boolean description: "The proportional refund flag for this payment method.\n " refundableByAgent: type: boolean description: "The refundable by agent flag for this payment method.\n " refundCurrencyControl: description: "The refund currency control for this payment method.\n " $ref: '#/components/schemas/RefundCurrencyControl' restrictionHours: type: integer description: "The hours of restriction for this payment method.\n " systemControlled: type: boolean description: "The system controlled flag for this payment method.\n " traceQueueCode: type: - string - 'null' description: "The trace queue code for this payment method.\n " maxLength: 6 minLength: 0 validationRequired: type: boolean description: "The validation required flag for this payment method.\n " enableDeviceDataCollectionWithJwt: type: boolean description: "Whether device data collection with jwt is enabled.\n " IJsonResponseOfThreeDSecureResponse: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/ThreeDSecureResponse' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PaymentAllocationDocument: type: object description: "Defines the payment allocation document.\n " additionalProperties: false properties: issuanceDate: type: string description: "The issuance date.\n " format: date-time ticketNumber: type: - string - 'null' description: "The ticket number.\n " maxLength: 14 minLength: 13 documentType: type: - string - 'null' description: "The document type.\n " passengerKey: type: - string - 'null' description: "The passenger key.\n " passengerName: description: "The passengers name.\n " $ref: '#/components/schemas/Name' paymentKeys: type: - array - 'null' description: "The list of payment keys allocated to the passenger.\n " items: type: string VoucherTransactionType: type: integer description: "Defines voucher transaction type.\n \n\n0 = Debit\n1 = Credit\n2 = Void\n3 = Reinstate\n4 = Adjustment\n5 = ExpirationDateChange\n6 = VoucherTypeChange\n7 = VoucherOwnerChange" x-enumNames: - Debit - Credit - Void - Reinstate - Adjustment - ExpirationDateChange - VoucherTypeChange - VoucherOwnerChange enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 Exception: type: object additionalProperties: false properties: Message: type: string InnerException: $ref: '#/components/schemas/Exception' Source: type: - string - 'null' StackTrace: type: - string - 'null' IJsonResponseOfPaymentFeeResponse: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/PaymentFeeResponse' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' ValueType: type: integer description: "This enum represents the value type of an input box.\n \n\n0 = Unknown\n1 = String\n2 = UpperCaseString\n3 = Numeric\n4 = Alphanumeric\n5 = Amount\n6 = Date\n7 = Mod10\n8 = Name\n9 = Address\n10 = State\n11 = Zip\n12 = Country\n13 = City\n14 = Boolean\n15 = Email" x-enumNames: - Unknown - String - UpperCaseString - Numeric - Alphanumeric - Amount - Date - Mod10 - Name - Address - State - Zip - Country - City - Boolean - Email enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 PassengerVoucher: type: object description: "Defines a passenger voucher.\n " additionalProperties: false properties: passengerVoucherKey: type: - string - 'null' description: "The passenger voucher key.\n " passengerKey: type: - string - 'null' description: "The passenger key.\nWill be null if the voucher does not apply to a specific passenger.\n " voucherConfigurationCode: type: - string - 'null' description: "The voucher configuration code.\n " voucherUses: type: - array - 'null' description: "The list of voucher uses.\n " items: $ref: '#/components/schemas/PassengerVoucherUsageType' customerPrograms: type: - array - 'null' description: "The list of customer programs.\n " items: $ref: '#/components/schemas/PassengerVoucherCustomerProgram' customerNumber: type: - string - 'null' description: "The customer number of the customer record to which the voucher has been issued.\n " PaymentMethodField: type: object description: "The payment method field model.\n " additionalProperties: false required: - paymentMethodFieldCode - name - paymentMethodCode properties: paymentMethodFieldCode: type: string description: "The code for this payment field\n " maxLength: 32 minLength: 0 bookingPaymentField: description: "The field category for this payment field.\n " $ref: '#/components/schemas/BookingPaymentField' name: type: string description: "The name of this payment field\n " maxLength: 64 minLength: 0 ordinal: type: integer description: "The order number for this payment field.\n " paymentMethodCode: type: string description: "The payment method code for this payment field.\n " maxLength: 2 minLength: 0 paymentMethodType: description: "The payment method type for this payment field.\n " $ref: '#/components/schemas/PaymentMethodType' persistData: type: boolean description: "The persist data flag for this payment field.\n " refundUiState: description: "The refund ui state for this payment field.\n " $ref: '#/components/schemas/RefundState' requiredType: description: "The required type for this payment field.\n " $ref: '#/components/schemas/RequiredType' valueMaxLength: type: integer description: "The value max length for this payment field.\n " valueMinLength: type: integer description: "The value min length for this payment field.\n " valueRegEx: type: - string - 'null' description: "The Regular Expression for this payment field.\n " maxLength: 128 minLength: 0 valueType: description: "The value type for this payment field.\n " $ref: '#/components/schemas/ValueType' DirectCurrencyConversionStatus: type: integer description: "Enumeration that determines the status of a DCC authorization.\n \n\n0 = DccNotOffered\n1 = DccOfferRejected\n2 = DccOfferAccepted\n3 = DccInitialValue\n4 = MccInUse" x-enumNames: - DccNotOffered - DccOfferRejected - DccOfferAccepted - DccInitialValue - MccInUse enum: - 0 - 1 - 2 - 3 - 4 Name: type: object description: "Defines a common name.\n " additionalProperties: false properties: first: type: - string - 'null' description: "The given first name.\n " maxLength: 32 minLength: 0 middle: type: - string - 'null' description: "The given middle name.\n " maxLength: 32 minLength: 0 last: type: - string - 'null' description: "The given last name.\n " maxLength: 32 minLength: 0 title: type: - string - 'null' description: "The title.\n " maxLength: 6 minLength: 0 suffix: type: - string - 'null' description: "The suffix.\n " maxLength: 6 minLength: 0 CreditShellAccountType: type: integer description: "Account types used for credit shell refunds.\n \n\n0 = CustomerNumber\n1 = ReservationCredit" x-enumNames: - CustomerNumber - ReservationCredit enum: - 0 - 1 PointOfSale: type: object description: "Model related to the point of sale. This is for read-only operations.\n " additionalProperties: false properties: agentCode: type: - string - 'null' description: "The point of sale agent code.\n " domainCode: type: - string - 'null' description: "The point of sale domain code.\n " locationCode: type: - string - 'null' description: "The point of sale location code.\n " organizationCode: type: - string - 'null' description: "The point of sale organization code.\n " DirectCurrencyConversionAvailability: type: object description: "Defines a direct currency conversion availability model.\n " additionalProperties: false properties: dccKey: type: - string - 'null' description: "The direct currency conversion key.\n " currencyCode: type: - string - 'null' description: "The currency code converting available to convert to.\n " maxLength: 3 minLength: 0 rate: type: number description: "The conversion rate value.\n " format: decimal amount: type: number description: "The conversion rate amount.\n " format: decimal IJsonResponseOfGetBlacklistPaymentEntryResponse: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/GetBlacklistPaymentEntryResponse' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' RequiredType: type: integer description: "This enum represents the state of a payment field.\n \n\n0 = Required\n1 = Optional\n2 = NotAllowed" x-enumNames: - Required - Optional - NotAllowed enum: - 0 - 1 - 2 OrganizationRefundRequest: type: object description: "Defines information needed for an organization account refund.\n " deprecated: true x-deprecatedMessage: 4.4.5 - Please use OrganizationRefundRequestv2 additionalProperties: false required: - amount - organizationCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment.\nThe refund is assumed to be made at the booking/account level if the value for this property is null or empty.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 organizationCode: type: string description: "The organization code account number to credit to.\n " maxLength: 34 minLength: 0 accountTransactionCode: type: - string - 'null' description: "The account transaction code associated with the account.\n " comment: type: - string - 'null' description: "The organization refund comment.\n " CustomerCreditRefundRequest: type: object description: "Defines information needed for a customer credit refund.\n " additionalProperties: false required: - parentPaymentKey - amount - customerNumber properties: parentPaymentKey: type: string description: "The payment identifier used if this refund is being reversed from an existing payment.\n " minLength: 1 amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 customerNumber: type: string description: "The customer account number to credit to.\n " maxLength: 34 minLength: 0 accountTransactionCode: type: - string - 'null' description: "The account transaction code associated with the account.\n " comment: type: - string - 'null' description: "The customer credit refund comment.\n " StoredPaymentRequest: type: object description: "Defines a request to apply person stored payment to the booking in state.\n " additionalProperties: false required: - amount properties: amount: type: number description: "The amount to apply.\n " format: decimal maximum: 2147483647.0 minimum: 0.0 paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 installments: type: - integer - 'null' description: "The requested number of installments. Defaults to 1.\n " maximum: 32767.0 minimum: 1.0 waiveFees: type: - boolean - 'null' description: "Determines if the system calculated payment fee should be waived when adding this payment. This flag is for agents\nonly.\n " OrganizationRefundRequestv2: type: object description: "Defines information needed for an organization account refund, v2.\n " additionalProperties: false required: - amount - organizationCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment.\nThe refund is assumed to be made at the booking/account level if the value for this property is null or empty.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 organizationCode: type: string description: "The organization code account number to credit to.\n " maxLength: 34 minLength: 0 comment: type: - string - 'null' description: "The organization refund comment.\n " VoucherType: type: integer description: "Defines the type of voucher.\n \n\n0 = Credit\n1 = SingleUseCredit\n2 = Service\n3 = SingleUse\n4 = MultiUse\n5 = SingleUseNegativeAdjustment\n6 = PassengerSelect" x-enumNames: - Credit - SingleUseCredit - Service - SingleUse - MultiUse - SingleUseNegativeAdjustment - PassengerSelect enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 DirectCurrencyConversionOffer: type: object description: "Defines the direct currency conversion offer.\n " additionalProperties: false properties: dccPaymentTransactionKey: type: - string - 'null' description: "The dcc payment transaction key.\n " currencyCode: type: - string - 'null' description: "The currency code converted to.\n " maxLength: 3 minLength: 0 rateValue: type: number description: "The conversion rate value.\n " format: decimal amount: type: number description: "The conversion rate amount.\n " format: decimal PaymentRefundRequest: type: object description: "Defines information needed for a generic voucher payment requested to be added to the booking in state.\n " additionalProperties: false required: - amount - paymentMethodCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment, which in turn, creates a\nline item refund.\nWhen set to null, a booking level refund is made instead.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 accountTransactionCode: type: - string - 'null' description: "The account transaction code associated with the account.\n " comment: type: - string - 'null' description: "The payment refund comment.\n " ChallengePreference: type: integer description: "Defines the challenge preference.\n \n\n0 = NoPreference\n1 = NoChallengeRequested\n2 = ChallengeRequested\n3 = ChallengeMandated" x-enumNames: - NoPreference - NoChallengeRequested - ChallengeRequested - ChallengeMandated enum: - 0 - 1 - 2 - 3 MccPaymentMethodRequest: type: object description: "Defines information needed for a mcc payment requested to be added to the booking in state.\n " additionalProperties: false required: - paymentMethodCode - amount properties: paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 deposit: type: - boolean - 'null' description: "Whether to add the payment as a deposit.\n " waiveFees: type: - boolean - 'null' description: "Determines if the system calculated payment fee should be waived when adding this payment. This flag is for agents\nonly.\n " amount: type: number description: "The amount to apply.\n " format: decimal maximum: 2147483647.0 minimum: 0.0 paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 installments: type: - integer - 'null' description: "The requested number of installments. Defaults to 1.\n " maximum: 32767.0 minimum: 1.0 thirdPartyExternalRate: description: "The third party external rate.\n " $ref: '#/components/schemas/ExternalRate' PaymentRefundType: type: integer description: "Enum representing whether or not a payment can be refunded.\n \n\n0 = NotAllowed\n1 = LineItemLevel\n2 = AccountLevel\n3 = BookingLevel" x-enumNames: - NotAllowed - LineItemLevel - AccountLevel - BookingLevel enum: - 0 - 1 - 2 - 3 PaymentDetails: type: object description: "Defines the payment details.\n " additionalProperties: false properties: accountNumberId: type: integer description: "The reference of an encrypted account number.\n " format: int64 parentPaymentId: type: - integer - 'null' description: "ID of the parent of refunds or divide. Null if none exists.\n " format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 accountName: type: - string - 'null' description: "The account holder name.\n " maxLength: 64 minLength: 0 accountNumber: type: - string - 'null' description: "The account number.\n " maxLength: 34 minLength: 0 expirationDate: type: - string - 'null' description: "The expiration date.\n " format: date-time text: type: - string - 'null' description: "The payment added text.\n " maxLength: 64 minLength: 0 installments: type: integer description: "The number of installments to be applied.\n " maximum: 999.0 minimum: 0.0 binRange: type: integer description: "The first 6 digits of the credit card number.\n " format: int32 maximum: 2147483647.0 minimum: 0.0 fields: type: - object - 'null' description: "The collection of payment fields.\n " additionalProperties: type: string IJsonResponseOfCreditAccount: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/CreditAccount' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' IJsonResponseOfIDictionaryOfStringAndMccCurrencyInformationv2: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - object - 'null' description: "The payload data.\n " additionalProperties: $ref: '#/components/schemas/MccCurrencyInformationv2' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' MessageStatus: type: integer description: "Defines the message status.\n \n\n0 = General\n1 = Warning\n2 = Critical" x-enumNames: - General - Warning - Critical enum: - 0 - 1 - 2 IJsonResponseOfPaymentInformation: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/PaymentInformation' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PaymentRefundRequestv2: type: object description: "The payment refund request, v2.\n " additionalProperties: false required: - amount - paymentMethodCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment, which in turn, creates a\nline item refund.\nWhen set to null, a booking level refund is made instead.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 comment: type: - string - 'null' description: "The payment refund comment.\n " ApplyOrganizationCreditRequest: type: object description: "Defines a request to apply organization credit to the booking in state.\n " additionalProperties: false required: - amount properties: amount: type: number description: "The amount of credit.\n " format: decimal comment: type: - string - 'null' description: "The payment comment, also known as the text details.\n " currencyCode: type: - string - 'null' description: "The currency code of the account.\n " maxLength: 3 minLength: 0 waiveFees: type: - boolean - 'null' description: "Determines if the system calculated payment fee should be waived when adding this payment. This flag is for agents\nonly.\n " organizationCreditCode: type: - string - 'null' description: "The payment method credit code of the agent credit line. If not set, will default to the default organization\ncredit code.\nNOTE: It is not recommended to use a custom agency credit payment as it will not have the same\nbehavior nor be validated like the pre-configured `AG` credit payment.\n " accountReference: type: - string - 'null' description: "The organization account reference. If not set, defaults to the organization code of the logged-in user.\n " maxLength: 10 minLength: 0 MccPaymentRequest: type: object description: "Defines information needed for a mcc stored payment requested to be added to the booking in state.\n " additionalProperties: false required: - amount properties: amount: type: number description: "The amount to apply.\n " format: decimal maximum: 2147483647.0 minimum: 0.0 paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 installments: type: - integer - 'null' description: "The requested number of installments. Defaults to 1.\n " maximum: 32767.0 minimum: 1.0 thirdPartyExternalRate: description: "The third party external rate.\n " $ref: '#/components/schemas/ExternalRate' ServiceCharge: type: object description: "Model that represents the fare service charge information.\n " additionalProperties: false properties: amount: type: number description: "The service charge amount.\n " format: decimal code: type: - string - 'null' description: "The service charge code.\n " detail: type: - string - 'null' description: "The service charge detail.\n " maxLength: 10 minLength: 0 type: description: "The service charge type.\n " $ref: '#/components/schemas/ChargeType' collectType: description: "The service charge collect type.\n " $ref: '#/components/schemas/CollectType' currencyCode: type: - string - 'null' description: "The service charge currency code.\n " maxLength: 3 minLength: 0 foreignCurrencyCode: type: - string - 'null' description: "The service charge foreign currency code.\n " maxLength: 3 minLength: 0 foreignAmount: type: number description: "The service charge foreign amount.\n " format: decimal ticketCode: type: - string - 'null' description: "The service charge ticket code.\n " maxLength: 3 minLength: 0 ErrorResponse: type: object description: "Defines a unique error response.\n " additionalProperties: false properties: exception: description: "The original exception that was thrown and all the exception details.\n " $ref: '#/components/schemas/Exception' rawMessage: type: - string - 'null' description: "The original raw message set (non-localized).\n " code: type: - string - 'null' description: "The unique error code. The primary value used to match against a unique message localized for the end user in the\nchosen language.\n " message: type: - string - 'null' description: "The error message. Deprecated: Please use the Code instead.\n " type: type: - string - 'null' description: "The error type showing severity. Values: Critical, Error, Validation, Information.\n " number: type: - integer - 'null' description: "A unique identifier in numeric form. This is required for Splunk logging. If none is provided a number will be\ngenerated based on code and type.\n " format: int32 maximum: 99999.0 minimum: 0.0 details: type: - object - 'null' description: "Dynamic detailed information about the error.\n " additionalProperties: type: string ActivityId: type: - string - 'null' description: "The activity ID unique to the request. Useful for debugging purposes to uniquely look up what happened for this\nspecific request.\n " RetrieveBookingv2: type: object description: "Model representing the retrieve booking data.\n " additionalProperties: false required: - recordLocator properties: recordLocator: type: string description: "Record locator being requested.\n " maxLength: 12 minLength: 0 emailAddress: type: - string - 'null' description: "The email address of a contact.\n " maxLength: 266 minLength: 0 origin: type: - string - 'null' description: "The origin station code.\n " maxLength: 3 minLength: 3 firstName: type: - string - 'null' description: "The first name of a passenger or contact.\n " maxLength: 32 minLength: 0 lastName: type: - string - 'null' description: "The last name of a passenger or contact.\n " maxLength: 32 minLength: 0 customerNumber: type: - string - 'null' description: "One of the passengers customer numbers applied.\n " maxLength: 20 minLength: 0 departureDate: type: - string - 'null' description: "The first journeys departure date.\n " format: date-time IJsonResponseOfIListOfPayment: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - array - 'null' description: "The payload data.\n " items: $ref: '#/components/schemas/Payment' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PaymentReversalRequestv2: type: object description: "Defines information needed for reversing a payment in the state booking, v2.\n " additionalProperties: false required: - amount - paymentMethodCode properties: parentPaymentKey: type: - string - 'null' description: "The payment identifier used if this refund is being reversed from an existing payment, which in turn, creates a\nline item refund.\nWhen set to null, a booking level refund is made instead.\n " amount: type: number description: "The amount to apply.\n " format: decimal paymentFields: type: - object - 'null' description: "Dynamic field information used for validation related to the specific payment type.\nSee the PaymentMethodsAvailable view model / PaymentMethodFieldList\n " additionalProperties: type: string currencyCode: type: - string - 'null' description: "The currency code. This will default to the bookings currency code.\n " maxLength: 3 minLength: 0 paymentMethodCode: type: string description: "Payment method code.\n " maxLength: 2 minLength: 1 comment: type: - string - 'null' description: "The payment refund comment.\n " RefundCurrencyControl: type: integer description: "Enum representing the currency control on a refund.\n \n\n0 = UseCollectedCurrency\n1 = UseQuotedCurrency" x-enumNames: - UseCollectedCurrency - UseQuotedCurrency enum: - 0 - 1 DccAvailabilityBaseRequest: type: object description: "Direct currency conversion request.\n " additionalProperties: false required: - amount - accountNumber - quotedCurrencyCode properties: amount: type: number description: "The amount being applied as a payment.\n " format: decimal accountNumber: type: string description: "The account number.\n " maxLength: 34 minLength: 0 quotedCurrencyCode: type: string description: "The quoted currency code to convert to.\n " minLength: 1 waiveFees: type: - boolean - 'null' description: "Indicates if any payment fee incurred will be waived. Defaults to false if not set.\nThis flag is for agents only.\n " RefundState: type: integer description: "Enumeration representing the refund ui state.\n \n\n0 = Enabled\n1 = Disabled\n2 = Hidden" x-enumNames: - Enabled - Disabled - Hidden enum: - 0 - 1 - 2 ChallengePreferenceWindowSize: type: integer description: "Defines the challenge preference window size.\n \n\n0 = SizeFullPage\n1 = Size250X400\n2 = Size390X400\n3 = Size500X600\n4 = Size600X400" x-enumNames: - SizeFullPage - Size250X400 - Size390X400 - Size500X600 - Size600X400 enum: - 0 - 1 - 2 - 3 - 4 DccType: type: integer description: "Dynamic Currency Conversion (DCC) types.\n \n\n0 = None\n1 = ZeroRate\n2 = FullAmount" x-enumNames: - None - ZeroRate - FullAmount enum: - 0 - 1 - 2 ApplyCreditRequest: type: object description: "Defines a request to apply credit from state.\n " additionalProperties: false required: - amount properties: currencyCode: type: - string - 'null' description: "The currency code of the account.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of credit.\n " format: decimal comment: type: - string - 'null' description: "The payment comment, also known as the text details.\n " securitySchemes: JWT: type: http description: Paste your JWT token from the token endpoint. scheme: bearer bearerFormat: jwt ApiKeyAuth: type: apiKey in: header name: x-apikey description: API key for authentication x-refined-from: - tui-group-tui-newskies-digital-api-openapi.yml - tui-group-tui-newskies-payment-api-openapi.yml x-header: 'This API returns the price and availability for TUI''s packages specifically for OTA''s according to the G7 standard. ' x-summary: "This API returns the price and availability for TUI's packages specifically for OTA's according to the G7 standard.\nThe Travelmessage API returns information on all the available tui.nl packages, along with other relevant details such as price, extras, etc. for this specified package. \nThis API also allows to start a bookingdialogue for these packages.\n"