> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gr4vy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Capture transaction

> Captures a previously authorized transaction. You can capture the full or a partial amount, as long as it does not exceed the authorized amount (unless over-capture is enabled).

This endpoint requires the `transactions.write` scope.


## OpenAPI

````yaml /openapi.speakeasy.json POST /transactions/{transaction_id}/capture
openapi: 3.1.0
info:
  title: Gr4vy
  description: The Gr4vy API.
  version: 1.0.0
servers:
  - url: https://api.sandbox.{id}.gr4vy.app
    x-speakeasy-server-id: sandbox
    variables:
      id:
        default: example
        description: The subdomain for your Gr4vy instance.
  - url: https://api.{id}.gr4vy.app
    x-speakeasy-server-id: production
    variables:
      id:
        default: example
        description: The subdomain for your Gr4vy instance.
security:
  - bearerAuth: []
tags:
  - name: 3DS scenarios
    description: Manage and create 3DS scenarios in sandbox.
  - name: Account updater
    description: Schedule stored cards for an account update.
  - name: Audit logs
    description: Query user activity.
  - name: Buyers
    description: Manage buyers.
  - name: Buyers - Gift cards
    description: Query gift cards for buyers.
  - name: Buyers - Payment methods
    description: Query payment methods for buyers.
  - name: Buyers - Shipping details
    description: Manage shipping details for buyers.
  - name: Card details
    description: Returns information about a card.
  - name: Card scheme definitions
    description: List definitions for card schemes.
  - name: Checkout sessions
    description: Manage checkout sessions.
  - name: Digital wallets - Sessions
    description: Create sessions for digital wallets like Apple Pay and Google Pay.
  - name: Digital wallets - Setup
    description: Manage digital wallets like Apple Pay and Google Pay.
  - name: Gift cards
    description: Manage stored gift cards.
  - name: Insights
    description: Retrieve Insights data.
  - name: Insights - Presets
    description: Manage presets for Insights.
  - name: Merchant accounts
    description: Manage merchant accounts in an instance.
  - name: Merchant accounts - 3DS configuration
    description: Manage 3DS profiles for merchant accounts.
  - name: Monitoring
    description: Manage monitoring and alerting.
  - name: Payment links
    description: Manage payment links.
  - name: Payment methods
    description: Manage stored payment methods.
  - name: Payment methods - Definitions
    description: Manage payment method definitions.
  - name: Payment methods - Network tokens
    description: Manage network tokens for stored payment methods.
  - name: Payment methods - Payment service tokens
    description: Manage payment service tokens for stored payment methods.
  - name: Payment options
    description: Fetch a list of payment options to display at checkout.
  - name: Payment service definitions
    description: Fetch info about the definition of each payment service.
  - name: Payment services
    description: Manage configured payment services.
  - name: Payouts
    description: Payout API.
  - name: Refunds
    description: Manage transaction refunds.
  - name: Reports
    description: Manage one-off and scheduled reports.
  - name: Reports - Executions
    description: Manage executions of reports.
  - name: Transactions
    description: Manage transaction.
  - name: Transactions - Actions
    description: Read Flow actions triggered for a transaction.
  - name: Transactions - Chargebacks
    description: Read transaction chargeback data.
  - name: Transactions - Chargeback reversals
    description: Read transaction chargeback reversal data.
  - name: Transactions - Settlements
    description: Read transaction settlement data.
  - name: Transactions - Sessions
    description: Manage transaction session data.
  - name: Webhook subscriptions
    description: Manage webhook subscriptions.
paths:
  /transactions/{transaction_id}/capture:
    post:
      tags:
        - Transactions
      summary: Capture transaction
      description: >-
        Captures a previously authorized transaction. You can capture the full
        or a partial amount, as long as it does not exceed the authorized amount
        (unless over-capture is enabled).
      operationId: capture_transaction
      parameters:
        - name: transaction_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            description: The ID of the transaction
            examples:
              - 7099948d-7286-47e4-aad8-b68f7eb44591
            title: Transaction Id
          description: The ID of the transaction
        - name: prefer
          in: header
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: The preferred resource type in the response.
            examples:
              - resource=transaction
              - resource=transaction-capture
            title: Prefer
          description: The preferred resource type in the response.
        - name: x-gr4vy-merchant-account-id
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: The ID of the merchant account to use for this request.
            examples:
              - default
            title: X-Gr4Vy-Merchant-Account-Id
          description: The ID of the merchant account to use for this request.
          x-speakeasy-name-override: merchantAccountId
        - name: idempotency-key
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              A unique key that identifies this request. Providing this header
              will make this an idempotent request. We recommend using V4 UUIDs,
              or another random string with enough entropy to avoid collisions.
            examples:
              - request-12345
            title: Idempotency-Key
          description: >-
            A unique key that identifies this request. Providing this header
            will make this an idempotent request. We recommend using V4 UUIDs,
            or another random string with enough entropy to avoid collisions.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionCaptureCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/Transaction'
                  - $ref: '#/components/schemas/TransactionCapture'
                title: Response 200 Capture Transaction
        '400':
          description: The request was invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error400'
        '401':
          description: The request was unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
        '403':
          description: >-
            The credentials were invalid or the caller did not have permission
            to act on the resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error403'
        '404':
          description: The resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error404'
        '405':
          description: The request method was not allowed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error405'
        '409':
          description: A duplicate record was found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error409'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '425':
          description: The request was too early.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error425'
        '429':
          description: Too many requests were made.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error429'
        '500':
          description: The server encountered an error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error500'
        '502':
          description: The server encountered an error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error502'
        '504':
          description: The server encountered an error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error504'
      x-codeSamples:
        - lang: javascript
          label: TypeScript
          source: |-
            import { Gr4vy, withToken } from "@gr4vy/sdk";
            import fs from "fs";

            const gr4vy = new Gr4vy({
                id: "example",
                server: "sandbox",
                merchantAccountId: "default",
                bearerAuth: withToken({
                  privateKey: fs.readFileSync("private_key.pem", "utf8"),
                }),
            });

            async function run() {
              const result = await gr4vy.transactions.capture({
                transactionId: "7099948d-7286-47e4-aad8-b68f7eb44591",
                transactionCaptureCreate: {},
              });

              console.log(result);
            }

            run();
        - lang: python
          label: Python
          source: |-
            from gr4vy import Gr4vy
            import os


            with Gr4vy(
                id="example",
                server="sandbox",
                merchant_account_id="default",
                bearer_auth=auth.with_token(open("./private_key.pem").read())
            ) as g_client:

                res = g_client.transactions.capture(transaction_id="7099948d-7286-47e4-aad8-b68f7eb44591")

                # Handle response
                print(res)
        - lang: go
          label: Go
          source: "package main\n\nimport(\n\t\"context\"\n\t\"os\"\n\tgr4vygo \"github.com/gr4vy/gr4vy-go\"\n\t\"github.com/gr4vy/gr4vy-go/models/components\"\n\t\"github.com/gr4vy/gr4vy-go/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := gr4vygo.New(\n        gr4vygo.WithMerchantAccountID(\"default\"),\n        gr4vygo.WithSecurity(os.Getenv(\"GR4VY_BEARER_AUTH\")),\n    )\n\n    res, err := s.Transactions.Capture(ctx, operations.CaptureTransactionRequest{\n        TransactionID: \"7099948d-7286-47e4-aad8-b68f7eb44591\",\n        TransactionCaptureCreate: components.TransactionCaptureCreate{},\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res != nil {\n        switch res.Type {\n            case operations.Response200CaptureTransactionTypeTransaction:\n                // res.Transaction is populated\n            case operations.Response200CaptureTransactionTypeTransactionCapture:\n                // res.TransactionCapture is populated\n        }\n\n    }\n}"
        - lang: php
          label: PHP
          source: |-
            declare(strict_types=1);

            require 'vendor/autoload.php';

            use Gr4vy;

            $sdk = Gr4vy\SDK::builder()
                ->setId('example')
                ->setServer('sandbox')
                ->setSecuritySource(Auth::withToken($privateKey))
                ->setMerchantAccountId('default')
                ->build();

            $request = new Gr4vy\CaptureTransactionRequest(
                transactionId: '7099948d-7286-47e4-aad8-b68f7eb44591',
                transactionCaptureCreate: new Gr4vy\TransactionCaptureCreate(),
            );

            $response = $sdk->transactions->capture(
                request: $request
            );

            if ($response->response200CaptureTransaction !== null) {
                // handle response
            }
        - lang: java
          label: Java
          source: |-
            package hello.world;

            import com.gr4vy.sdk.Gr4vy;
            import com.gr4vy.sdk.models.components.*;
            import com.gr4vy.sdk.models.errors.*;
            import com.gr4vy.sdk.models.operations.*;
            import java.lang.Exception;
            import java.lang.Object;

            public class Application {

                public static void main(String[] args) throws Exception {

                    Gr4vy sdk = Gr4vy.builder()
                            .merchantAccountId("default")
                            .bearerAuth(System.getenv().getOrDefault("BEARER_AUTH", ""))
                        .build();

                    CaptureTransactionRequest req = CaptureTransactionRequest.builder()
                            .transactionId("7099948d-7286-47e4-aad8-b68f7eb44591")
                            .transactionCaptureCreate(TransactionCaptureCreate.builder()
                                .build())
                            .build();

                    CaptureTransactionResponse res = sdk.transactions().capture()
                            .request(req)
                            .call();

                    if (res.response200CaptureTransaction().isPresent()) {
                        Response200CaptureTransaction unionValue = res.response200CaptureTransaction().get();
                        Object raw = unionValue.value();
                        if (raw instanceof Transaction) {
                            Transaction transactionValue = (Transaction) raw;
                            // Handle transaction variant
                        } else if (raw instanceof TransactionCapture) {
                            TransactionCapture transactionCaptureValue = (TransactionCapture) raw;
                            // Handle transactionCapture variant
                        } else {
                            // Unknown or unsupported variant
                        }
                    }
                }
            }
        - lang: csharp
          label: C#
          source: |-
            using Gr4vy;
            using Gr4vy.Models.Components;
            using Gr4vy.Models.Requests;

            var sdk = new Gr4vySDK(
                id: "example",
                server: SDKConfig.Server.Sandbox,
                bearerAuthSource: Auth.WithToken(privateKey),
                merchantAccountId: "default"
            );

            CaptureTransactionRequest req = new CaptureTransactionRequest() {
                TransactionId = "7099948d-7286-47e4-aad8-b68f7eb44591",
                TransactionCaptureCreate = new TransactionCaptureCreate() {},
            };

            var res = await sdk.Transactions.CaptureAsync(req);

            // handle response
