Spotnana Invoicing API

APIs to manage invoicing.

Operations 1

POST /v2/invoicing/invoice-data Get Invoice Data #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/spotnana-invoicing-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

spotnana-invoicing-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Air Invoicing API
  version: v2
  description: APIs to perform search, checkout and book an air pnr
servers:
- url: https://api-ext-sboxmeta.partners.spotnana.com
  description: Sandbox URL
security:
- Bearer: []
tags:
- name: Invoicing
  description: APIs to manage invoicing.
paths:
  /v2/invoicing/invoice-data:
    post:
      tags:
      - Invoicing
      summary: Get Invoice Data
      description: This endpoint gets the invoice data for given invoice numbers
      operationId: getInvoiceData
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InvoiceDataRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvoiceDataResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    InvoiceDataResponse:
      type: object
      title: InvoiceDataResponse
      description: Invoice Data List
      required:
      - invoices
      properties:
        invoices:
          description: List of invoices which were requested.
          type: array
          items:
            $ref: '#/components/schemas/Invoice'
    ThirdPartySource:
      type: string
      enum:
      - UNKNOWN_SOURCE
      - SABRE
      - TRAVEL_FUSION
      - AVIA
      - NDC
      - TRAINLINE
      - ATPCO_NDC
      - FARELOGIX_NDC
      - OFFLINE
      - CONNEXUS
      - ROUTEHAPPY
      - AMADEUS
      - GIATA
      - QBR
      - BCD
      - QANTAS_HOTELS
      - SOUTHWEST
      - EXPEDIA
      - HOTEL_HUB
      - MARRIOTT
      - CLEARTRIP
      - KYTE
      - GROUNDSPAN
      - SABRE_NDC
      - BOOKING_COM
      - CARTRAWLER
      - PREMIER_INN
      - TRAVELODGE
      - ENTERPRISE
      - HYATT
      - EUROSTAR
      - NATIONAL
      - ALAMO
      - AVIS
      - BUDGET
      - HERTZ
      - DOLLAR
      - THRIFTY
      - FIREFLY
      x-ignoreBreakingChanges:
      - ThirdPartySource->BOOKING_COM
      - ThirdPartySource->CARTRAWLER
      - ThirdPartySource->PREMIER_INN
      example: SABRE
    VirtualCardVendor:
      type: string
      description: Type of Virtual card vendor
      enum:
      - CONFERMA
      example: CONFERMA
    PaymentSourceType:
      type: string
      description: Type of Payment Source
      enum:
      - CARD
      - VIRTUAL_CARD
      - REWARDS_PROGRAM
      - DELAYED_INVOICING
      - CUSTOM_PAYMENT_METHOD
      - VENDOR_PROGRAM_PAYMENT
      - UNUSED_CREDIT
      - CASH
    ErrorResponse:
      type: object
      properties:
        debugIdentifier:
          type: string
          description: Link to debug the error internally.
        errorMessages:
          type: array
          items:
            type: object
            properties:
              errorCode:
                type: string
                description: Error code to identify the specific errors.
              message:
                type: string
                description: Message containing details of error.
              errorParameters:
                type: array
                description: Error message parameters.
                items:
                  $ref: '#/components/schemas/ErrorParameter'
              errorDetail:
                type: string
                description: More details about the error.
    DateTimeRange:
      type: object
      properties:
        min:
          $ref: '#/components/schemas/DateTimeLocal'
          description: Minimum value - inclusive.
        max:
          $ref: '#/components/schemas/DateTimeLocal'
          description: Maximum value - inclusive.
    ExpiryWrapper:
      type: object
      title: ExpiryWrapper
      properties:
        expiry:
          $ref: '#/components/schemas/Expiry'
    PaymentMethod:
      type: string
      description: Payment method
      enum:
      - PAYMENT_METHOD_UNKNOWN
      - CREDIT_CARD
      - BREX_POINTS
      - CASH
      - QANTAS_POINTS
      - VENDOR_PROGRAM_PAYMENT
      - DELAYED_INVOICING
      - FLIGHT_CREDITS
      - QANTAS_TRAVEL_FUND
      - CUSTOM_VIRTUAL_PAYMENT
      - FLIGHT_PASS
      - MISCELLANEOUS_CREDIT_ORDER
      - NO_PREPAYMENT
      x-ignoreBreakingChanges:
      - PaymentMethod->MISCELLANEOUS_CREDIT_ORDER
      - PaymentMethod->NO_PREPAYMENT
      example: BREX_POINTS
    RailItemNameMetadata:
      title: RailItemNameMetadata
      type: object
      description: RailItemNameMetadata information.
      required:
      - pnrType
      properties:
        railNameInvoiceMetadata:
          description: RailNameInvoiceMetadata information.
          type: array
          items:
            $ref: '#/components/schemas/RailNameInvoiceMetadata'
        pnrType:
          type: string
          example: RAIL
    BuyerInfo:
      type: object
      title: BuyerInfo
      description: Buyer of items mentioned in the invoice.
      required:
      - name
      - address
      properties:
        name:
          description: Name of buyer, usually a traveler.
          type: string
          example: John Doe
          x-pii: SENSITIVE
        address:
          description: Address of buyer. Could be office, legal entity or org address.
          type: string
          example: '115 Broadway Suite 04-101,

            New York, NY 10006'
          x-pii: SENSITIVE
        taxId:
          description: Tax number for the seller, for ex GSTN in India
          type: string
          example: TXG239023092
          deprecated: true
          x-sunset: '2026-07-01'
        idInfo:
          type: array
          description: The seller ID information.
          items:
            $ref: '#/components/schemas/IdInfo'
    RewardsProgramMetadataWrapper:
      type: object
      title: RewardsProgramMetadataWrapper
      description: Wrapper for RewardsProgramMetadata
      properties:
        rewardsProgramMetadata:
          $ref: '#/components/schemas/RewardsProgramMetadata'
    ProgramDetails:
      type: object
      title: ProgramDetails
      description: Descriptor for programs details.
      required:
      - uscId
      - tourCode
      - snapCode
      properties:
        uscId:
          type: string
          description: Contract Id between vendor and the client.
        tourCode:
          type: string
          description: Tracking code to know which company has booked the ticket, it is added to the price quote and ticket.
        snapCode:
          type: string
          description: Discount code.
    DateTimeOffset:
      title: DateTimeOffset
      description: ISO8601 UTC Date Time
      type: object
      required:
      - iso8601
      properties:
        iso8601:
          type: string
          pattern: ^\d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-4]):([0-5][0-9])(:([0-5][0-9]))?(Z|([+-](0[0-9]|1[0-4]):([0-5][0-9])))$
          example: 2017-07-21T17:32Z
    AirlineProgramMetadata:
      type: object
      title: AirlineProgramMetadata
      oneOf:
      - $ref: '#/components/schemas/UATPMetadataWrapper'
      - $ref: '#/components/schemas/UAPassPlusMetadataWrapper'
      - $ref: '#/components/schemas/DinersTacMetadataWrapper'
      x-ignoreBreakingChanges:
      - AirlineProgramMetadata->DinersTacMetadataWrapper
    RailTravelClass:
      description: Travel class
      type: string
      enum:
      - FIRST
      - STANDARD
      - BUSINESS
      - SLEEPER
      - STANDARD_PREMIUM
      - BUSINESS_PREMIUM
      - COACH
      - ROOM
      - EXECUTIVE
      example: FIRST
    CardMetadataWrapper:
      type: object
      title: CardMetadataWrapper
      description: Wrapper for CardMetadata
      properties:
        cardMetadata:
          $ref: '#/components/schemas/CardMetadata'
    DirectBillingWrapper:
      type: object
      title: DirectBillingWrapper
      description: Wrapper for DirectBilling
      properties:
        directBilling:
          $ref: '#/components/schemas/DirectBilling'
    PaymentInstruction:
      type: object
      title: PaymentInstruction
      description: Payment instruction
      required:
      - id
      - displayText
      - checkoutText
      properties:
        id:
          type: string
          format: uuid
          description: Id corresponding to the payment instruction
          example: f49d00fe-1eda-4304-ba79-a980f565281d
        displayText:
          type: string
          description: Display text corresponding to the payment instruction
          example: Room and tax only
        checkoutText:
          type: string
          description: Payment instruction text to display during checkout workflow
          example: Room and tax only
    ActualPayment:
      title: ActualPayment
      type: object
      description: Payment done via supported Spotnana payment types.
      required:
      - paymentSourceType
      - paymentMetadata
      properties:
        paymentSourceType:
          description: Type of payment source.
          $ref: '#/components/schemas/PaymentSourceType'
        paymentMetadata:
          description: Type of payment source.
          $ref: '#/components/schemas/PaymentSourceMetadata'
    RailNameInvoiceMetadata:
      title: RailNameInvoiceMetadata
      type: object
      description: RailMetadata information.
      properties:
        vendor:
          description: Name of the rail.
          type: string
          example: Amtrak
        trainTableId:
          description: Train number.
          type: string
          example: A123
        origin:
          description: Origin of the train.
          type: string
          example: Washington Union Station
        destination:
          description: Destination of the train.
          type: string
          example: South Station
        date:
          description: Date of the journey.
          $ref: '#/components/schemas/DateModel'
        travelClass:
          description: Travel class.
          $ref: '#/components/schemas/RailTravelClass'
          example: FIRST
        fareType:
          description: Fare type.
          type: string
          example: Flexible Fare
        confirmationNumber:
          description: Confirmation number.
          type: string
          example: '1234567890'
    CardCompany:
      type: string
      enum:
      - NONE
      - VISA
      - MASTERCARD
      - AMEX
      - DISCOVER
      - AIR_TRAVEL_UATP
      - CARTE_BLANCHE
      - DINERS_CLUB
      - JCB
      - BREX
      - UNION_PAY
      - EURO_CARD
      - ACCESS_CARD
      - ELO_CARD
      description: The issuing company of card
      example: VISA
    InvoiceData:
      type: object
      title: InvoiceData
      description: Actual Data
      required:
      - issuedDate
      - seller
      - buyer
      - items
      - payments
      - productId
      - productType
      - referenceIds
      - invoiceAmount
      properties:
        issuedDate:
          description: Date of invoice issue
          $ref: '#/components/schemas/DateModel'
        seller:
          description: Entity that sold the items mentioned in the invoice.
          $ref: '#/components/schemas/SellerInfo'
        buyer:
          description: Buyer of items mentioned in the invoice.
          $ref: '#/components/schemas/BuyerInfo'
        items:
          description: Items being invoiced.
          type: array
          items:
            $ref: '#/components/schemas/Item'
        payments:
          description: Information on how the items have been paid for.
          type: array
          items:
            $ref: '#/components/schemas/PaymentInformation'
        productId:
          description: ID of the product being invoiced
          type: string
          example: '123243223'
        productType:
          description: Type of product for which invoice is generated.
          $ref: '#/components/schemas/ProductType'
        invoiceAmount:
          description: Total invoice amount.
          $ref: '#/components/schemas/FareAmount'
        taxBreakdown:
          description: Tax breakdown for the invoice, this will be present for UK invoices with VAT
          $ref: '#/components/schemas/TaxBreakdown'
        referenceIds:
          description: Reference Numbers to be shown on the invoice, for ex, Trip ID, PNR ID etc.
          type: array
          items:
            $ref: '#/components/schemas/ReferenceId'
        regionCode:
          description: The region code for which the invoice is generated.
          $ref: '#/components/schemas/RegionCode'
          example: US
        documentType:
          description: Type of document
          type: string
          enum:
          - INVOICE
          - RECEIPT
          - NONE
          example: INVOICE
        footerText:
          description: Text shown at bottom of the PDF document. Nothing is shown if not set.
          type: string
          example: This document is proof of payment. If you require a tax invoice, please request one from the travel provider.
        supplierType:
          description: SupplierType for PNR, for eg. NDC, Sabre etc.
          $ref: '#/components/schemas/ThirdPartySource'
    DateTimeLocal:
      title: DateTimeLocal
      description: Local date and time in ISO 8601 format.
      type: object
      required:
      - iso8601
      properties:
        iso8601:
          type: string
          pattern: ^\d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-4]):([0-5][0-9])(:([0-5][0-9]))?$
          example: 2017-07-21T17:32
    BrexBudgetMetadataWrapper:
      type: object
      title: BrexBudgetMetadataWrapper
      description: Wrapper for BrexBudgetMetadata
      required:
      - brexBudgetMetadata
      properties:
        brexBudgetMetadata:
          $ref: '#/components/schemas/BrexBudgetMetadata'
    VirtualPaymentMetadataWrapper:
      type: object
      title: VirtualPaymentMetadataWrapper
      description: Wrapper for custom virtual payment metadata
      required:
      - virtualPaymentMetadata
      properties:
        virtualPaymentMetadata:
          $ref: '#/components/schemas/VirtualPaymentMetadata'
    CardMetadata:
      type: object
      title: CardMetadata
      description: Metadata for Card payment source.
      required:
      - card
      properties:
        card:
          $ref: '#/components/schemas/Card'
    VendorInfo:
      type: object
      title: VendorInfo
      description: Name/ID etc. of the vendor.
      required:
      - vendorId
      - vendorName
      properties:
        vendorId:
          type: string
          description: ID of the vendor.
        vendorName:
          type: string
          description: Name of the vendor.
    AmadeusCheckoutMetadata:
      type: object
      title: AmadeusCheckoutMetadata
      required:
      - splitPaymentAllowed
      description: Metadata for AmadeusCheckout
      properties:
        paymentPageId:
          type: string
          example: aslkdjalwjd
          description: Payment page Id.
        splitPaymentAllowed:
          type: boolean
          example: true
          default: false
          description: True if split payment is allowed in Amadeus Checkout, false otherwise
        splitOptionsByCardCompany:
          type: array
          items:
            $ref: '#/components/schemas/SplitOptionByCardCompany'
    FlightPassPaymentMetadataWrapper:
      type: object
      title: FlightPassPaymentMetadataWrapper
      description: Wrapper for Flight Pass payment metadata.
      required:
      - flightPassMetadata
      properties:
        metadataType:
          type: string
          description: Discriminator field for polymorphic deserialization
          example: FlightPassPaymentMetadata
          default: FlightPassPaymentMetadata
        flightPassMetadata:
          $ref: '#/components/schemas/FlightPassPaymentMetadata'
    UAPassPlusMetadata:
      type: object
      title: UAPassPlusMetadata
      description: Details for UAPassPlus Metadata.
      required:
      - programDetails
      - uatpInfo
      properties:
        programDetails:
          $ref: '#/components/schemas/ProgramDetails'
        uatpInfo:
          $ref: '#/components/schemas/UATPInformation'
    Invoice:
      type: object
      title: Invoice
      description: Invoice Data for single invoice
      required:
      - invoiceNumber
      - invoiceId
      - data
      properties:
        invoiceNumber:
          description: The invoice number
          type: string
          example: SPOT-0001232
        invoiceId:
          description: The invoice ID
          type: string
          example: d694cf94-534e-410e-b66b-11ef970622bc
        data:
          description: The invoice content
          $ref: '#/components/schemas/InvoiceData'
    HotelItemNameMetadata:
      title: HotelItemNameMetadata
      type: object
      description: HotelItemNameMetadata information.
      required:
      - pnrType
      properties:
        pnrType:
          type: string
          example: HOTEL
        hotelName:
          description: Name of the hotel.
          type: string
          example: Hilton
        hotelCity:
          description: City of the hotel.
          type: string
          example: New York
        checkInDate:
          description: Check in date.
          $ref: '#/components/schemas/DateModel'
        nights:
          description: Number of nights.
          type: string
          example: 2 Nights
    PaymentSourceMetadata:
      type: object
      title: PaymentSourceMetadata
      description: Metadata corresponding to the payment source.
      oneOf:
      - $ref: '#/components/schemas/CardMetadataWrapper'
      - $ref: '#/components/schemas/VirtualCardMetadataWrapper'
      - $ref: '#/components/schemas/RewardsProgramMetadataWrapper'
      - $ref: '#/components/schemas/CustomPaymentMethodMetadataWrapper'
      - $ref: '#/components/schemas/VendorProgramPaymentDescriptorWrapper'
    Card:
      type: object
      title: Card
      description: User card info
      required:
      - number
      properties:
        id:
          type: string
          description: Unique identifier for this card
          format: uuid
          example: 34d536b6-f8ff-11eb-9a61-0242ac180002
        type:
          type: string
          enum:
          - UNKNOWN
          - CREDIT
          - DEBIT
          description: Type of card
          example: CREDIT
        company:
          $ref: '#/components/schemas/CardCompany'
        name:
          description: Name on card
          type: string
          example: Harrison Schwartz
          x-pii: SENSITIVE
        address:
          description: Billing address
          $ref: '#/components/schemas/PostalAddress'
          x-pii: SENSITIVE
        number:
          type: string
          description: Card number
          example: '4111111111111111'
        expiryMonth:
          type: integer
          format: int32
          minimum: 1
          maximum: 12
          description: Expiry month
          example: 1
          deprecated: true
          x-sunset: '2026-07-01'
        expiryYear:
          type: integer
          format: int32
          description: Expiry year
          minimum: 2000
          example: 2010
          deprecated: true
          x-sunset: '2026-07-01'
        cvv:
          type: string
          description: Card cvv number
          example: '012'
        label:
          type: string
          description: Card Label
          example: Label amex
        currency:
          type: string
          description: Native currency of the card.
          example: USD
        externalId:
          type: string
          description: Spotnana partner card id.
          example: bxt_RNGsNfzgJDaTstKIKqK4xEuhGYAnMdYK8T40
        vaultId:
          type: string
          description: ID of the vault used for creating the card.
          format: uuid
          example: 34d536b6-f8ff-11eb-9a61-0242ac180002
        expiry:
          description: Card Expiry.
          $ref: '#/components/schemas/CardExpiry'
        ownershipLabel:
          $ref: '#/components/schemas/OwnershipLabel'
          example: PERSONAL
    FlightPassPaymentAmounts:
      type: object
      title: FlightPassPaymentAmounts
      description: Fare breakdown for the flight pass booking.
      properties:
        totalAmount:
          description: Total value (base + taxes).
          $ref: '#/components/schemas/Money'
        baseAmount:
          description: Base fare excluding taxes.
          $ref: '#/components/schemas/Money'
        totalTaxes:
          description: Sum of all taxes, fees, and charges.
          $ref: '#/components/schemas/Money'
        taxBreakdown:
          type: array
          description: Breakdown of taxes by code (e.g. GST_HST, QST, OTHER).
          items:
            $ref: '#/components/schemas/FlightPassTax'
    TokenizedExpiryWrapper:
      type: object
      title: TokenizedExpiryWrapper
      properties:
        tokenizedExpiry:
          $ref: '#/components/schemas/TokenizedExpiry'
    RewardsProgramType:
      type: string
      title: RewardsProgramType
      description: Type of Rewards Program
      enum:
      - BREX_POINTS
      - QANTAS_POINTS
    Item:
      type: object
      title: Item
      description: Item being invoiced.
      required:
      - name
      - identifier
      - type
      - amount
      - travelerName
      - purchaseType
      properties:
        name:
          description: Name of the item.
          type: string
          example: Air Ticket SFO-EWR
        identifier:
          description: Number identifying the item, for ex, the ticket number for air ticket.
          type: string
          example: 00129383829
        purchaseType:
          description: Type of item, indicates what type of item is being sold
          type: string
          enum:
          - TRIP_FEE
          - FLIGHT
          - ANCILLARY
          - HOTEL
          - CAR
          - RAIL
          - MERCHANT_FEE
          - LIMO
          - MISC
          example: TRIP_FEE
        type:
          description: Type of item, indicates if the item was purchased vs refunded.
          type: string
          enum:
          - PURCHASE
          - REFUND
          example: PURCHASE
        amount:
          description: Amount of money.
          $ref: '#/components/schemas/FareAmount'
        travelerName:
          description: Name of the traveler.
          type: string
          example: John Doe
        taxBreakdown:
          description: Tax breakdown for the invoice, this will be present for UK invoices with VAT
          $ref: '#/components/schemas/TaxBreakdown'
        itemNameMetadata:
          description: Metadata for the item name.
          $ref: '#/components/schemas/ItemNameMetadata'
    Cabin:
      title: Cabin
      description: Flight cabin
      type: string
      enum:
      - UNKNOWN_CABIN
      - ECONOMY
      - PREMIUM_ECONOMY
      - BUSINESS
      - FIRST
      example: ECONOMY
    VendorProgramPaymentMetadata:
      type: object
      title: VendorProgramPaymentMetadata
      description: Vendor program payment specific metadata.
      oneOf:
      - $ref: '#/components/schemas/DirectBillingWrapper'
      - $ref: '#/components/schemas/AirlineProgramWrapper'
    IdInfo:
      type: object
      title: IdInfo
      description: Identity information of the buyer or seller
      required:
      - idType
      - value
      properties:
        idType:
          description: The type of Id.
          type: string
          enum:
          - TAX_ID
          - VAT_ID
          - VAT_REG_NO
          - GST_NO
          - ABN
          - GSTIN
          - SIRET
          - BUSINESS_REG_NO
          - UID
          - CVR_NO
          - EIN
          example: TAX_ID
        value:
          description: Value of the Id.
          type: string
          example: TXG239023092
    SimpleMoney:
      type: object
      title: SimpleMoney
      description: Money object containing just amount and currency code.
      required:
      - amount
      - currencyCode
      properties:
        amount:
          type: number
          format: double
          description: Amount
          example: 510
        currencyCode:
          type: string
          description: The 3-letter currency code defined in ISO 4217.
          example: GBP
    Airline:
      title: Airline
      description: Airline Details
      type: object
      required:
      - carrierCode
      - airlineName
      properties:
        carrierCode:
          type: string
          description: Unique code for the Airline
          example: AA
        airlineName:
          type: string
          description: Full Name of the Airline
          example: American Airlines
        isPresentInPreferredVendors:
          type: boolean
          description: Whether the airline is present in preferred vendor list. This is an optional field which gets populated only in the preferred vendor autocomplete API.
          example: true
    Money:
      type: object
      title: Money
      description: 'Money object containing details such as the amount, the currency code, and the converted amount.

        '
      required:
      - amount
      - currencyCode
      properties:
        amount:
          type: number
          format: double
          description: The numeric value for the amount of money.
          example: 510
        currencyCode:
          type: string
          description: The 3-letter currency code for the money amount (defined using ISO 4217 standard).
          example: GBP
        convertedAmount:
          type: number
          format: double
          description: 'The converted currency and amount that has been converted (if a currency conversion has been requested).

            For example, if the call requests that money be sent in a specified currency (because the frontend requested

            the backend to send money in the user''s preferred currency).

            '
          example: 715.42
        convertedCurrency:
          type: string
          description: The 3-letter currency code for the converted currency (defined using ISO 4217 standard).
          example: USD
        otherCoinage:
          type: array
          title: OtherCoinage
          description: List of the dollar amount in other coinage systems like reward points, cryptocurrency etc.
          items:
            type: object
            properties:
              coinageCode:
                $ref: '#/components/schemas/PaymentMethod'
                description: Payment method
              amount:
                type: number
                format: double
                example: 1000
              conversionRate:
                type: number
                format: double
                description: 1 coin in this system equals to how many currency value
                example: 0.01
              preferredCurrencyConversionRate:
                type: number
                format: double
                description: 1 coin in this system equals to how many currency value
                example: 0.01
              otherCoinageMetadata:
                description: Metadata to store additional information related to the payment method
                discriminator:
                  propertyName: metadataType
                  mapping:
                    FlightPassPaymentMetadata: '#/components/schemas/FlightPassPaymentMetadataWrapper'
                oneOf:
                - $ref: '#/components/schemas/FlightPassPaymentMetadataWrapper'
    FlightPassWrapper:
      type: object
      title: FlightPassWrapper
      description: Wrapper for Flight Pass Payment Source.
      required:
      - flightPassMetadata
      properties:
        flightPassMetadata:
          $ref: '#/components/schemas/FlightPassMetadata'
    UATPMetadataWrapper:
      type: object
      title: UATPMetadataWrapper
      description: Wrapper for UATP Metadata.
      properties:
        uatpMetadata:
          $ref: '#/components/schemas/UATPMetadata'
    ExchangePayment:
      title: ExchangePayment
      type: object
      description: In case of exchange, payment accounted to the original ticket.
      required:
      - originalTicketNumber
      properties:
        originalTicketNumber:
          description: Ticket number which was exchanged to pay for current ticket.
          type: string
          example: 00129332929
    OwnershipLabel:
      title: OwnershipLabel
      type: string
      description: Ownership label of the card whether it is personal, corporate or central.
      enum:
      - CORPORATE
      - PERSONAL
      - CENTRAL
    AirlineProgram:
      type: object
      title: AirlineProgram
      description: Descriptor for Airline program details.
      required:
      - airlineInfo
      - airlineProgramMetadata
      properties:
        airlineInfo:
          type: array
          description: Eligible airlines' information list.
          items:
            $ref: '#/components/schemas/Airline'
        airlineProgramMetadata:
          description: Airline program payment specific metadata.
          $ref: '#/components/schemas/AirlineProgramMetadata'
    PointsBalance:
      type: object
      title: PointsBalance
      description: Point type and balance
      required:
      - amount
      - pointType
      properties:
        amount:
          type: number
          format: double
          description: Points balance
          example: 10
        pointType:
          type: string
          description: Point type. Valid type is BREX_POINT_TYPE
          example: BREX_POINT_TYPE
    RegionCode:
      description: The region code for which the following invoicing information is applicable.
      type: string
      enum:
      - US
      - UK
      - NL
      - SG
      - CA
      - MX
      - DO
      - AR
      - BR
      - CO
      - GT
      - PE
      - CR
      - IL
      - NOR
      - AE
      - SE
      - TR
      - PL
      - SA
      - ZA
      - AU
      - CN
      - HK
      - IN
      - ID
      - JP
      - KR
      - MY
      - NZ
      - PH
      - TH
      - VN
      - FR
      - DK
      - CZ
      - HU
      - AL
      - BY
      - BA
      - BG
      - IS
      - AD
      - AT
      - BE
      - CY
      - EE
      - FI
      - DE
      - GR
      - IE
      - IT
      - XK
      - LV
      - LT
      - LU
      - MC
      - ME
      - MT
      - PT
      - SM
      - SK
      - SI
      - ES
      - VA
      - HR
      - LI
      - MD
      - MK
      - RO
      - RU
      - RS
      - CH
      - UA
      - GB
      - TW
      example: US
    QantasTravelFundMetadata:
      type: object
      title: QantasTravelFundMetadata
      description: Metadata for Qantas Travel Fund payment source.
      required:
      - label
      - fundBalance
      properties:
        label:
          type: string
          example: QANTAS_TRAVEL_FUND
          description: Label for the Qantas Travel Fund.
        fundBalance:
          $ref: '#/components/schemas/Money'
          description: Balance of the travel fund wallet.
    NoPrepaymentWrapper:
      type: object
      title: NoPrepaymentWrapper
      description: Wrapper for No Prepayment Payment Source.
      required:
      - noPrepaymentMetadata
      properties:
        noPrepaymentMetadata:
          $ref: '#/components/schemas/NoPrepaymentMetadata'
    ProductType:
      description: Type of product being invoiced
      type: string
      enum:
      - PNR
      - SERVICE_FEE
      example: PNR
    FareAmount:
      type: object
      title: FareAmount
      description: Fare amount including base fare and tax.
      required:
      - base
      - tax
      properties:
        base:
          description: Base fare amount.
          $ref: '#/components/schemas/Money'
        tax:
          description: Tax amount.
          $ref: '#/components/schemas/Money'
        taxBreakdown:
          description: Breakdown of tax amounts.
          $ref: '#/components/schemas/TaxBreakdown'
    FlightPassPaymentMetadata:
      type: object
      title: FlightPassPaymentMetadata
      description: Metadata specific to Flight Pass payment method in OtherCoinage.
      properties:
        flightPassNumber:
          type: string
          description: Flight pass number
          example: FP123456789
        flightPassAmounts:
          $ref: '#/components/schemas/FlightPassPaymentAmounts'
    SplitOptionByCardCompany:
      type: 

# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/spotnana/refs/heads/main/openapi/spotnana-invoicing-api-openapi.yml