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

# List transactions

> Returns a paginated list of transactions for the merchant account, sorted by most recently updated. You can filter, sort, and search transactions using query parameters.

This endpoint requires the `transactions.read` scope.


## OpenAPI

````yaml /openapi.speakeasy.json GET /transactions
openapi: 3.1.0
info:
  title: mattilda Pay
  description: The mattilda Pay API.
  version: 1.0.0
servers:
  - url: https://api.sandbox.mattildapayments.com
    x-speakeasy-server-id: sandbox
  - url: https://api.mattildapayments.com
    x-speakeasy-server-id: production
security:
  - bearerAuth: []
tags:
  - 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 - Payment methods
    description: Query payment methods for buyers.
  - name: Buyers - Shipping details
    description: Manage shipping details for buyers.
  - 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: Merchant accounts
    description: Manage merchant accounts in an instance.
  - name: Payment links
    description: Manage payment links.
  - name: Payment methods
    description: Manage stored payment methods.
  - 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.
paths:
  /transactions:
    get:
      tags:
        - Transactions
      summary: List transactions
      description: >-
        Returns a paginated list of transactions for the merchant account,
        sorted by most recently updated. You can filter, sort, and search
        transactions using query parameters.
      operationId: list_transactions
      parameters:
        - name: cursor
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: A pointer to the page of results to return.
            examples:
              - ZXhhbXBsZTE
            title: Cursor
          description: A pointer to the page of results to return.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            description: The maximum number of items that are at returned.
            examples:
              - 20
            default: 20
            title: Limit
          description: The maximum number of items that are at returned.
        - name: created_at_lte
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            description: >-
              Filters the results to only transactions created before this ISO
              date-time string. The time zone must be included. Ensure that the
              date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
              must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
            examples:
              - '2022-01-01T12:00:00+08:00'
            title: Created At Lte
          description: >-
            Filters the results to only transactions created before this ISO
            date-time string. The time zone must be included. Ensure that the
            date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
            must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
        - name: created_at_gte
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            description: >-
              Filters the results to only transactions created after this ISO
              date-time string. The time zone must be included. Ensure that the
              date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
              must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
            examples:
              - '2022-01-01T12:00:00+08:00'
            title: Created At Gte
          description: >-
            Filters the results to only transactions created after this ISO
            date-time string. The time zone must be included. Ensure that the
            date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
            must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
        - name: updated_at_lte
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            description: >-
              Filters the results to only transactions updated before this ISO
              date-time string. The time zone must be included. Ensure that the
              date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
              must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
            examples:
              - '2022-01-01T12:00:00+08:00'
            title: Updated At Lte
          description: >-
            Filters the results to only transactions updated before this ISO
            date-time string. The time zone must be included. Ensure that the
            date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
            must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
        - name: updated_at_gte
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            description: >-
              Filters the results to only transactions updated after this ISO
              date-time string. The time zone must be included. Ensure that the
              date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
              must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
            examples:
              - '2022-01-01T12:00:00+08:00'
            title: Updated At Gte
          description: >-
            Filters the results to only transactions updated after this ISO
            date-time string. The time zone must be included. Ensure that the
            date-time string is URL encoded, e.g. `2022-01-01T12:00:00+08:00`
            must be encoded as `2022-01-01T12%3A00%3A00%2B08%3A00`.
        - name: search
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have one of the following fields
              match exactly with the provided `search` value.
            examples:
              - transaction-12345
            title: Search
        - name: buyer_external_identifier
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters the results to only the items for which the `buyer` has an
              `external_identifier` that exactly matches this value.
            examples:
              - buyer-12345
            title: Buyer External Identifier
        - name: buyer_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            description: >-
              Filters the results to only the items for which the `buyer` has an
              `id` that matches this value.
            examples:
              - fe26475d-ec3e-4884-9553-f7356683f7f9
            title: Buyer Id
        - name: buyer_email_address
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters the results to only the items for which the `buyer` has an
              `email_address` that matches this value.
            examples:
              - john@example.com
            title: Buyer Email Address
        - name: buyer_search
          in: query
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: >-
              Filters the results to only get the items for which some of the
              buyer data contains exactly the provided `buyer_search` values.
            examples:
              - - John
                - London
            title: Buyer Search
          description: >-
            Filters the results to only get the items for which some of the
            buyer data contains exactly the provided `buyer_search` values.
        - name: ip_address
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters the results to only the transactions that were originated
              from the given `ip_address`.
            examples:
              - 8.214.133.47
            title: Ip Address
        - name: status
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  $ref: '#/components/schemas/TransactionStatus'
              - type: 'null'
            description: >-
              Filters the results to only the transactions that have a `status`
              that matches with any of the provided status values.
            examples:
              - authorization_succeeded
            title: Status
          description: >-
            Filters the results to only the transactions that have a `status`
            that matches with any of the provided status values.
        - name: id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            description: Filters for the transaction that has a matching `id` value.
            examples:
              - 7099948d-7286-47e4-aad8-b68f7eb44591
            title: Id
        - name: payment_service_transaction_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have a matching
              `payment_service_transaction_id` value. The
              `payment_service_transaction_id` is the identifier of the
              transaction given by the payment service.
            examples:
              - tx-12345
            title: Payment Service Transaction Id
        - name: external_identifier
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters the results to only the items for which the
              `external_identifier` matches this value.
            examples:
              - transaction-12345
            title: External Identifier
        - name: metadata
          in: query
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: >-
              Filters for transactions where their `metadata` values contain all
              of the provided `metadata` keys. The value sent for `metadata`
              must be formatted as a JSON string, and all keys and values must
              be strings. This value should also be URL encoded.
            examples:
              - - first_key: first_value
                  second_key: second_value
            title: Metadata
          description: >-
            Filters for transactions where their `metadata` values contain all
            of the provided `metadata` keys. The value sent for `metadata` must
            be formatted as a JSON string, and all keys and values must be
            strings. This value should also be URL encoded.
        - name: amount_eq
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                minimum: 0
              - type: 'null'
            description: >-
              Filters for transactions that have an `amount` that is equal to
              the provided `amount_eq` value.
            examples:
              - 1299
            title: Amount Eq
          description: >-
            Filters for transactions that have an `amount` that is equal to the
            provided `amount_eq` value.
        - name: amount_lte
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                minimum: 0
              - type: 'null'
            description: >-
              Filters for transactions that have an `amount` that is less than
              or equal to the `amount_lte` value.
            examples:
              - 1299
            title: Amount Lte
          description: >-
            Filters for transactions that have an `amount` that is less than or
            equal to the `amount_lte` value.
        - name: amount_gte
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                minimum: 0
              - type: 'null'
            description: >-
              Filters for transactions that have an `amount` that is greater
              than or equal to the `amount_gte` value.
            examples:
              - 1299
            title: Amount Gte
          description: >-
            Filters for transactions that have an `amount` that is greater than
            or equal to the `amount_gte` value.
        - name: currency
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  pattern: ^[A-Z]{3}$
                  examples:
                    - EUR
                    - GBP
                    - MXN
              - type: 'null'
            description: >-
              Filters for transactions that have matching `currency` values. The
              `currency` values provided must be formatted as 3-letter ISO
              currency code.
            examples:
              - - MXN
            title: Currency
          description: >-
            Filters for transactions that have matching `currency` values. The
            `currency` values provided must be formatted as 3-letter ISO
            currency code.
        - name: country
          in: query
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: Filters for transactions that have matching `country` values.
            examples:
              - - US
            title: Country
          description: Filters for transactions that have matching `country` values.
        - name: payment_service_id
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  type: string
                  format: uuid
              - type: 'null'
            description: >-
              Filters for transactions that were processed by the provided
              `payment_service_id` values.
            examples:
              - - fffd152a-9532-4087-9a4f-de58754210f0
            title: Payment Service Id
          description: >-
            Filters for transactions that were processed by the provided
            `payment_service_id` values.
        - name: payment_method_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            description: >-
              Filters for transactions that have a payment method with an ID
              that matches exactly with the provided value.
            examples:
              - ef9496d8-53a5-4aad-8ca2-00eb68334389
            title: Payment Method Id
        - name: payment_method_label
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have a payment method with a label
              that matches exactly with the provided value.
            examples:
              - '1234'
            title: Payment Method Label
        - name: payment_method_scheme
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have a payment method with a scheme
              that matches with the provided value.
            examples:
              - - visa
            title: Payment Method Scheme
          description: >-
            Filters for transactions that have a payment method with a scheme
            that matches with the provided value.
        - name: payment_method_country
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have a payment method with a country
              that matches with the provided value.
            examples:
              - - US
            title: Payment Method Country
          description: >-
            Filters for transactions that have a payment method with a country
            that matches with the provided value.
        - name: payment_method_fingerprint
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions that have a payment method with a
              fingerprint that matches exactly with the provided value
            examples:
              - a50b85c200ee0795d6fd33a5c66f37a4564f554355c5b46a756aac485dd168a4
            title: Payment Method Fingerprint
        - name: method
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  $ref: '#/components/schemas/Method'
              - type: 'null'
            description: Filters for transactions that have matching `method` values.
            examples:
              - card
            title: Method
          description: Filters for transactions that have matching `method` values.
        - name: error_code
          in: query
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: >-
              Filters for transactions where the `error_code` matches one for
              the provided values.
            examples:
              - - insufficient_funds
            title: Error Code
          description: >-
            Filters for transactions where the `error_code` matches one for the
            provided values.
        - name: has_refunds
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: Filters for transactions with refunds.
            examples:
              - true
            title: Has Refunds
          description: Filters for transactions with refunds.
        - name: pending_review
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: Filters for transactions with a pending manual anti-fraud review.
            examples:
              - true
            title: Pending Review
          description: Filters for transactions with a pending manual anti-fraud review.
        - name: checkout_session_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: uuid
              - type: 'null'
            description: >-
              Filters for transactions where the `checkout_session_id` matches
              the provided value.
            examples:
              - 4137b1cf-39ac-42a8-bad6-1c680d5dab6b
            title: Checkout Session Id
          description: >-
            Filters for transactions where the `checkout_session_id` matches the
            provided value.
        - name: reconciliation_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filters for transactions where the `reconciliation_id` matches the
              provided value.
            examples:
              - 7jZXl4gBUNl0CnaLEnfXbt
            title: Reconciliation Id
          description: >-
            Filters for transactions where the `reconciliation_id` matches the
            provided value.
        - name: payment_method_bin
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filter for transactions that have a card with a BIN that matches
              exactly with the provided value.
            examples:
              - '411111'
            title: Payment Method Bin
          description: >-
            Filter for transactions that have a card with a BIN that matches
            exactly with the provided value.
        - name: payment_source
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  $ref: '#/components/schemas/TransactionPaymentSource'
              - type: 'null'
            description: >-
              Filters the results to only the transactions that have a payment
              source that matches with any of the provided values.
            examples:
              - recurring
            title: Payment Source
          description: >-
            Filters the results to only the transactions that have a payment
            source that matches with any of the provided values.
        - name: is_subsequent_payment
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: >-
              Filters for transactions where the `is_subsequent_payment` matches
              the provided value.
            examples:
              - true
            title: Is Subsequent Payment
          description: >-
            Filters for transactions where the `is_subsequent_payment` matches
            the provided value.
        - name: merchant_initiated
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: >-
              Filters for transactions where the `merchant_initiated` matches
              the provided value.
            examples:
              - true
            title: Merchant Initiated
          description: >-
            Filters for transactions where the `merchant_initiated` matches the
            provided value.
        - name: used_3ds
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: Filters for transactions that attempted 3DS authentication or not.
            examples:
              - true
            title: Used 3Ds
          description: Filters for transactions that attempted 3DS authentication or not.
        - 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
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionSummaries'
        '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: csharp
          label: C#
          source: >-
            using Gr4vy;

            using Gr4vy.Models.Components;

            using Gr4vy.Models.Requests;


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


            ListTransactionsRequest req = new ListTransactionsRequest() {};


            ListTransactionsResponse? res = await
            sdk.Transactions.ListAsync(req);


            while(res != null)

            {
                // handle items

                res = await res.Next!();
            }
        - lang: typescript
          label: Typescript
          source: |-
            import { Gr4vy } from "@gr4vy/sdk";

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

            async function run() {
              const result = await gr4vy.transactions.list();

              for await (const page of result) {
                console.log(page);
              }
            }

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


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

                res = g_client.transactions.list(limit=20)

                while res is not None:
                    # Handle items

                    res = res.next()
        - lang: go
          label: Go
          source: "package main\n\nimport(\n\t\"context\"\n\tgr4vygo \"github.com/gr4vy/gr4vy-go\"\n\t\"os\"\n\t\"github.com/gr4vy/gr4vy-go/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    privateKey := \"....\"\n\twithToken := gr4vy.WithToken(privateKey, []JWTScope{ReadAll, WriteAll}, 60)\n\n\ts := gr4vy.New(\n\t\tgr4vy.WithID(\"mattilda\"),\n\t\tgr4vy.WithServer(gr4vy.ServerSandbox),\n\t\tgr4vy.WithSecuritySource(withToken),\n\t\tgr4vy.WithMerchantAccountID(\"default\"),\n\t)\n\n    res, err := s.Transactions.List(ctx, operations.ListTransactionsRequest{})\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res != nil {\n        for {\n            // handle items\n\n            res, err = res.Next()\n\n            if err != nil {\n                // handle error\n            }\n\n            if res == nil {\n                break\n            }\n        }\n    }\n}"
        - lang: php
          label: PHP
          source: |-
            declare(strict_types=1);

            require 'vendor/autoload.php';

            use Gr4vy;
            use Gr4vy\Auth;

             
            $privateKey = "..."; 

            $sdk = Gr4vy\SDK::builder()
                -\u003esetId('mattilda')
                -\u003esetServer('sandbox')
                -\u003esetSecuritySource(Auth::withToken($privateKey))
                -\u003esetMerchantAccountId('default')
                -\u003ebuild();

            $request = new Gr4vy\ListTransactionsRequest();

            $responses = $sdk->transactions->list(
                request: $request
            );


            foreach ($responses as $response) {
                if ($response->statusCode === 200) {
                    // handle response
                }
            }
        - lang: java
          label: Java
          source: >-
            package hello.world;


            import java.lang.Exception;

            import com.gr4vy.sdk.BearerSecuritySource;

            import com.gr4vy.sdk.Gr4vy;

            import com.gr4vy.sdk.Gr4vy.AvailableServers;

            import org.openapis.openapi.models.errors.*;

            import
            org.openapis.openapi.models.operations.ListTransactionsRequest;

            import
            org.openapis.openapi.models.operations.ListTransactionsResponse;


            public class Application {

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

                    Gr4vy sdk = Gr4vy.builder()
                            .id("mattilda")
                            .server(AvailableServers.SANDBOX)
                            .merchantAccountId("default")
                            .securitySource(new BearerSecuritySource.Builder(privateKey).build())
                        .build();

                    ListTransactionsRequest req = ListTransactionsRequest.builder()
                            .build();

                    sdk.transactions().list()
                            .request(req)
                            .callAsStream()
                            .forEach((ListTransactionsResponse item) -> {
                               // handle page
                            });

                }
            }
