> ## 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.

# Update a merchant account

> Update info for a merchant account in an instance.

This endpoint requires the `merchant-accounts.write` scope.


## OpenAPI

````yaml /openapi.speakeasy.json PUT /merchant-accounts/{merchant_account_id}
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:
  /merchant-accounts/{merchant_account_id}:
    put:
      tags:
        - Merchant accounts
      summary: Update a merchant account
      description: Update info for a merchant account in an instance.
      operationId: update_merchant_account
      parameters:
        - name: merchant_account_id
          in: path
          required: true
          schema:
            type: string
            description: The ID of the merchant account.
            examples:
              - merchant-12345
            title: Merchant Account Id
          description: The ID of the merchant account.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MerchantAccountUpdate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchantAccount'
        '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.merchantAccounts.update({
                accountUpdaterEnabled: true,
                asyncNetworkTokensEnabled: true,
              }, "merchant-12345");

              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())
            ):

                res = g_client.merchant_accounts.update(merchant_account_id="merchant-12345", account_updater_enabled=True, async_network_tokens_enabled=True)

                # 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\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := gr4vy.New(\n\t\tgr4vy.WithID(\"example\"),\n\t\tgr4vy.WithServer(gr4vy.ServerSandbox),\n\t\tgr4vy.WithSecuritySource(withToken),\n\t\tgr4vy.WithMerchantAccountID(\"default\"),\n\t)\n\n    res, err := s.MerchantAccounts.Update(ctx, \"merchant-12345\", components.MerchantAccountUpdate{\n        AccountUpdaterEnabled: gr4vygo.Pointer(true),\n        AsyncNetworkTokensEnabled: gr4vygo.Pointer(true),\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res != nil {\n        // handle response\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();

            $merchantAccountUpdate = new Gr4vy\MerchantAccountUpdate(
                accountUpdaterEnabled: true,
                asyncNetworkTokensEnabled: true,
            );

            $response = $sdk->merchantAccounts->update(
                merchantAccountId: 'merchant-12345',
                merchantAccountUpdate: $merchantAccountUpdate

            );

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


            import com.gr4vy.sdk.Gr4vy;

            import com.gr4vy.sdk.models.components.MerchantAccountUpdate;

            import com.gr4vy.sdk.models.errors.*;

            import
            com.gr4vy.sdk.models.operations.UpdateMerchantAccountResponse;

            import java.lang.Exception;


            public class Application {

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

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

                    UpdateMerchantAccountResponse res = sdk.merchantAccounts().update()
                            .merchantAccountId("merchant-12345")
                            .merchantAccountUpdate(MerchantAccountUpdate.builder()
                                .accountUpdaterEnabled(true)
                                .asyncNetworkTokensEnabled(true)
                                .build())
                            .call();

                    if (res.merchantAccount().isPresent()) {
                        System.out.println(res.merchantAccount().get());
                    }
                }
            }
        - lang: csharp
          label: C#
          source: |-
            using Gr4vy;
            using Gr4vy.Models.Components;

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

            var res = await sdk.MerchantAccounts.UpdateAsync(
                merchantAccountId: "merchant-12345",
                merchantAccountUpdate: new MerchantAccountUpdate() {
                    AccountUpdaterEnabled = true,
                    AsyncNetworkTokensEnabled = true,
                }
            );

            // handle response
