> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.mercoa.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mercoa.com/_mcp/server.

# Find

GET https://api.mercoa.com/paymentMethods

Reference: https://docs.mercoa.com/embedded-ap-ar/api-reference/payment-methods/find

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Request

### Query parameters

- `limit` (integer, optional) — Number of payment methods to return. Limit can range between 1 and 100, and the default is 10.
- `startingAfter` (string, optional) — The ID of the payment method to start after. If not provided, the first page of payment methods will be returned.
- `type` (enum, optional) — Type of payment method to filter
  - Allowed values: `custom`, `check`, `bankAccount`, `na`, `card`, `bnpl`, `virtualCard`, `offPlatform`, `utility`, `wallet`
- `entityId` (string, optional) — Entity ID to filter

## Response

### 200

- `count` (integer, required)
- `hasMore` (boolean, required)
- `data` (list of object, required)
  - `paymentMethod` (object, required)
    - `type`: `bankAccount`
      - `accountName` (string, required)
      - `accountNumber` (string, required)
      - `accountType` (enum, required)
        - Allowed values: `CHECKING`, `SAVINGS`, `UNKNOWN`
      - `bankName` (string, required)
      - `createdAt` (datetime, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `routingNumber` (string, required)
      - `status` (enum, required)
        - Allowed values: `NEW`, `VERIFIED`, `VERIFICATION_FAILED`, `PENDING`, `ERRORED`
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `checkOptions` (object, optional) — If check printing is enabled for the account, will return the check options for this bank account
        - `signatoryName` (string, required) — Name of the person who's signature will be printed on the check.
        - `enabled` (boolean, optional) — If true, will allow the user to print checks from this bank account
        - `initialCheckNumber` (integer, optional) — If provided, will start the check number sequence at the provided number. If not provided, will start at 5000.
        - `routingNumberOverride` (string, optional) — If provided, will print a check with the provided routing number instead of the one from the bank account
        - `accountNumberOverride` (string, optional) — If provided, will print a check with the provided account number instead of the one from the bank account
        - `accountHolderNameOverride` (string, optional) — If provided, will print a check with the provided account holder name instead of the payer name from the invoice
        - `accountHolderAddressOverride` (object, optional) — If provided, will print a check with the provided account holder address instead of the payer address from the invoice
          - `addressLine1` (string, required)
          - `city` (string, required)
          - `stateOrProvince` (string, required) — State or province code. Must be in the format XX.
          - `postalCode` (string, required) — Postal code. Must be in the format XXXXX or XXXXX-XXXX.
          - `addressLine2` (string, optional)
          - `country` (string, optional)
        - `signatureImage` (string, optional) — Base64 encoded image of the signature. If not provided, will use the signatoryName to generate a signature. Mercoa will automatically grayscale, resize, and convert the image to a PNG the image to fit on the check.
        - `useSignatureImage` (boolean, optional) — If true, will print checks with the provided signatureImage. If false, will print checks with a generated signature from the signatoryName. If this parameter is not set the default behavior is to use the signatureImage if provided.
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `card`
      - `cardBrand` (enum, required)
        - Allowed values: `AmericanExpress`, `Discover`, `Mastercard`, `Visa`
      - `cardType` (enum, required)
        - Allowed values: `credit`, `debit`, `prepaid`, `unknown`
      - `createdAt` (datetime, required)
      - `expMonth` (string, required)
      - `expYear` (string, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `lastFour` (string, required)
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `check`
      - `addressLine1` (string, required)
      - `city` (string, required)
      - `country` (string, required)
      - `createdAt` (datetime, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `payToTheOrderOf` (string, required)
      - `postalCode` (string, required)
      - `stateOrProvince` (string, required)
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `addressLine2` (string, optional)
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `custom`
      - `createdAt` (datetime, required)
      - `data` (map from string to string, required) — Object of key/value pairs that matches the keys in the linked payment method schema.
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `schema` (object, required)
        - `id` (string, required)
        - `name` (string, required)
        - `isSource` (boolean, required) — This payment method can be used as a payment source for an invoice
        - `isDestination` (boolean, required) — This payment method can be used as a payment destination for an invoice
        - `supportedCurrencies` (list of enum, required) — List of currencies that this payment method supports.
          - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
        - `fields` (list of object, required)
          - `name` (string, required)
          - `type` (enum, required)
            - Allowed values: `text`, `number`, `select`, `date`, `phone`, `email`, `url`, `dynamicUrl`, `embeddedUrl`, `address`, `usBankRoutingNumber`, `usBankAccountNumber`
          - `optional` (boolean, required) — Indicates whether this field is optional
          - `displayName` (string, optional)
          - `useAsAccountName` (boolean, optional) — Indicates whether this field should be used as the name of the payment method. Only one field can be used as the name. Will set the accountName field of the payment method to the value of this field.
          - `useAsAccountNumber` (boolean, optional) — Indicates whether this field should be used as the account number of the payment method. Only one field can be used as the account number. Will set the accountNumber field of the payment method to the value of this field.
          - `options` (list of string, optional) — When type is 'select', provide options that can be selected
        - `estimatedProcessingTime` (integer, required) — Estimated time in days for this payment method to process a payments. 0 is an same-day payment methods, -1 is unknown processing time.
        - `createdAt` (datetime, required)
        - `updatedAt` (datetime, required)
        - `maxAmount` (double, optional) — The maximum amount that can be transferred from this payment method in a single transaction.
        - `minAmount` (double, optional) — The minimum amount that can be transferred from this payment method in a single transaction. Default is 1.
      - `schemaId` (string, required) — Payment method schema used for this payment method. Defines the fields that this payment method contains.
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `accountName` (string, optional)
      - `accountNumber` (string, optional)
      - `availableBalance` (double, optional) — The available balance for this payment method.
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `foreignId` (string, optional) — ID for this payment method in your system
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `offPlatform`
      - `createdAt` (datetime, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `utility`
      - `createdAt` (datetime, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `utilityId` (string, required) — The ID of the utility that this payment method is linked to.
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
    - `type`: `wallet`
      - `availableBalance` (object, required) — The balance available for use in this wallet.
        - `amount` (double, required) — The amount in major units of the currency.
        - `currency` (enum, required)
          - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `createdAt` (datetime, required)
      - `frozen` (boolean, required) — Frozen payment methods cannot be used for payments, but will still be returned in API responses.
      - `id` (string, required)
      - `isDefaultDestination` (boolean, required) — Indicates whether this payment method is the default destination for the entity
      - `isDefaultSource` (boolean, required) — Indicates whether this payment method is the default source for the entity
      - `metadata` (map from string to string, required) — Metadata associated with this payment method.
      - `pendingBalance` (object, required) — The in-flight balance into/out of this wallet.
        - `amount` (double, required) — The amount in major units of the currency.
        - `currency` (enum, required)
          - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `supportedCurrencies` (list of enum, required)
        - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`
      - `updatedAt` (datetime, required)
      - `externalAccountingSystemId` (string, optional) — ID for this payment method in the external accounting system (e.g Rutter or Codat)
      - `confirmedByEntity` (boolean, optional) — (ALPHA, MAY BE REMOVED) Indicates whether the payment method has been verified by the entity. This is useful if another entity has added this payment method to this entity, and you want the owner of the payment method to verify it is correct.
  - `entity` (object, required)
    - `id` (string, required)
    - `name` (string, required)
    - `email` (string, required)
    - `isCustomer` (boolean, required) — True if this entity has a direct relationship with your organization.
    - `accountType` (enum, required)
      - Allowed values: `business`, `individual`
    - `profile` (object, required)
      - `business` (object, optional) — Will be set if the entity is a business
        - `legalBusinessName` (string, required)
        - `taxIDProvided` (boolean, required)
        - `email` (string, optional)
        - `businessType` (enum, optional)
          - Allowed values: `soleProprietorship`, `unincorporatedAssociation`, `trust`, `publicCorporation`, `privateCorporation`, `llc`, `partnership`, `unincorporatedNonProfit`, `incorporatedNonProfit`
        - `phone` (object, optional)
          - `countryCode` (string, required)
          - `number` (string, required)
        - `doingBusinessAs` (string, optional)
        - `website` (string, optional)
        - `description` (string, optional)
        - `address` (object, optional)
          - `addressLine1` (string, required)
          - `city` (string, required)
          - `stateOrProvince` (string, required) — State or province code. Must be in the format XX.
          - `postalCode` (string, required) — Postal code. Must be in the format XXXXX or XXXXX-XXXX.
          - `addressLine2` (string, optional)
          - `country` (string, optional)
        - `ownersProvided` (boolean, optional) — True if all representatives have been provided for this business.
        - `taxId` (object, optional)
          - `ein` (object, required)
            - `number` (string, required) — Must be in the format XX-XXXXXXX.
        - `formationDate` (datetime, optional)
        - `industryCodes` (object, optional)
          - `mcc` (string, optional)
        - `averageMonthlyTransactionVolume` (double, optional)
        - `averageTransactionSize` (double, optional)
        - `maxTransactionSize` (double, optional)
      - `individual` (object, optional) — Will be set if the entity is a individual
        - `name` (object, required)
          - `firstName` (string, required)
          - `lastName` (string, required)
          - `middleName` (string, optional)
          - `suffix` (string, optional)
        - `birthDateProvided` (boolean, required)
        - `governmentIDProvided` (boolean, required)
        - `email` (string, optional)
        - `phone` (object, optional)
          - `countryCode` (string, required)
          - `number` (string, required)
        - `address` (object, optional)
          - `addressLine1` (string, required)
          - `city` (string, required)
          - `stateOrProvince` (string, required) — State or province code. Must be in the format XX.
          - `postalCode` (string, required) — Postal code. Must be in the format XXXXX or XXXXX-XXXX.
          - `addressLine2` (string, optional)
          - `country` (string, optional)
    - `status` (enum, required)
      - Allowed values: `unverified`, `pending`, `resubmit`, `review`, `verified`, `failed`
    - `acceptedTos` (boolean, required) — True if this entity has accepted the terms of service.
    - `isPayor` (boolean, required) — True if this entity can pay invoices.
    - `isPayee` (boolean, required) — True if this entity can receive payments.
    - `isNetworkPayor` (boolean, required) — True if this entity is available as a payor to any entity on your platform. Otherwise this entity will only be available as a payor to entities that have a direct relationship with this entity.
    - `isNetworkPayee` (boolean, required) — True if this entity is available as a payee to any entity on your platform. Otherwise this entity will only be available as a payee to entities that have a direct relationship with this entity.
    - `createdAt` (datetime, required)
    - `updatedAt` (datetime, required)
    - `foreignId` (string, optional) — The ID used to identify this entity in your system
    - `emailTo` (string, optional) — Local-part/username of the email address to which to send invoices to be added to the Invoice Inbox.
    - `emailToAlias` (list of string, optional) — Email inbox alias addresses. Used when forwarding emails to the emailTo address from an alias.
    - `logo` (string, optional) — URL for the entity logo
    - `oatfiStatus` (string, optional) — The OatFi status of this entity
    - `oatfiUnderwritingResponse` (map from string to string, optional) — The OatFi underwriting response of this entity
    - `metadata` (map from string to string, optional) — Simple key/value metadata associated with this entity. For more complex metadata, use the Metadata API.

## Errors

### 400 Bad Request

- `errorName` ("BadRequest", required)
- `content` (string, required)

### 401 Unauthorized

- `errorName` ("Unauthorized", required)
- `content` (string, required)

### 403 Forbidden

- `errorName` ("Forbidden", required)
- `content` (string, required)

### 404 Not Found

- `errorName` ("NotFound", required)
- `content` (string, required)

### 409 Conflict

- `errorName` ("Conflict", required)
- `content` (string, required)

### 500 Internal Server Error

- `errorName` ("InternalServerError", required)
- `content` (string, required)

### 501 Unimplemented

- `errorName` ("Unimplemented", required)
- `content` (string, required)

## Examples

### All

**Response**

```json
{
  "count": 1,
  "hasMore": false,
  "data": [
    {
      "paymentMethod": {
        "type": "bankAccount",
        "accountName": "My Checking Account",
        "accountNumber": "99988767623",
        "accountType": "CHECKING",
        "bankName": "Chase",
        "createdAt": "2021-01-01T00:00:00Z",
        "frozen": false,
        "id": "pm_4794d597-70dc-4fec-b6ec-c5988e759769",
        "isDefaultDestination": true,
        "isDefaultSource": true,
        "metadata": {},
        "routingNumber": "12345678",
        "status": "VERIFIED",
        "supportedCurrencies": [
          "USD"
        ],
        "updatedAt": "2021-01-01T00:00:00Z",
        "confirmedByEntity": true
      },
      "entity": {
        "id": "ent_8545a84e-a45f-41bf-bdf1-33b42a55812c",
        "name": "Acme Inc.",
        "email": "customer@acme.com",
        "isCustomer": true,
        "accountType": "business",
        "profile": {
          "business": {
            "legalBusinessName": "Acme Inc.",
            "taxIDProvided": true,
            "email": "customer@acme.com",
            "businessType": "llc",
            "phone": {
              "countryCode": "1",
              "number": "4155551234"
            },
            "address": {
              "addressLine1": "123 Main St",
              "city": "San Francisco",
              "stateOrProvince": "CA",
              "postalCode": "94105",
              "addressLine2": "Unit 1",
              "country": "US"
            },
            "ownersProvided": true,
            "taxId": {
              "ein": {
                "number": "12-3456789"
              }
            }
          }
        },
        "status": "verified",
        "acceptedTos": true,
        "isPayor": true,
        "isPayee": false,
        "isNetworkPayor": false,
        "isNetworkPayee": false,
        "createdAt": "2024-01-01T00:00:00Z",
        "updatedAt": "2024-01-02T00:00:00Z",
        "foreignId": "MY-DB-ID-12345"
      }
    }
  ]
}
```

**SDK Code**

```python All
import requests

url = "https://api.mercoa.com/paymentMethods"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```typescript All
import { MercoaClient } from "@mercoa/javascript";

const client = new MercoaClient({ token: "YOUR_TOKEN" });
await client.paymentMethods.find();

```

```go All
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.mercoa.com/paymentMethods"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby All
require 'uri'
require 'net/http'

url = URI("https://api.mercoa.com/paymentMethods")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java All
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.mercoa.com/paymentMethods")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php All
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.mercoa.com/paymentMethods', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp All
using RestSharp;

var client = new RestClient("https://api.mercoa.com/paymentMethods");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift All
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.mercoa.com/paymentMethods")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

### BankAccount

**Response**

```json
{
  "count": 1,
  "hasMore": false,
  "data": [
    {
      "paymentMethod": {
        "type": "bankAccount",
        "accountName": "My Checking Account",
        "accountNumber": "99988767623",
        "accountType": "CHECKING",
        "bankName": "Chase",
        "createdAt": "2021-01-01T00:00:00Z",
        "frozen": false,
        "id": "pm_4794d597-70dc-4fec-b6ec-c5988e759769",
        "isDefaultDestination": true,
        "isDefaultSource": true,
        "metadata": {},
        "routingNumber": "12345678",
        "status": "VERIFIED",
        "supportedCurrencies": [
          "USD"
        ],
        "updatedAt": "2021-01-01T00:00:00Z",
        "confirmedByEntity": true
      },
      "entity": {
        "id": "ent_8545a84e-a45f-41bf-bdf1-33b42a55812c",
        "name": "Acme Inc.",
        "email": "customer@acme.com",
        "isCustomer": true,
        "accountType": "business",
        "profile": {
          "business": {
            "legalBusinessName": "Acme Inc.",
            "taxIDProvided": true,
            "email": "customer@acme.com",
            "businessType": "llc",
            "phone": {
              "countryCode": "1",
              "number": "4155551234"
            },
            "address": {
              "addressLine1": "123 Main St",
              "city": "San Francisco",
              "stateOrProvince": "CA",
              "postalCode": "94105",
              "addressLine2": "Unit 1",
              "country": "US"
            },
            "ownersProvided": true,
            "taxId": {
              "ein": {
                "number": "12-3456789"
              }
            }
          }
        },
        "status": "verified",
        "acceptedTos": true,
        "isPayor": true,
        "isPayee": false,
        "isNetworkPayor": false,
        "isNetworkPayee": false,
        "createdAt": "2024-01-01T00:00:00Z",
        "updatedAt": "2024-01-02T00:00:00Z",
        "foreignId": "MY-DB-ID-12345"
      }
    }
  ]
}
```

**SDK Code**

```python BankAccount
import requests

url = "https://api.mercoa.com/paymentMethods"

querystring = {"type":"bankAccount"}

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```typescript BankAccount
import { MercoaClient } from "@mercoa/javascript";

const client = new MercoaClient({ token: "YOUR_TOKEN" });
await client.paymentMethods.find({
    type: "bankAccount"
});

```

```go BankAccount
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.mercoa.com/paymentMethods?type=bankAccount"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby BankAccount
require 'uri'
require 'net/http'

url = URI("https://api.mercoa.com/paymentMethods?type=bankAccount")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java BankAccount
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.mercoa.com/paymentMethods?type=bankAccount")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php BankAccount
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.mercoa.com/paymentMethods?type=bankAccount', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp BankAccount
using RestSharp;

var client = new RestClient("https://api.mercoa.com/paymentMethods?type=bankAccount");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift BankAccount
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.mercoa.com/paymentMethods?type=bankAccount")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

### Entity

**Response**

```json
{
  "count": 1,
  "hasMore": false,
  "data": [
    {
      "paymentMethod": {
        "type": "bankAccount",
        "accountName": "My Checking Account",
        "accountNumber": "99988767623",
        "accountType": "CHECKING",
        "bankName": "Chase",
        "createdAt": "2021-01-01T00:00:00Z",
        "frozen": false,
        "id": "pm_4794d597-70dc-4fec-b6ec-c5988e759769",
        "isDefaultDestination": true,
        "isDefaultSource": true,
        "metadata": {},
        "routingNumber": "12345678",
        "status": "VERIFIED",
        "supportedCurrencies": [
          "USD"
        ],
        "updatedAt": "2021-01-01T00:00:00Z",
        "confirmedByEntity": true
      },
      "entity": {
        "id": "ent_8545a84e-a45f-41bf-bdf1-33b42a55812c",
        "name": "Acme Inc.",
        "email": "customer@acme.com",
        "isCustomer": true,
        "accountType": "business",
        "profile": {
          "business": {
            "legalBusinessName": "Acme Inc.",
            "taxIDProvided": true,
            "email": "customer@acme.com",
            "businessType": "llc",
            "phone": {
              "countryCode": "1",
              "number": "4155551234"
            },
            "address": {
              "addressLine1": "123 Main St",
              "city": "San Francisco",
              "stateOrProvince": "CA",
              "postalCode": "94105",
              "addressLine2": "Unit 1",
              "country": "US"
            },
            "ownersProvided": true,
            "taxId": {
              "ein": {
                "number": "12-3456789"
              }
            }
          }
        },
        "status": "verified",
        "acceptedTos": true,
        "isPayor": true,
        "isPayee": false,
        "isNetworkPayor": false,
        "isNetworkPayee": false,
        "createdAt": "2024-01-01T00:00:00Z",
        "updatedAt": "2024-01-02T00:00:00Z",
        "foreignId": "MY-DB-ID-12345"
      }
    }
  ]
}
```

**SDK Code**

```python Entity
import requests

url = "https://api.mercoa.com/paymentMethods"

querystring = {"entityId":"ent_8545a84e-a45f-41bf-bdf1-33b42a55812c"}

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```typescript Entity
import { MercoaClient } from "@mercoa/javascript";

const client = new MercoaClient({ token: "YOUR_TOKEN" });
await client.paymentMethods.find({
    entityId: "ent_8545a84e-a45f-41bf-bdf1-33b42a55812c"
});

```

```go Entity
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Entity
require 'uri'
require 'net/http'

url = URI("https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java Entity
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php Entity
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp Entity
using RestSharp;

var client = new RestClient("https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift Entity
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.mercoa.com/paymentMethods?entityId=ent_8545a84e-a45f-41bf-bdf1-33b42a55812c")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```