components:
  schemas:
    TransactionStatus:
      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
    Method:
      type: string
      enum:
        - card
        - oxxo
        - spei
        - pse
        - tapi
        - tapifintechs
      title: Method
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    TransactionPaymentSource:
      type: string
      enum:
        - ecommerce
        - moto
        - recurring
        - installment
        - card_on_file
      title: TransactionPaymentSource
      description: The way payment method information made it to this transaction.
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    TransactionSummaries:
      properties:
        items:
          items:
            $ref: '#/components/schemas/TransactionSummary'
          type: array
          title: Items
          description: A list of items returned for this request.
        limit:
          type: integer
          maximum: 100
          minimum: 1
          title: Limit
          description: The number of items for this page.
          default: 20
          examples:
            - 20
        next_cursor:
          anyOf:
            - type: string
              maxLength: 1000
              minLength: 1
            - type: 'null'
          title: Next Cursor
          description: The cursor pointing at the next page of items.
          examples:
            - ZXhhbXBsZTE
        previous_cursor:
          anyOf:
            - type: string
              maxLength: 1000
              minLength: 1
            - type: 'null'
          title: Previous Cursor
          description: The cursor pointing at the previous page of items.
          examples:
            - Xkjss7asS
      additionalProperties: false
      type: object
      required:
        - items
      title: TransactionSummaries
    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: []
      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
    TransactionSummary:
      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
            - MXN
        amount:
          type: integer
          title: Amount
          description: >-
            The total amount for this transaction across all funding sources
            including gift cards.
          examples:
            - 1299
        status:
          $ref: '#/components/schemas/TransactionStatus'
          description: >-
            The status of the transaction for the `payment_method`. The status
            may change over time as asynchronous processing events occur.
          examples:
            - authorization_succeeded
        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
        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:
          $ref: '#/components/schemas/TransactionIntent'
          description: The original `intent` used when the transaction was created.
          examples:
            - capture
        payment_method:
          anyOf:
            - $ref: '#/components/schemas/TransactionPaymentMethod'
            - type: 'null'
          description: The payment method used for this transaction.
        method:
          anyOf:
            - $ref: '#/components/schemas/Method'
            - type: 'null'
          description: The method used for the transaction.
          examples:
            - card
        instrument_type:
          anyOf:
            - $ref: '#/components/schemas/InstrumentType'
            - 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
        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'
      additionalProperties: false
      type: object
      required:
        - id
        - reconciliation_id
        - merchant_account_id
        - currency
        - amount
        - status
        - authorized_amount
        - captured_amount
        - refunded_amount
        - intent
        - created_at
        - updated_at
      title: TransactionSummary
      description: A transaction, summarised
    ErrorDetail:
      properties:
        location:
          $ref: '#/components/schemas/ErrorLocation'
          description: >-
            The part of the request where the property can be found that caused
            the error.
          examples:
            - body
        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
    TransactionIntent:
      type: string
      enum:
        - authorize
        - capture
      title: TransactionIntent
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    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
                - MXN
            - 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:
            - MXN
        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 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:
          $ref: '#/components/schemas/Method'
          description: The type of this payment method.
          examples:
            - card
        mode:
          anyOf:
            - $ref: '#/components/schemas/Mode'
            - type: 'null'
          description: The mode to use with this payment method.
          examples:
            - card
        scheme:
          anyOf:
            - $ref: '#/components/schemas/CardScheme'
            - 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:
            - $ref: '#/components/schemas/ApprovalTarget'
            - 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
    InstrumentType:
      type: string
      enum:
        - pan
        - card_token
        - redirect
        - redirect_token
        - googlepay
        - applepay
        - network_token
      title: InstrumentType
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    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:
          $ref: '#/components/schemas/Method'
          description: The payment method that this service handles.
          examples:
            - card
        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-Output'
            - 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
    ErrorLocation:
      type: string
      enum:
        - query
        - body
        - path
        - header
        - unknown
      title: ErrorLocation
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    PaymentMethodDetailsCard:
      properties:
        bin:
          anyOf:
            - type: string
              maxLength: 8
              minLength: 6
              pattern: ^\d+$
            - type: 'null'
          title: Bin
        card_type:
          anyOf:
            - $ref: '#/components/schemas/CardType'
            - type: 'null'
        card_issuer_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Card Issuer Name
      additionalProperties: false
      type: object
      title: PaymentMethodDetailsCard
    Mode:
      type: string
      enum:
        - card
        - redirect
        - applepay
        - googlepay
        - checkout-session
        - click-to-pay
        - gift-card
      title: Mode
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    CardScheme:
      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
        - rupay
        - star
        - uatp
        - unionpay
        - visa
      title: CardScheme
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    ApprovalTarget:
      type: string
      enum:
        - new_window
        - any
      title: ApprovalTarget
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    BillingDetails-Output:
      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
    CardType:
      type: string
      enum:
        - credit
        - debit
        - prepaid
      title: CardType
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
    TaxId:
      properties:
        value:
          type: string
          maxLength: 50
          minLength: 1
          title: Value
          description: The tax ID for the buyer.
          examples:
            - '12345678931'
        kind:
          $ref: '#/components/schemas/TaxIdKind'
          description: The kind of tax ID
          examples:
            - mx.rfc
      additionalProperties: false
      type: object
      required:
        - value
        - kind
      title: TaxId
    TaxIdKind:
      type: string
      enum:
        - co.itin
        - co.nit
        - mx.curp
        - mx.rfc
        - pe.ruc
      title: TaxIdKind
      x-speakeasy-unknown-values: allow
      overlay: 1.0.0
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````