components:
  schemas:
    MerchantAccountUpdate:
      properties:
        account_updater_enabled:
          type: boolean
          title: Account Updater Enabled
          description: >-
            Whether the Real-Time Account Updater service is enabled for this
            merchant account. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `false`, the Account Updater service doesn't
            get called if a payment fails with expired or invalid card details.
            If the field is set to `true`, the service is called. Please note
            that for this to work the other `account_updater_* fields` must be
            set as well.
          default: false
          examples:
            - true
        account_updater_request_encryption_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Request Encryption Key
          description: >-
            The public key used to encrypt the request to the Real-Time Account
            Updater service. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `null`, the Account Updater service doesn't
            get called. If the field is set, the other `account_updater_*`
            fields must be set as well.
          examples:
            - key-1234
        account_updater_request_encryption_key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Request Encryption Key Id
          description: >-
            The ID of the key used to encrypt the request to the Real-Time
            Account Updater service. The Account Updater service is used to
            update card details when cards are lost, stolen or expired. If the
            field is not set or if it's set to `null`, the Account Updater
            service doesn't get called. If the field is set, the other
            `account_updater_*` fields must be set as well.
          examples:
            - key-id-1234
        account_updater_response_decryption_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Response Decryption Key
          description: >-
            The key used to decrypt the response from the Real-Time Account
            Updater service. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `null`, the Account Updater service doesn't
            get called. If the field is set, the other `account_updater_*`
            fields must be set as well.
          examples:
            - key-1234
        account_updater_response_decryption_key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Response Decryption Key Id
          description: >-
            The ID of the key used to decrypt the request from the Real-Time
            Account Updater service. The Account Updater service is used to
            update card details when cards are lost, stolen or expired. If the
            field is not set or if it's set to `null`, the Account Updater
            service doesn't get called. If the field is set, the other
            `account_updater_*` fields must be set as well.
          examples:
            - key-id-1234
        over_capture_amount:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Over Capture Amount
          description: >-
            The maximum monetary amount allowed for over-capture, in the
            smallest currency unit, for example `1299` cents to allow for an
            over-capture of `$12.99`.
          examples:
            - 1299
        over_capture_percentage:
          anyOf:
            - type: integer
              maximum: 99999999
              minimum: 0
            - type: 'null'
          title: Over Capture Percentage
          description: >-
            The maximum percentage allowed for over-capture, for example `25` to
            allow for an over-capture of `25%` of the original transaction
            amount.
          examples:
            - 25
        loon_client_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Loon Client Key
          description: >-
            Client key provided by Pagos to authenticate to the Loon API. Loon
            is the Account Updater service we use and if the field is not set or
            if it's set to null, the Account Updater service doesn't get
            configured. If the field is set to `null`, the other `loon_*` fields
            must be set to null as well.
          examples:
            - client-key-1234
        loon_secret_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Loon Secret Key
          description: >-
            Secret key provided by Pagos to authenticate to the Loon API. Loon
            is the Account Updater service we use and if the field is not set or
            if it's set to null, the Account Updater service doesn't get
            configured. If the field is set to `null`, the other `loon_*` fields
            must be set to null as well.
          examples:
            - key-12345
        loon_accepted_schemes:
          anyOf:
            - items:
                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: array
              uniqueItems: true
            - type: 'null'
          title: Loon Accepted Schemes
          description: >-
            Card schemes accepted when creating jobs using this set of Loon API
            keys. Loon is the Account Updater service we use and if the field is
            not set or if it's set to null, the Account Updater service doesn't
            get configured. If the field is set to `null`, the other `loon_*`
            fields must be set to null as well.
          examples:
            - - visa
        visa_network_tokens_requestor_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Visa Network Tokens Requestor Id
          description: >-
            Requestor ID provided for Visa after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        visa_network_tokens_app_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Visa Network Tokens App Id
          description: >-
            Application ID provided for Visa after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        amex_network_tokens_requestor_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Amex Network Tokens Requestor Id
          description: >-
            Requestor ID provided for American Express after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        amex_network_tokens_app_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Amex Network Tokens App Id
          description: >-
            Application ID provided for American Express after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        mastercard_network_tokens_requestor_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Mastercard Network Tokens Requestor Id
          description: >-
            Requestor ID provided for Mastercard after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        mastercard_network_tokens_app_id:
          anyOf:
            - type: string
              maxLength: 300
              minLength: 0
            - type: 'null'
          title: Mastercard Network Tokens App Id
          description: >-
            Application ID provided for Mastercard after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        async_network_tokens_enabled:
          type: boolean
          title: Async Network Tokens Enabled
          description: >-
            When enabled network tokens will be generated asynchronously and
            only used on subsequent transactions to speed up transaction
            processing.
          default: false
          examples:
            - true
            - false
        display_name:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          title: Display Name
          description: The display name for the merchant account.
          examples:
            - Example
      additionalProperties: false
      type: object
      title: MerchantAccountUpdate
    MerchantAccount:
      properties:
        type:
          type: string
          const: merchant-account
          title: Type
          description: Always `merchant-account`.
          default: merchant-account
          examples:
            - merchant-account
        id:
          type: string
          maxLength: 50
          minLength: 1
          title: Id
          description: The ID for the merchant account.
          examples:
            - merchant-12345
        display_name:
          type: string
          maxLength: 255
          minLength: 1
          title: Display Name
          description: The display name for the buyer.
          examples:
            - John Doe
        loon_client_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Loon Client Key
          description: >-
            Client key provided by Pagos to authenticate to the Loon API. Loon
            is the Account Updater service we use and if the field is not set or
            if it's set to null, the Account Updater service doesn't get
            configured. If the field is set to `null`, the other `loon_*` fields
            must be set to null as well.
          examples:
            - client-key-1234
        loon_secret_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Loon Secret Key
          description: >-
            Secret key provided by Pagos to authenticate to the Loon API. Loon
            is the Account Updater service we use and if the field is not set or
            if it's set to null, the Account Updater service doesn't get
            configured. If the field is set to `null`, the other `loon_*` fields
            must be set to null as well.
          examples:
            - key-12345
        loon_accepted_schemes:
          anyOf:
            - items:
                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: array
            - type: 'null'
          title: Loon Accepted Schemes
          description: >-
            Card schemes accepted when creating jobs using this set of Loon API
            keys. Loon is the Account Updater service we use and if the field is
            not set or if it's set to null, the Account Updater service doesn't
            get configured. If the field is set to `null`, the other `loon_*`
            fields must be set to null as well.
          examples:
            - - visa
        account_updater_request_encryption_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Request Encryption Key
          description: >-
            The public key used to encrypt the request to the Real-Time Account
            Updater service. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `null`, the Account Updater service doesn't
            get called. If the field is set, the other `account_updater_*`
            fields must be set as well.
          examples:
            - key-1234
        account_updater_request_encryption_key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Request Encryption Key Id
          description: >-
            The ID of the key used to encrypt the request to the Real-Time
            Account Updater service. The Account Updater service is used to
            update card details when cards are lost, stolen or expired. If the
            field is not set or if it's set to `null`, the Account Updater
            service doesn't get called. If the field is set, the other
            `account_updater_*` fields must be set as well.
          examples:
            - key-id-1234
        account_updater_response_decryption_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Response Decryption Key
          description: >-
            The key used to decrypt the response from the Real-Time Account
            Updater service. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `null`, the Account Updater service doesn't
            get called. If the field is set, the other `account_updater_*`
            fields must be set as well.
          examples:
            - key-1234
        account_updater_response_decryption_key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Account Updater Response Decryption Key Id
          description: >-
            The ID of the key used to decrypt the request from the Real-Time
            Account Updater service. The Account Updater service is used to
            update card details when cards are lost, stolen or expired. If the
            field is not set or if it's set to `null`, the Account Updater
            service doesn't get called. If the field is set, the other
            `account_updater_*` fields must be set as well.
          examples:
            - key-id-1234
        account_updater_enabled:
          type: boolean
          title: Account Updater Enabled
          description: >-
            Whether the Real-Time Account Updater service is enabled for this
            merchant account. The Account Updater service is used to update card
            details when cards are lost, stolen or expired. If the field is not
            set or if it's set to `false`, the Account Updater service doesn't
            get called if a payment fails with expired or invalid card details.
            If the field is set to `true`, the service is called. Please note
            that for this to work the other `account_updater_* fields` must be
            set as well.
          examples:
            - true
        over_capture_amount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Over Capture Amount
          description: >-
            The maximum monetary amount allowed for over-capture, in the
            smallest currency unit, for example `1299` cents to allow for an
            over-capture of `$12.99`.
          examples:
            - 1299
        over_capture_percentage:
          anyOf:
            - type: integer
            - type: 'null'
          title: Over Capture Percentage
          description: >-
            The maximum percentage allowed for over-capture, for example `25` to
            allow for an over-capture of `25%` of the original transaction
            amount.
          examples:
            - 25
        visa_network_tokens_requestor_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Visa Network Tokens Requestor Id
          description: >-
            Requestor ID provided for Visa after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        visa_network_tokens_app_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Visa Network Tokens App Id
          description: >-
            Application ID provided for Visa after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        amex_network_tokens_requestor_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Amex Network Tokens Requestor Id
          description: >-
            Requestor ID provided for American Express after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        amex_network_tokens_app_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Amex Network Tokens App Id
          description: >-
            Application ID provided for American Express after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        mastercard_network_tokens_requestor_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Mastercard Network Tokens Requestor Id
          description: >-
            Requestor ID provided for Mastercard after onboarding to use Network
            Tokens.
          examples:
            - id-12345
        mastercard_network_tokens_app_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Mastercard Network Tokens App Id
          description: >-
            Application ID provided for Mastercard after onboarding to use
            Network Tokens.
          examples:
            - id-12345
        async_network_tokens_enabled:
          type: boolean
          title: Async Network Tokens Enabled
          description: >-
            When enabled network tokens will be generated asynchronously and
            only used on subsequent transactions to speed up transaction
            processing.
          default: false
          examples:
            - true
            - false
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The date this merchant account was created at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: The date this merchant account was last updated at.
          examples:
            - '2013-07-16T19:23:00.000+00:00'
      additionalProperties: false
      type: object
      required:
        - id
        - display_name
        - account_updater_enabled
        - created_at
        - updated_at
      title: MerchantAccount
    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
    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
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````