components:
  schemas:
    TransactionCaptureCreate:
      properties:
        amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Amount
          description: >-
            The amount to capture, in the smallest currency unit (e.g., cents).
            This must be less than or equal to the authorized amount, unless
            over-capture is available.
          examples:
            - 1299
        airline:
          anyOf:
            - $ref: '#/components/schemas/Airline'
            - type: 'null'
          description: >-
            The airline data to submit to the payment service during the capture
            call.
      additionalProperties: false
      type: object
      title: TransactionCaptureCreate
      description: Request body for capturing an authorized transaction.
    Transaction:
      properties:
        type:
          type: string
          const: transaction
          title: Type
          description: Always `transaction`.
          default: transaction
          examples:
            - transaction
        id:
          type: string
          format: uuid
          title: Id
          description: The ID for the transaction.
          examples:
            - 7099948d-7286-47e4-aad8-b68f7eb44591
        reconciliation_id:
          type: string
          title: Reconciliation Id
          description: >-
            The base62 encoded transaction ID. This represents a shorter version
            of this transaction's `id` which is sent to payment services,
            anti-fraud services, and other connectors. You can use this ID to
            reconcile a payment service's transaction against our system. This
            ID is sent instead of the transaction ID because not all services
            support 36 digit identifiers.
          examples:
            - default
        merchant_account_id:
          type: string
          title: Merchant Account Id
          description: The ID of the merchant account this transaction belongs to.
          examples:
            - default
        currency:
          type: string
          pattern: ^[A-Z]{3}$
          title: Currency
          description: The currency code for this transaction.
          examples:
            - EUR
            - GBP
            - USD
        amount:
          type: integer
          title: Amount
          description: >-
            The total amount for this transaction across all funding sources
            including gift cards.
          examples:
            - 1299
        status:
          description: >-
            The status of the transaction for the `payment_method`. The status
            may change over time as asynchronous processing events occur.
          examples:
            - authorization_succeeded
          type: string
          enum:
            - processing
            - authorization_succeeded
            - authorization_declined
            - authorization_failed
            - authorization_voided
            - authorization_void_pending
            - capture_succeeded
            - capture_pending
            - buyer_approval_pending
          title: TransactionStatus
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        authorized_amount:
          type: integer
          title: Authorized Amount
          description: >-
            The amount for this transaction that has been authorized for the
            `payment_method`. This can be less than the `amount` if gift cards
            were used.
          examples:
            - 1299
        captured_amount:
          type: integer
          title: Captured Amount
          description: >-
            The total amount captured for this transaction, in the smallest
            currency unit (for example, cents or pence). This can be the full
            value of the `authorized_amount` or less.
          examples:
            - 1299
        refunded_amount:
          type: integer
          title: Refunded Amount
          description: >-
            The total amount refunded for this transaction, in the smallest
            currency unit (for example, cents or pence). This can be the full
            value of the `captured_amount` or less.
          examples:
            - 1299
        settled_currency:
          anyOf:
            - type: string
              pattern: ^[A-Z]{3}$
              examples:
                - EUR
                - GBP
                - USD
            - type: 'null'
          title: Settled Currency
          description: The ISO 4217 currency code of this transaction's settlement.
          examples:
            - USD
        settled_amount:
          type: integer
          title: Settled Amount
          description: >-
            The net amount settled for this transaction, in the smallest
            currency unit (for example, cents or pence).
          examples:
            - 1100
        settled:
          type: boolean
          title: Settled
          description: Indicates whether this transaction has been settled.
          examples:
            - true
        country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Country
          description: >-
            The 2-letter ISO 3166-1 alpha-2 country code for the transaction.
            Used to filter payment services for processing.
          examples:
            - US
        external_identifier:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: External Identifier
          description: >-
            An external identifier that can be used to match the transaction
            against your own records.
          examples:
            - transaction-12345
        intent:
          description: The original `intent` used when the transaction was created.
          examples:
            - capture
          type: string
          enum:
            - authorize
            - capture
          title: TransactionIntent
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        payment_method:
          anyOf:
            - $ref: '#/components/schemas/TransactionPaymentMethod'
            - type: 'null'
          description: The payment method used for this transaction.
        method:
          anyOf:
            - type: string
              enum:
                - abitab
                - affirm
                - afterpay
                - alipay
                - alipayhk
                - applepay
                - arcuspaynetwork
                - bacs
                - bancontact
                - bank
                - banked
                - bcp
                - becs
                - bitpay
                - blik
                - ach
                - boleto
                - boost
                - breb
                - capitec
                - card
                - cashapp
                - chaseorbital
                - clearpay
                - click-to-pay
                - dana
                - dcb
                - dlocal
                - ebanx
                - eckoh
                - efecty
                - eps
                - everydaypay
                - gcash
                - gem
                - gemds
                - gift-card
                - giropay
                - givingblock
                - gocardless
                - googlepay
                - googlepay_pan_only
                - gopay
                - grabpay
                - ideal
                - kakaopay
                - kcp
                - khipu
                - klarna
                - latitude
                - latitudeds
                - laybuy
                - linepay
                - linkaja
                - maybankqrpay
                - mercadopago
                - multibanco
                - multipago
                - nequi
                - netbanking
                - network-token
                - nupay
                - oney_10x
                - oney_12x
                - oney_3x
                - oney_4x
                - oney_6x
                - onlinebankingcz
                - ovo
                - oxxo
                - p24
                - pagoefectivo
                - payid
                - paymaya
                - paypal
                - paypalpaylater
                - paypay
                - payto
                - payvalida
                - paze
                - picpay
                - pix
                - plaid
                - pse
                - rabbitlinepay
                - razorpay
                - rapipago
                - redpagos
                - scalapay
                - sepa
                - servipag
                - shopeepay
                - singteldash
                - smartpay
                - sofort
                - spei
                - stitch
                - swish
                - stripedd
                - stripetoken
                - tapi
                - tapifintechs
                - thaiqr
                - touchngo
                - truemoney
                - trustly
                - trustlyeurope
                - upi
                - venmo
                - vipps
                - waave
                - webpay
                - wechat
                - wero
                - yape
                - zippay
              title: Method
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The method used for the transaction.
          examples:
            - card
        instrument_type:
          anyOf:
            - type: string
              enum:
                - pan
                - card_token
                - redirect
                - redirect_token
                - googlepay
                - applepay
                - network_token
                - plaid
                - bank
              title: InstrumentType
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The name of the instrument used to process the transaction.
          examples:
            - pan
        error_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Code
          description: The standardized error code set by Gr4vy.
          examples:
            - missing_redirect_url
        payment_service:
          anyOf:
            - $ref: '#/components/schemas/TransactionPaymentService'
            - type: 'null'
          description: The payment service used for this transaction.
        pending_review:
          type: boolean
          title: Pending Review
          description: >-
            Whether a manual anti fraud review is pending with an anti fraud
            service.
          default: false
          examples:
            - false
        buyer:
          anyOf:
            - $ref: '#/components/schemas/TransactionBuyer'
            - type: 'null'
          description: The buyer used for this transaction.
        raw_response_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Response Code
          description: >-
            This is the response code received from the payment service. This
            can be set to any value and is not standardized across different
            payment services.
          examples:
            - E104
        raw_response_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Response Description
          description: ' This is the response description received from the payment service. This can be set to any value and is not standardized across different payment services.'
          examples:
            - Missing redirect URL
        shipping_details:
          anyOf:
            - $ref: '#/components/schemas/ShippingDetails'
            - type: 'null'
          description: The shipping details associated with the transaction.
        checkout_session_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Checkout Session Id
          description: >-
            The identifier for the checkout session this transaction is
            associated with.
          examples:
            - 4137b1cf-39ac-42a8-bad6-1c680d5dab6b
        gift_card_redemptions:
          items:
            $ref: '#/components/schemas/GiftCardRedemption'
          type: array
          title: Gift Card Redemptions
          description: The gift cards redeemed for this transaction.
        gift_card_service:
          anyOf:
            - $ref: '#/components/schemas/GiftCardService'
            - type: 'null'
          description: The gift card service used for this transaction.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: >-
            The date and time when the transaction was created, in ISO 8601
            format.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: >-
            The date and time when the transaction was last updated, in ISO 8601
            format.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        disputed:
          type: boolean
          title: Disputed
          description: Indicates whether this transaction has been disputed.
          examples:
            - true
        airline:
          anyOf:
            - $ref: '#/components/schemas/Airline'
            - type: 'null'
          description: Contains information about an airline travel, if applicable.
        auth_response_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Auth Response Code
          description: This is the response description received from the processor.
          examples:
            - '00'
        avs_response_code:
          anyOf:
            - type: string
              enum:
                - match
                - no_match
                - partial_match_address
                - partial_match_postcode
                - partial_match_name
                - unavailable
              title: AVSResponseCode
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: >-
            The response code received from the payment service for the Address
            Verification Check (AVS). This code is mapped to a standardized
            Gr4vy AVS response code.
          examples:
            - match
        cvv_response_code:
          anyOf:
            - type: string
              enum:
                - match
                - no_match
                - unavailable
                - not_provided
              title: CVVResponseCode
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: >-
            The response code received from the payment service for the Card
            Verification Value (CVV). This code is mapped to a standardized
            Gr4vy CVV response code.
          examples:
            - match
        anti_fraud_decision:
          anyOf:
            - type: string
              enum:
                - accept
                - error
                - exception
                - reject
                - review
                - skipped
                - pending
              title: AntiFraudDecision
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: >-
            The mapped decision received from the anti-fraud service. In case of
            a review decision this field is not updated once the review is
            resolved.
          examples:
            - accept
        payment_source:
          description: The way payment method information made it to this transaction.
          examples:
            - ecommerce
          type: string
          enum:
            - ecommerce
            - moto
            - recurring
            - installment
            - card_on_file
          title: TransactionPaymentSource
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        merchant_initiated:
          type: boolean
          title: Merchant Initiated
          description: >-
            Indicates whether the transaction was initiated by the merchant or
            the customer.
          examples:
            - true
        is_subsequent_payment:
          type: boolean
          title: Is Subsequent Payment
          description: >-
            Indicates whether the transaction represents a subsequent payment or
            an initial one.
          examples:
            - false
        cart_items:
          anyOf:
            - items:
                $ref: '#/components/schemas/CartItem'
              type: array
            - type: 'null'
          title: Cart Items
          description: >-
            An array of cart items that represents the line items of a
            transaction.
        statement_descriptor:
          anyOf:
            - $ref: '#/components/schemas/StatementDescriptor'
            - type: 'null'
          description: >-
            The statement descriptor is the text to be shown on the buyer's
            statements.
        scheme_transaction_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Scheme Transaction Id
          description: >-
            An identifier for the transaction used by the scheme itself, when
            available.
          examples:
            - '123456789012345'
        three_d_secure:
          anyOf:
            - $ref: '#/components/schemas/TransactionThreeDSecureSummary'
            - type: 'null'
          description: >-
            The 3-D Secure data that was sent to the payment service for the
            transaction.
        payment_service_transaction_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Payment Service Transaction Id
          description: The payment service's unique ID for the transaction.
          examples:
            - tx-12345
        additional_identifiers:
          additionalProperties:
            anyOf:
              - type: string
              - type: 'null'
          type: object
          title: Additional Identifiers
          description: >-
            A list of additional identifiers that we may keep track of to manage
            this transaction. This may include the authorization ID, capture ID,
            and processor ID, as well as an undefined list of additional
            identifiers.
          examples:
            - payment_service_authorization_id: auth-12345
              payment_service_capture_id: capture-12345
        metadata:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Metadata
          description: >-
            Additional information about the transaction stored as key-value
            pairs.
          examples:
            - cohort: cohort-12345
              order: order-12345
        authorized_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Authorized At
          description: The date this transaction was authorized at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        captured_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Captured At
          description: The date this transaction was captured at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        voided_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Voided At
          description: The date this transaction was voided at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        canceled_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Canceled At
          description: The date this transaction was canceled at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        approval_expires_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Approval Expires At
          description: The date this transaction's approval URL will expire at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        buyer_approval_timedout_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Buyer Approval Timedout At
          description: The date this transaction's approval timed out at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        intent_outcome:
          description: >-
            The outcome of the original intent of a transaction. This allows you
            to understand if the intent of the transaction (e.g. `capture` or
            `authorize`) has been achieved when dealing with multiple payment
            instruments.
          examples:
            - succeeded
          type: string
          enum:
            - pending
            - succeeded
            - failed
          title: TransactionIntentOutcome
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        multi_tender:
          type: boolean
          title: Multi Tender
          description: >-
            The outcome of the original intent of a transaction. This allows you
            to understand if the intent of the transaction (e.g. `capture` or
            `authorize`) has been achieved when dealing with multiple payment
            instruments.
          examples:
            - true
        account_funding_transaction:
          type: boolean
          title: Account Funding Transaction
          description: >-
            Marks the transaction as an AFT. Requires the payment service to
            support this feature, and might `recipient` and `buyer` data
          examples:
            - true
        recipient:
          anyOf:
            - $ref: '#/components/schemas/Recipient'
            - type: 'null'
          description: The recipient of any account to account funding. For use with AFTs.
        merchant_advice_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Merchant Advice Code
          description: >-
            An optional merchant advice code which provides insight into the
            type of transaction or reason why the payment failed.
          examples:
            - '02'
            - '21'
        installment_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Installment Count
          description: The number of installments for this transaction, if applicable.
          examples:
            - 3
        session_token:
          anyOf:
            - type: string
            - type: 'null'
          title: Session Token
          description: >-
            A session token that can be used to fetch session data for direct
            client integrations.
          examples:
            - j3CZf9Eg6nUygMAVA6PXsVWGHiccj
        tax_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Tax Amount
          description: >-
            The sales tax amount for this transaction, represented as a monetary
            amount in the smallest currency unit for the given currency, for
            example `1299` cents to create an authorization for `$12.99`
          examples:
            - 1299
        merchant_tax_id:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Merchant Tax Id
          description: Merchant tax ID (for example, EIN or VAT number).
        purchase_order_number:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Purchase Order Number
          description: Invoice number or Purchase Order number.
        customer_reference_number:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Customer Reference Number
          description: Customer code or reference.
        amount_includes_tax:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Amount Includes Tax
          description: Whether the tax is included in the amount.
          examples:
            - false
        supplier_order_number:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Supplier Order Number
          description: The merchant's unique identifier for the sales order or invoice.
        duty_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Duty Amount
          description: Total charges for import/export duties.
          examples:
            - 1299
        shipping_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Shipping Amount
          description: Total shipping amount.
          examples:
            - 1299
        iso_response_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Iso Response Code
          description: >-
            This is the ISO8583 response code code received from the payment
            service.
          examples:
            - '0110'
      additionalProperties: false
      type: object
      required:
        - id
        - reconciliation_id
        - merchant_account_id
        - currency
        - amount
        - status
        - authorized_amount
        - captured_amount
        - refunded_amount
        - settled_amount
        - settled
        - intent
        - gift_card_redemptions
        - created_at
        - updated_at
        - disputed
        - payment_source
        - merchant_initiated
        - is_subsequent_payment
        - intent_outcome
        - multi_tender
        - account_funding_transaction
      title: Transaction
      description: A full transaction resource.
    TransactionCapture:
      properties:
        type:
          type: string
          const: transaction-capture
          title: Type
          description: Always `transaction-capture`.
          default: transaction-capture
          examples:
            - transaction-capture
        status:
          description: The status of the capture call.
          examples:
            - succeeded
          type: string
          enum:
            - succeeded
            - pending
            - declined
            - failed
          title: CaptureStatus
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        code:
          anyOf:
            - type: string
            - type: 'null'
          title: Code
          description: The standardized error code set by Gr4vy.
          examples:
            - service_error
        raw_response_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Response Code
          description: >-
            This is the response code received from the payment service. This
            can be set to any value and is not standardized across different
            payment services.
          examples:
            - E104
        raw_response_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Response Description
          description: >-
            This is the response description received from the payment service.
            This can be set to any value and is not standardized across
            different payment services.
          examples:
            - Internal error
        transaction:
          $ref: '#/components/schemas/Transaction'
          description: The transaction associated to this capture.
        capture_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Capture Id
          description: The ID of the capture resource created for this capture.
          examples:
            - 77a76f7e-d2de-4bbc-ada9-d6a0015e6bd5
        payment_service_capture_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Payment Service Capture Id
          description: The payment service's unique ID for the capture.
          examples:
            - capture-12345
      additionalProperties: false
      type: object
      required:
        - status
        - code
        - raw_response_code
        - raw_response_description
        - transaction
      title: TransactionCapture
    Error400:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `bad_request`
          default: bad_request
          examples:
            - bad_request
        status:
          type: integer
          title: Status
          description: Always `400`.
          default: 400
          examples:
            - 400
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Generic error
          examples:
            - Request failed validation
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error400
    Error401:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `unauthorized`
          default: unauthorized
          examples:
            - unauthorized
        status:
          type: integer
          title: Status
          description: Always `401`.
          default: 401
          examples:
            - 401
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: No valid API authentication found
          examples:
            - No valid API authentication found
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error401
    Error403:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `forbidden`
          default: forbidden
          examples:
            - forbidden
        status:
          type: integer
          title: Status
          description: Always `403`.
          default: 403
          examples:
            - 403
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Generic error
          examples:
            - Request failed validation
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error403
    Error404:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `not_found`
          default: not_found
          examples:
            - not_found
        status:
          type: integer
          title: Status
          description: Always `404`.
          default: 404
          examples:
            - 404
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: The resource could not be found
          examples:
            - The resource could not be found
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error404
    Error405:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `method_not_allowed`
          default: method_not_allowed
          examples:
            - method_not_allowed
        status:
          type: integer
          title: Status
          description: Always `405`.
          default: 405
          examples:
            - 405
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Method Not Allowed
          examples:
            - Method Not Allowed
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error405
    Error409:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `duplicate_record`
          default: duplicate_record
          examples:
            - duplicate_record
        status:
          type: integer
          title: Status
          description: Always `409`.
          default: 409
          examples:
            - 409
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Generic error
          examples:
            - Request failed validation
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
        resource_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Resource Id
          description: The ID of the conflicting resource.
          examples:
            - cdc70639-cb9c-4222-a73f-b8ce39f7821b
      additionalProperties: false
      type: object
      title: Error409
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    Error425:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `too_early`
          default: too_early
          examples:
            - too_early
        status:
          type: integer
          title: Status
          description: Always `425`.
          default: 425
          examples:
            - 425
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Generic error
          examples:
            - Request failed validation
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error425
    Error429:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `too_many_requests`
          default: too_many_requests
          examples:
            - too_many_requests
        status:
          type: integer
          title: Status
          description: Always `429`.
          default: 429
          examples:
            - 429
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Generic error
          examples:
            - Request failed validation
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error429
    Error500:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `server_error`
          default: server_error
          examples:
            - server_error
        status:
          type: integer
          title: Status
          description: Always `500`.
          default: 500
          examples:
            - 500
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Request could not be processed
          examples:
            - Request could not be processed
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error500
    Error502:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `bad_gateway`
          default: bad_gateway
          examples:
            - bad_gateway
        status:
          type: integer
          title: Status
          description: Always `502`.
          default: 502
          examples:
            - 502
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Request could not be processed
          examples:
            - Request could not be processed
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error502
    Error504:
      properties:
        type:
          type: string
          const: error
          title: Type
          description: Always `error`.
          default: error
          examples:
            - error
        code:
          type: string
          title: Code
          description: Always `gateway_timeout`
          default: gateway_timeout
          examples:
            - gateway_timeout
        status:
          type: integer
          title: Status
          default: 504
        message:
          type: string
          title: Message
          description: A human readable message that provides more context to the error.
          default: Request could not be processed
          examples:
            - Request could not be processed
        details:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
          title: Details
          description: A list of details that further ellaborate on the error.
          default: []
      additionalProperties: false
      type: object
      title: Error504
    Airline:
      properties:
        booking_code:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Booking Code
          description: >-
            The unique identifier of the reservation in the global distribution
            system.
          examples:
            - X36Q9C
        is_cardholder_traveling:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Cardholder Traveling
          description: Indicates whether the cardholder is traveling.
          examples:
            - true
        issued_address:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Issued Address
          description: The address of the place/agency that issued the ticket.
          examples:
            - 123 Broadway, New York
        issued_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Issued At
          description: >-
            The date that the ticket was last issued in the airline reservation
            system.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        issuing_carrier_code:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 2
            - type: 'null'
          title: Issuing Carrier Code
          description: >-
            For airline aggregators, three-character IATA code of the airline
            issuing the ticket.
          examples:
            - '649'
        issuing_carrier_name:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
          title: Issuing Carrier Name
          description: For airline aggregators, name of the airline issuing the ticket.
          examples:
            - Air Transat A.T. Inc
        issuing_iata_designator:
          anyOf:
            - type: string
              maxLength: 2
              minLength: 2
            - type: 'null'
          title: Issuing Iata Designator
          description: >-
            For airline aggregators, two-character IATA code of the airline
            issuing the ticket.
          examples:
            - TS
        issuing_icao_code:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 3
            - type: 'null'
          title: Issuing Icao Code
          description: >-
            For airline aggregators, three-character ICAO code of the airline
            issuing the ticket.
          examples:
            - TSC
        legs:
          anyOf:
            - items:
                $ref: '#/components/schemas/AirlineLeg'
              type: array
              maxItems: 20
            - type: 'null'
          title: Legs
          description: >-
            An array of separate trip segments. Each leg contains detailed
            itinerary information.
        passenger_name_record:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Passenger Name Record
          description: The Passenger Name Record (PNR) in the airline reservation system.
          examples:
            - JOHN L
        passengers:
          anyOf:
            - items:
                $ref: '#/components/schemas/AirlinePassenger'
              type: array
              maxItems: 20
            - type: 'null'
          title: Passengers
          description: An array of the travelling passengers.
        reservation_system:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Reservation System
          description: The name of the reservation system.
          examples:
            - Amadeus
        restricted_ticket:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Restricted Ticket
          description: Indicates whether the ticket is restricted (refundable).
          examples:
            - false
        ticket_delivery_method:
          anyOf:
            - type: string
              enum:
                - electronic
                - other
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          title: Ticket Delivery Method
          description: The delivery method of the ticket.
          default: electronic
          examples:
            - electronic
        ticket_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Ticket Number
          description: The airline's unique ticket number.
          examples:
            - 123-1234-151555
        travel_agency_code:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Travel Agency Code
          description: The IATA travel agency code.
          examples:
            - '12345'
        travel_agency_invoice_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Travel Agency Invoice Number
          description: >-
            The reference number of the invoice that was issued by the travel
            agency.
          examples:
            - EG15555155
        travel_agency_name:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Travel Agency Name
          description: The name of the travel agency.
          examples:
            - ACME Agency
        travel_agency_plan_name:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Travel Agency Plan Name
          description: The name of the travel agency plan.
          examples:
            - B733
      additionalProperties: false
      type: object
      title: Airline
      description: Information about an airline travel.
    TransactionPaymentMethod:
      properties:
        type:
          type: string
          const: payment-method
          title: Type
          description: Always `payment-method`.
          default: payment-method
          examples:
            - payment-method
        approval_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Approval Url
          description: >-
            The optional URL that the buyer needs to be redirected to to further
            authorize their payment.
          examples:
            - https://gr4vy.app/redirect/12345
        country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Country
          description: >-
            The 2-letter ISO code of the country this payment method can be used
            for. If this value is null the payment method may be used in
            multiple countries.
          examples:
            - US
        currency:
          anyOf:
            - type: string
              pattern: ^[A-Z]{3}$
              examples:
                - EUR
                - GBP
                - USD
            - type: 'null'
          title: Currency
          description: >-
            The ISO-4217 currency code that this payment method can be used for.
            If this value is null the payment method may be used for multiple
            currencies.
          examples:
            - USD
        details:
          anyOf:
            - $ref: '#/components/schemas/PaymentMethodDetailsCard'
            - type: 'null'
          description: Details for credit or debit card payment method.
        expiration_date:
          anyOf:
            - type: string
              maxLength: 5
              minLength: 5
              pattern: ^\d{2}/\d{2}$
            - type: 'null'
          title: Expiration Date
          description: The expiration date for the payment method.
          examples:
            - 12/30
        fingerprint:
          anyOf:
            - type: string
            - type: 'null'
          title: Fingerprint
          description: >-
            The unique hash derived from the payment method identifier (e.g.
            card number).
          examples:
            - 20eb353620155d2b5fc864cc46a73ea77cb92c725238650839da1813fa987a17
        label:
          anyOf:
            - type: string
              maxLength: 320
              minLength: 0
            - type: 'null'
          title: Label
          description: >-
            A label for the card or the account. For a paypal payment method
            this is the user's email address. For a card it is the last 4 digits
            of the card.
          examples:
            - '1234'
        last_replaced_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Last Replaced At
          description: >-
            The date and time when this card was last replaced by the account
            updater.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        method:
          description: The type of this payment method.
          examples:
            - card
          type: string
          enum:
            - abitab
            - affirm
            - afterpay
            - alipay
            - alipayhk
            - applepay
            - arcuspaynetwork
            - bacs
            - bancontact
            - bank
            - banked
            - bcp
            - becs
            - bitpay
            - blik
            - ach
            - boleto
            - boost
            - breb
            - capitec
            - card
            - cashapp
            - chaseorbital
            - clearpay
            - click-to-pay
            - dana
            - dcb
            - dlocal
            - ebanx
            - eckoh
            - efecty
            - eps
            - everydaypay
            - gcash
            - gem
            - gemds
            - gift-card
            - giropay
            - givingblock
            - gocardless
            - googlepay
            - googlepay_pan_only
            - gopay
            - grabpay
            - ideal
            - kakaopay
            - kcp
            - khipu
            - klarna
            - latitude
            - latitudeds
            - laybuy
            - linepay
            - linkaja
            - maybankqrpay
            - mercadopago
            - multibanco
            - multipago
            - nequi
            - netbanking
            - network-token
            - nupay
            - oney_10x
            - oney_12x
            - oney_3x
            - oney_4x
            - oney_6x
            - onlinebankingcz
            - ovo
            - oxxo
            - p24
            - pagoefectivo
            - payid
            - paymaya
            - paypal
            - paypalpaylater
            - paypay
            - payto
            - payvalida
            - paze
            - picpay
            - pix
            - plaid
            - pse
            - rabbitlinepay
            - razorpay
            - rapipago
            - redpagos
            - scalapay
            - sepa
            - servipag
            - shopeepay
            - singteldash
            - smartpay
            - sofort
            - spei
            - stitch
            - swish
            - stripedd
            - stripetoken
            - tapi
            - tapifintechs
            - thaiqr
            - touchngo
            - truemoney
            - trustly
            - trustlyeurope
            - upi
            - venmo
            - vipps
            - waave
            - webpay
            - wechat
            - wero
            - yape
            - zippay
          title: Method
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        mode:
          anyOf:
            - type: string
              enum:
                - card
                - redirect
                - applepay
                - googlepay
                - checkout-session
                - click-to-pay
                - gift-card
                - bank
                - paze
              title: Mode
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The mode to use with this payment method.
          examples:
            - card
        scheme:
          anyOf:
            - type: string
              enum:
                - accel
                - amex
                - bancontact
                - carte-bancaire
                - cirrus
                - culiance
                - dankort
                - diners-club
                - discover
                - eftpos-australia
                - elo
                - hipercard
                - jcb
                - maestro
                - mastercard
                - mir
                - nyce
                - other
                - pulse
                - qcard
                - rupay
                - star
                - uatp
                - unionpay
                - visa
              title: CardScheme
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The scheme of the card. Only applies to card payments.
          examples:
            - visa
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
          description: The ID of the payment method.
          examples:
            - 852b951c-d7ea-4c98-b09e-4a1c9e97c077
        approval_target:
          anyOf:
            - type: string
              enum:
                - new_window
                - any
              title: ApprovalTarget
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: >-
            The browser target that an approval URL must be opened in. If any or
            null, then there is no specific requirement.
          examples:
            - any
        external_identifier:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: External Identifier
          description: >-
            An external identifier that can be used to match the payment method
            against your own records.
          examples:
            - card-12345
        payment_account_reference:
          anyOf:
            - type: string
            - type: 'null'
          title: Payment Account Reference
          description: >-
            The payment account reference (PAR) returned by the card scheme.
            This is a unique reference to the underlying account that has been
            used to fund this payment method.
          examples:
            - V0010014629724763377327521982
      additionalProperties: false
      type: object
      required:
        - method
      title: TransactionPaymentMethod
    TransactionPaymentService:
      properties:
        type:
          type: string
          const: payment-service
          title: Type
          description: Always `payment-service`.
          default: payment-service
          examples:
            - payment-service
        id:
          type: string
          format: uuid
          title: Id
          description: The ID for the payment-service.
          examples:
            - 824ff064-7f4b-430b-9801-59aff90d013e
        payment_service_definition_id:
          type: string
          maxLength: 50
          minLength: 1
          title: Payment Service Definition Id
          description: The definition ID of the service used to process this payment.
          examples:
            - stripe-card
        method:
          description: The payment method that this service handles.
          examples:
            - card
          type: string
          enum:
            - abitab
            - affirm
            - afterpay
            - alipay
            - alipayhk
            - applepay
            - arcuspaynetwork
            - bacs
            - bancontact
            - bank
            - banked
            - bcp
            - becs
            - bitpay
            - blik
            - ach
            - boleto
            - boost
            - breb
            - capitec
            - card
            - cashapp
            - chaseorbital
            - clearpay
            - click-to-pay
            - dana
            - dcb
            - dlocal
            - ebanx
            - eckoh
            - efecty
            - eps
            - everydaypay
            - gcash
            - gem
            - gemds
            - gift-card
            - giropay
            - givingblock
            - gocardless
            - googlepay
            - googlepay_pan_only
            - gopay
            - grabpay
            - ideal
            - kakaopay
            - kcp
            - khipu
            - klarna
            - latitude
            - latitudeds
            - laybuy
            - linepay
            - linkaja
            - maybankqrpay
            - mercadopago
            - multibanco
            - multipago
            - nequi
            - netbanking
            - network-token
            - nupay
            - oney_10x
            - oney_12x
            - oney_3x
            - oney_4x
            - oney_6x
            - onlinebankingcz
            - ovo
            - oxxo
            - p24
            - pagoefectivo
            - payid
            - paymaya
            - paypal
            - paypalpaylater
            - paypay
            - payto
            - payvalida
            - paze
            - picpay
            - pix
            - plaid
            - pse
            - rabbitlinepay
            - razorpay
            - rapipago
            - redpagos
            - scalapay
            - sepa
            - servipag
            - shopeepay
            - singteldash
            - smartpay
            - sofort
            - spei
            - stitch
            - swish
            - stripedd
            - stripetoken
            - tapi
            - tapifintechs
            - thaiqr
            - touchngo
            - truemoney
            - trustly
            - trustlyeurope
            - upi
            - venmo
            - vipps
            - waave
            - webpay
            - wechat
            - wero
            - yape
            - zippay
          title: Method
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        display_name:
          type: string
          title: Display Name
          description: The display name for the payment service.
          examples:
            - Stripe USA
      additionalProperties: false
      type: object
      required:
        - id
        - payment_service_definition_id
        - method
        - display_name
      title: TransactionPaymentService
    TransactionBuyer:
      properties:
        type:
          type: string
          const: buyer
          title: Type
          description: Always `buyer`.
          default: buyer
          examples:
            - buyer
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
          description: The ID for the buyer.
          examples:
            - fe26475d-ec3e-4884-9553-f7356683f7f9
        display_name:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Display Name
          description: The display name for the buyer.
          examples:
            - John Doe
        external_identifier:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: External Identifier
          description: The merchant identifier for this buyer.
          examples:
            - buyer-12345
        billing_details:
          anyOf:
            - $ref: '#/components/schemas/BillingDetails'
            - type: 'null'
          description: The billing name, address, email, and other fields for this buyer.
        account_number:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Account Number
          description: The buyer account number.
      additionalProperties: false
      type: object
      title: TransactionBuyer
    ShippingDetails:
      properties:
        first_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: First Name
          description: The first name(s) or given name for the buyer.
          examples:
            - John
        last_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Last Name
          description: The last name, or family name, of the buyer.
          examples:
            - Doe
        email_address:
          anyOf:
            - type: string
              maxLength: 320
              minLength: 1
            - type: 'null'
          title: Email Address
          description: The email address for the buyer.
          examples:
            - john@example.com
        phone_number:
          anyOf:
            - type: string
              pattern: ^\+[1-9]\d{1,14}$
              examples:
                - '+14155552671'
                - '+442071838750'
            - type: 'null'
          title: Phone Number
          description: >-
            The phone number for the buyer which should be formatted according
            to the E164 number standard.
          examples:
            - '+1234567890'
        address:
          anyOf:
            - $ref: '#/components/schemas/Address'
            - type: 'null'
          description: The billing address for the buyer.
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
          description: The ID for the shipping details.
          examples:
            - bf8c36ad-02d9-4904-b0f9-a230b149e341
        buyer_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Buyer Id
          description: The ID for the buyer.
          examples:
            - fe26475d-ec3e-4884-9553-f7356683f7f9
        type:
          type: string
          const: shipping-details
          title: Type
          description: Always `shipping-details`.
          default: shipping-details
          examples:
            - shipping-details
      additionalProperties: false
      type: object
      title: ShippingDetails
    GiftCardRedemption:
      properties:
        type:
          type: string
          const: gift-card-redemption
          title: Type
          description: Always `gift-card-redemption`.
          default: gift-card-redemption
          examples:
            - gift-card-redemption
        id:
          type: string
          format: uuid
          title: Id
          description: The ID for the gift card redemption.
          examples:
            - 31e65fb1-9c67-432e-9c06-83300b9d4059
        status:
          description: The status of the gift card redemption for the `payment_method`.
          examples:
            - succeeded
          type: string
          enum:
            - created
            - succeeded
            - failed
            - skipped
          title: GiftCardRedemptionStatus
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        amount:
          type: integer
          title: Amount
          description: The amount redeemed for this gift card.
          examples:
            - 100
        refunded_amount:
          type: integer
          title: Refunded Amount
          description: >-
            The amount refunded for this gift card. This can not be larger than
            `amount`.
          examples:
            - 50
        gift_card_service_redemption_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Gift Card Service Redemption Id
          description: The gift card service's unique ID for the redemption.
          examples:
            - xYqd43gySMtori
        error_code:
          anyOf:
            - type: string
              enum:
                - invalid_gift_card
                - expired_card
                - inactive_card
                - invalid_service_credentials
                - invalid_amount
                - incorrect_currency
                - insufficient_funds
                - invalid_service_configuration
                - operation_canceled
                - service_error
                - service_network_error
                - unknown_error
                - max_gift_cards_reached
              title: GiftCardErrorCode
              description: >-
                Gift card error codes.


                Gr4vy normalised gift card error codes. Keep the naming and
                style in line with

                those in the connectors framework.


                If new codes are added, append them at the end or amend public
                simulator

                documentation:
                https://docs.gr4vy.com/guides/features/gift-cards/simulator
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: >-
            If this gift card redemption resulted in an error, this will contain
            the internal code for the error.
          examples:
            - expired_card
        raw_error_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Error Code
          description: >-
            If this gift card redemption resulted in an error, this will contain
            the raw error code received from the gift card provider.
          examples:
            - '10001'
        raw_error_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Raw Error Message
          description: >-
            If this gift card redemption resulted in an error, this will contain
            the raw error message received from the gift card provider.
          examples:
            - Card expired
        gift_card:
          $ref: '#/components/schemas/TransactionGiftCard'
          description: The gift card used for this redemption
      additionalProperties: false
      type: object
      required:
        - id
        - status
        - amount
        - refunded_amount
        - gift_card
      title: GiftCardRedemption
    GiftCardService:
      properties:
        type:
          type: string
          const: gift-card-service
          title: Type
          description: Always `gift-card-service`.
          default: gift-card-service
          examples:
            - gift-card-service
        id:
          type: string
          format: uuid
          title: Id
          description: The ID for the gift card service.
          examples:
            - 35b60feec-a7c7-4844-b503-f39b09192d81
        gift_card_service_definition_id:
          description: The ID of the definition for this service.
          examples:
            - qwikcilver-gift-card
          type: string
          enum:
            - mock-gift-card
            - qwikcilver-gift-card
          title: GiftCardServiceProvider
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        display_name:
          type: string
          maxLength: 200
          minLength: 1
          title: Display Name
          description: The display name for the gift card service.
          examples:
            - Qwikcilver USA
      additionalProperties: false
      type: object
      required:
        - id
        - gift_card_service_definition_id
        - display_name
      title: GiftCardService
    CartItem:
      properties:
        name:
          type: string
          maxLength: 255
          minLength: 1
          title: Name
          description: >-
            The name of the cart item. The value you set for this property may
            be truncated if the maximum length accepted by a payment service
            provider is less than 255 characters.
          examples:
            - GoPro HD
        quantity:
          type: integer
          maximum: 99999999
          exclusiveMinimum: 0
          title: Quantity
          description: >-
            The quantity of this item in the cart. This value cannot be negative
            or zero.
          examples:
            - 2
        unit_amount:
          type: integer
          maximum: 99999999
          minimum: 0
          title: Unit Amount
          description: >-
            The amount for an individual item represented as a monetary amount
            in the smallest currency unit for the given currency, for example
            `1299` USD cents represents `$12.99`. The amount sent through to the
            payment processor as unitary amount will be calculated to include
            the discount and tax values sent as part of this cart item.
          examples:
            - 1299
        discount_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Discount Amount
          description: >-
            The amount discounted for this item represented as a monetary amount
            in the smallest currency unit for the given currency, for example
            `1299` USD cents represents `$12.99`.
          default: 0
          examples:
            - 0
        tax_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Tax Amount
          description: >-
            The tax amount for this item represented as a monetary amount in the
            smallest currency unit for the given currency, for example `1299`
            USD cents represents `$12.99`.
          default: 0
          examples:
            - 0
        external_identifier:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: External Identifier
          description: >-
            An external identifier for the cart item. This can be set to any
            value and is not sent to the payment service.
          examples:
            - goprohd
        sku:
          anyOf:
            - type: string
              maxLength: 200
              minLength: 1
            - type: 'null'
          title: Sku
          description: The SKU or product code for the item.
          examples:
            - GPHD1078
        upc:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Upc
          description: The UPC for the item.
          examples:
            - '012345678905'
        product_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Product Url
          description: The product URL for the item.
          examples:
            - https://example.com/catalog/go-pro-hd
        image_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Image Url
          description: The URL for the image of the item.
          examples:
            - https://example.com/images/go-pro-hd.jpg
        categories:
          anyOf:
            - items:
                type: string
                maxLength: 50
                minLength: 1
              type: array
            - type: 'null'
          title: Categories
          description: A list of strings containing product categories for the item.
          examples:
            - - camera
              - travel
              - gear
        product_type:
          anyOf:
            - type: string
              enum:
                - physical
                - discount
                - shipping_fee
                - sales_tax
                - digital
                - gift_card
                - store_credit
                - surcharge
              title: ProductType
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The product type of the cart item.
          examples:
            - physical
        seller_country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Seller Country
          description: The seller country of the cart item.
          examples:
            - US
            - GB
        tax_exempt:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Tax Exempt
          description: Whether the item is exempt of tax.
          examples:
            - false
        unit_of_measure:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Unit Of Measure
          description: The unit of measure or the unit of measure code.
          examples:
            - feet
            - kg
        commodity_code:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Commodity Code
          description: Item commodity code. Generally a UNSPSC code.
          examples:
            - '43211503'
            - '84111502'
        description:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Description
          description: Brief item description.
          examples:
            - A brief description of an interesting item.
        duty_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Duty Amount
          description: >-
            Item import or export duties represented as a monetary amount in the
            smallest currency unit for the given currency, for example `1299`
            cents to create an authorization for `$12.99`
          examples:
            - 1299
        shipping_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Shipping Amount
          description: >-
            Freight/shipping amount represented as a monetary amount in the
            smallest currency unit for the given currency, for example `1299`
            cents to create an authorization for `$12.99`
          examples:
            - 1299
      additionalProperties: false
      type: object
      required:
        - name
        - quantity
        - unit_amount
      title: CartItem
    StatementDescriptor:
      properties:
        name:
          anyOf:
            - type: string
              maxLength: 22
              minLength: 5
            - type: 'null'
          title: Name
          description: Reflects your doing business as (DBA) name.
          examples:
            - ACME
        description:
          anyOf:
            - type: string
              maxLength: 22
              minLength: 5
            - type: 'null'
          title: Description
          description: A short description about the purchase.
          examples:
            - ACME San Jose Electronics
        city:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: City
          description: The merchant's city to be displayed in a statement descriptor.
          examples:
            - San Jose
        country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Country
          description: >-
            The 2-letter ISO country code of the merchant to be displayed in a
            statement descriptor.
          examples:
            - US
        phone_number:
          anyOf:
            - type: string
              pattern: ^\+[1-9]\d{1,14}$
              examples:
                - '+14155552671'
                - '+442071838750'
            - type: 'null'
          title: Phone Number
          description: >-
            The value in the phone number field of a customer's statement which
            should be formatted according to the E164 number standard.
          examples:
            - '+1234567890'
        url:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Url
          description: The merchant's URL to be displayed in a statement descriptor.
          examples:
            - www.example.com
        postal_code:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Postal Code
          description: The merchant's postal code or zip code.
          examples:
            - '94560'
      additionalProperties: false
      type: object
      title: StatementDescriptor
      description: Information to show the user on their payments statement
    TransactionThreeDSecureSummary:
      properties:
        version:
          anyOf:
            - type: string
              pattern: ^[12](\.\d+){0,2}$
            - type: 'null'
          title: Version
          description: The version of 3DS used for this transaction.
          examples:
            - 2.2.0
        status:
          anyOf:
            - type: string
              enum:
                - setup_error
                - error
                - declined
                - cancelled
                - complete
              title: ThreeDSecureStatus
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The status of the 3DS challenge for this transaction.
          examples:
            - complete
        method:
          anyOf:
            - type: string
              enum:
                - challenge
                - frictionless
              title: ThreeDSecureMethod
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The method used for 3DS authentication for this transaction.
          examples:
            - challenge
        response_data:
          anyOf:
            - $ref: '#/components/schemas/ThreeDSecureDataV1'
            - $ref: '#/components/schemas/ThreeDSecureV2'
            - type: 'null'
          title: Response Data
          description: >-
            The 3DS data sent to the payment service for this transaction. This
            will only be populated if external 3DS data was passed in directly
            as part of the transaction API call, or if our 3DS server returned a
            status code of `Y` or `A`. In case of a failure to authenticate
            (status `N`, `R`, or `U`) this field will not be populated. To see
            full details about the 3DS calls please use our transaction events
            API.
        error_data:
          anyOf:
            - $ref: '#/components/schemas/ThreeDSecureError'
            - type: 'null'
          description: >-
            The error data received from our 3DS server. This will not be
            populated if the customer failed the authentication with a status
            code of `N`, `R`, or `U`.  To see full details about the 3DS calls
            in those situations please use our transaction events API.
        amount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Amount
          description: The amount used for 3DS authentication.
      additionalProperties: false
      type: object
      title: TransactionThreeDSecureSummary
    Recipient:
      properties:
        first_name:
          type: string
          title: First Name
          description: The first name of the recipient.
          examples:
            - ''
        last_name:
          type: string
          title: Last Name
          description: The last name of the recipient.
          examples:
            - ''
        address:
          anyOf:
            - $ref: '#/components/schemas/Address'
            - type: 'null'
          description: The recipient of the fund's address.
        account_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Number
          description: >-
            The account number of the recipient. Depending on the type of funds
            transfer, this could be a wallet ID, bank accoutn number, or email
            address.
          examples:
            - act12345
        date_of_birth:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Date Of Birth
          description: The date of birth of the recipient.
          examples:
            - '1995-12-23'
      additionalProperties: false
      type: object
      required:
        - first_name
        - last_name
      title: Recipient
      description: Recipient of an account funding transaction
    ErrorDetail:
      properties:
        location:
          description: >-
            The part of the request where the property can be found that caused
            the error.
          examples:
            - body
          type: string
          enum:
            - query
            - body
            - path
            - header
            - unknown
          title: ErrorLocation
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
        pointer:
          anyOf:
            - type: string
              format: json-pointer
            - type: string
          title: Pointer
          description: A JSON pointer for the particular property that caused the error.
          examples:
            - /currency
        message:
          type: string
          title: Message
          description: A human-readdable explanation of the error.
          examples:
            - 'Unknown ISO 4217 currency code: USX'
        type:
          type: string
          title: Type
          description: The type of error that was raised for this property.
          examples:
            - value_error
      additionalProperties: false
      type: object
      required:
        - location
        - pointer
        - message
        - type
      title: ErrorDetail
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    AirlineLeg:
      properties:
        arrival_airport:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 3
            - type: 'null'
          title: Arrival Airport
          description: >-
            Arrival airport code of leg. 3-letter ISO code according to IATA
            official directory.
          examples:
            - LAX
        arrival_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Arrival At
          description: The date and time of travel in local time at the arrival airport.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        arrival_city:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Arrival City
          description: Arrival city name.
          examples:
            - Los Angeles
        arrival_country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Arrival Country
          description: Arrival country code in ISO 3166 format.
          examples:
            - US
        carrier_code:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 2
            - type: 'null'
          title: Carrier Code
          description: 3 character airline code as set by IATA.
          examples:
            - '649'
        carrier_name:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
          title: Carrier Name
          description: Name of the airline.
          examples:
            - Air Transat A.T. Inc
        iata_designator:
          anyOf:
            - type: string
              maxLength: 2
              minLength: 2
            - type: 'null'
          title: Iata Designator
          description: Two-character IATA code of the airline.
          examples:
            - TS
        icao_code:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 3
            - type: 'null'
          title: Icao Code
          description: Three-character ICAO code of the airline.
          examples:
            - TSC
        coupon_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Coupon Number
          description: Coupon number associated with the leg.
          examples:
            - '15885566'
        departure_airport:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 3
            - type: 'null'
          title: Departure Airport
          description: >-
            Departure airport code of leg. 3-letter ISO code according to IATA
            official directory.
          examples:
            - LHR
        departure_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Departure At
          description: The date and time of travel in local time at the departure airport.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        departure_city:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: Departure City
          description: Departure city name.
          examples:
            - London
        departure_country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Departure Country
          description: >-
            Departure airport code of leg. 3-letter ISO code according to IATA
            official directory.
          examples:
            - GB
        departure_tax_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Departure Tax Amount
          description: >-
            Departure tax amount charged by a country when a person is leaving
            the country.
          examples:
            - 1200
        fare_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Fare Amount
          description: >-
            Amount of the ticket, for current leg of the trip, excluding taxes
            and fees.
          examples:
            - 129900
        fare_basis_code:
          anyOf:
            - type: string
              maxLength: 8
              minLength: 1
            - type: 'null'
          title: Fare Basis Code
          description: The alphanumeric code for the booking class of a ticket.
          examples:
            - FY
        fee_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Fee Amount
          description: Fee amount for current leg of the trip.
          examples:
            - 1200
        flight_class:
          anyOf:
            - type: string
              maxLength: 5
              minLength: 1
            - type: 'null'
          title: Flight Class
          description: Indicates service class (first class, business class, etc.).
          examples:
            - E
        flight_number:
          anyOf:
            - type: string
              maxLength: 6
              minLength: 3
            - type: 'null'
          title: Flight Number
          description: Unique identifier of the flight number.
          examples:
            - '101'
        route_type:
          anyOf:
            - type: string
              enum:
                - round_trip
                - one_way
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          title: Route Type
          description: The route type of the flight.
          examples:
            - round_trip
        seat_class:
          anyOf:
            - type: string
              maxLength: 5
              minLength: 1
            - type: 'null'
          title: Seat Class
          description: Indicates seat class (first class, business class, etc.).
          examples:
            - F
        stop_over:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Stop Over
          description: Indicates whether a stopover is allowed on this ticket.
          examples:
            - false
        tax_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Tax Amount
          description: Amount of the taxes for current leg of the trip.
          examples:
            - 1200
      additionalProperties: false
      type: object
      title: AirlineLeg
    AirlinePassenger:
      properties:
        age_group:
          anyOf:
            - type: string
              enum:
                - adult
                - infant
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          title: Age Group
          description: The age group for the passenger.
          examples:
            - adult
        date_of_birth:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Date Of Birth
          description: The passenger's date of birth in YYYY-MM-YY format.
          examples:
            - '2013-07-16'
        email_address:
          anyOf:
            - type: string
              maxLength: 320
              minLength: 1
            - type: 'null'
          title: Email Address
          description: The email address of the passenger.
          examples:
            - john@example.com
        first_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: First Name
          description: The first name(s) or given name of the passenger.
          examples:
            - John
        frequent_flyer_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 5
            - type: 'null'
          title: Frequent Flyer Number
          description: The passenger's frequent flyer number.
          examples:
            - '15885566'
        last_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Last Name
          description: The last name, or family name, of the passenger.
          examples:
            - Luhn
        passport_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Passport Number
          description: The passenger's unique passport number.
          examples:
            - '11117700225'
        phone_number:
          anyOf:
            - type: string
              pattern: ^\+[1-9]\d{1,14}$
              examples:
                - '+14155552671'
                - '+442071838750'
            - type: 'null'
          title: Phone Number
          description: >-
            The phone number of the passenger. This number is formatted
            according to the E164 number standard.
          examples:
            - '+1234567890'
        ticket_number:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Ticket Number
          description: The ticket number for a flight.
          examples:
            - BA1236699999
        title:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Title
          description: Title of the passenger.
          examples:
            - Mr.
        country_code:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Country Code
          description: The country of residence of the passenger
          examples:
            - US
      additionalProperties: false
      type: object
      title: AirlinePassenger
    PaymentMethodDetailsCard:
      properties:
        bin:
          anyOf:
            - type: string
              maxLength: 8
              minLength: 6
              pattern: ^\d+$
            - type: 'null'
          title: Bin
        card_type:
          anyOf:
            - type: string
              enum:
                - credit
                - debit
                - prepaid
              title: CardType
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
        card_issuer_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Card Issuer Name
      additionalProperties: false
      type: object
      title: PaymentMethodDetailsCard
    BillingDetails:
      properties:
        first_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: First Name
          description: The first name(s) or given name for the buyer.
          examples:
            - John
        last_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Last Name
          description: The last name, or family name, of the buyer.
          examples:
            - Doe
        email_address:
          anyOf:
            - type: string
              maxLength: 320
              minLength: 1
            - type: 'null'
          title: Email Address
          description: The email address for the buyer.
          examples:
            - john@example.com
        phone_number:
          anyOf:
            - type: string
              pattern: ^\+[1-9]\d{1,14}$
              examples:
                - '+14155552671'
                - '+442071838750'
            - type: 'null'
          title: Phone Number
          description: >-
            The phone number for the buyer which should be formatted according
            to the E164 number standard.
          examples:
            - '+1234567890'
        address:
          anyOf:
            - $ref: '#/components/schemas/Address'
            - type: 'null'
          description: The billing address for the buyer.
        tax_id:
          anyOf:
            - $ref: '#/components/schemas/TaxId'
            - type: 'null'
          description: The tax ID information associated with the billing details.
      additionalProperties: false
      type: object
      title: BillingDetails
    Address:
      properties:
        city:
          anyOf:
            - type: string
              maxLength: 100
              minLength: 1
            - type: 'null'
          title: City
          description: The city for the address.
          examples:
            - San Jose
        country:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}$
              examples:
                - DE
                - GB
                - US
            - type: 'null'
          title: Country
          description: The country for the address in ISO 3166 format.
          examples:
            - US
        postal_code:
          anyOf:
            - type: string
              maxLength: 50
              minLength: 1
            - type: 'null'
          title: Postal Code
          description: The postal code or zip code for the address.
          examples:
            - '94560'
        state:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: State
          description: The state, county, or province for the address.
          examples:
            - California
        state_code:
          anyOf:
            - type: string
              pattern: ^[A-Z]{2}-[A-Z0-9]{1,3}$
              examples:
                - GB-LND
                - US-CA
            - type: 'null'
          title: State Code
          description: >-
            The code of state, county, or province for the address in ISO 3166-2
            format.
          examples:
            - US-CA
        house_number_or_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: House Number Or Name
          description: >-
            The house number or name for the address. Not all payment services
            use this field but some do.
          examples:
            - '10'
        line1:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Line1
          description: The first line of the address.
          examples:
            - Stafford Appartments
        line2:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Line2
          description: The second line of the address.
          examples:
            - 29th Street
        organization:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Organization
          description: >-
            The optional name of the company or organisation to add to the
            address.
          examples:
            - Gr4vy
      additionalProperties: false
      type: object
      title: Address
    TransactionGiftCard:
      properties:
        type:
          type: string
          const: gift-card
          title: Type
          description: Always `gift-card`.
          default: gift-card
          examples:
            - gift-card
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
          description: The ID for the gift card.
          examples:
            - 356d56e5-fe16-42ae-97ee-8d55d846ae2e
        bin:
          type: string
          title: Bin
          description: The first 6 digits of the full gift card number.
          examples:
            - '412345'
        sub_bin:
          type: string
          title: Sub Bin
          description: The 3 digits after the `bin` of the full gift card number.
          examples:
            - '554'
        last4:
          type: string
          title: Last4
          description: The last 4 digits for the gift card.
          examples:
            - '1234'
      additionalProperties: false
      type: object
      required:
        - bin
        - sub_bin
        - last4
      title: TransactionGiftCard
    ThreeDSecureDataV1:
      properties:
        cavv:
          type: string
          title: Cavv
          description: The cardholder authentication value or AAV.
          examples:
            - 3q2+78r+ur7erb7vyv66vv8=
        eci:
          type: string
          maxLength: 2
          minLength: 1
          pattern: ^0?\d$
          title: Eci
          description: The ecommerce indicator for the 3DS transaction.
          examples:
            - '05'
        version:
          type: string
          pattern: ^[12](\.\d+){0,2}$
          title: Version
          description: The version of 3-D Secure that was used.
          examples:
            - 2.1.0
        directory_response:
          type: string
          maxLength: 1
          title: Directory Response
          description: >-
            For 3-D Secure version 1, the enrolment response. For 3-D Secure
            version 2 and above, the transaction status from the `ARes`.
          examples:
            - C
        scheme:
          anyOf:
            - type: string
              enum:
                - accel
                - amex
                - bancontact
                - carte-bancaire
                - cirrus
                - culiance
                - dankort
                - diners-club
                - discover
                - eftpos-australia
                - elo
                - hipercard
                - jcb
                - maestro
                - mastercard
                - mir
                - nyce
                - other
                - pulse
                - qcard
                - rupay
                - star
                - uatp
                - unionpay
                - visa
              title: CardScheme
              x-speakeasy-unknown-values: allow
              overlay: 1.0.0
            - type: 'null'
          description: The scheme/brand of the card that is used for 3-D Secure.
          examples:
            - visa
        authentication_response:
          type: string
          maxLength: 1
          title: Authentication Response
          description: ' The response for the 3DS authentication call.'
          examples:
            - 'Y'
        cavv_algorithm:
          type: string
          maxLength: 1
          title: Cavv Algorithm
          description: The CAVV algorithm used.
          examples:
            - A
        xid:
          type: string
          title: Xid
          description: The transaction identifier.
          examples:
            - '12345'
      additionalProperties: false
      type: object
      required:
        - cavv
        - eci
        - version
        - directory_response
        - authentication_response
        - cavv_algorithm
        - xid
      title: ThreeDSecureDataV1
    ThreeDSecureV2:
      properties:
        version:
          type: string
          pattern: ^[12](\.\d+){0,2}$
          title: Version
        authentication_response:
          anyOf:
            - type: string
            - type: 'null'
          title: Authentication Response
        directory_response:
          anyOf:
            - type: string
            - type: 'null'
          title: Directory Response
        directory_transaction_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Directory Transaction Id
        transaction_reason:
          anyOf:
            - type: string
            - type: 'null'
          title: Transaction Reason
        cavv:
          anyOf:
            - type: string
            - type: 'null'
          title: Cavv
        eci:
          anyOf:
            - type: string
              maxLength: 2
              minLength: 1
              pattern: ^0?\d$
            - type: 'null'
          title: Eci
        cardholder_info:
          anyOf:
            - type: string
            - type: 'null'
          title: Cardholder Info
      additionalProperties: false
      type: object
      required:
        - version
      title: ThreeDSecureV2
    ThreeDSecureError:
      properties:
        code:
          anyOf:
            - type: string
              maxLength: 3
              minLength: 3
            - type: 'null'
          title: Code
          description: The error code.
          examples:
            - '305'
        description:
          anyOf:
            - type: string
              maxLength: 2048
            - type: 'null'
          title: Description
          description: The error description.
          examples:
            - Invalid ThreeDSCompInd
        detail:
          anyOf:
            - type: string
              maxLength: 2048
            - type: 'null'
          title: Detail
          description: Detail about the 3DS error.
          examples:
            - The threeDSCompInd must be 'Y' when successful
        component:
          anyOf:
            - type: string
              maxLength: 1
              minLength: 1
            - type: 'null'
          title: Component
          description: Code indicating the 3-D Secure component that identified the error.
          examples:
            - C
      additionalProperties: false
      type: object
      title: ThreeDSecureError
    TaxId:
      properties:
        value:
          type: string
          maxLength: 50
          minLength: 1
          title: Value
          description: The tax ID for the buyer.
          examples:
            - '12345678931'
        kind:
          description: The kind of tax ID
          examples:
            - us.ein
          type: string
          enum:
            - ae.trn
            - au.abn
            - ar.dni
            - ar.cuil
            - ar.cuit
            - br.cnpj
            - br.cpf
            - ca.bn
            - ca.gst_hst
            - ca.pst_bc
            - ca.pst_mb
            - ca.pst_sk
            - ca.qst
            - ch.vat
            - cl.tin
            - co.itin
            - co.nit
            - co.cc
            - co.ce
            - co.de
            - co.rc
            - co.ti
            - co.passport
            - es.cif
            - eu.vat
            - gb.vat
            - hk.br
            - id.nik
            - id.npwp
            - in.gst
            - in.pan
            - jp.cn
            - jp.rn
            - kr.brn
            - li.uid
            - mx.curp
            - mx.rfc
            - my.frp
            - my.itn
            - my.nric
            - my.sst
            - no.vat
            - nz.gst
            - pe.ruc
            - ph.tin
            - ru.inn
            - ru.kpp
            - sa.vat
            - sg.gst
            - sg.uen
            - th.id
            - th.vat
            - tw.vat
            - us.ein
            - za.vat
            - bo.ci
            - uy.rut
            - uy.ci
          title: TaxIdKind
          x-speakeasy-unknown-values: allow
          overlay: 1.0.0
      additionalProperties: false
      type: object
      required:
        - value
        - kind
      title: TaxId
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````