CFX Labs US Bank ACH API

US bank ACH pull deposits.

Operations 2

POST /v1/deposit/us-bank-ach Create US Bank ACH Deposit Request #
GET /v1/deposit/us-bank-ach/{id} Get US Bank ACH Deposit Request #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cfx-labs:cfx-labs-us-bank-ach-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

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

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

OpenAPI Specification

cfx-labs-us-bank-ach-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Deposit US Bank ACH API
  description: Facilitates the transfer (on-ramp) of funds into the CFX network.
  termsOfService: http://cfxlabs.com/terms/
  contact:
    name: API Owner
    url: api.cfxlabs.net
    email: api@cfxlabs.com
  license:
    name: Licence tbd
    url: http://tbd.html
  version: '@VERSION@'
  summary: CFX Deposit API
servers:
- url: https://api.dev.cfx.to
  description: Customer Sandbox
- url: https://api.cfx.to
  description: Production
security:
- ApiKeyAuth: []
  ApiSecretAuth: []
tags:
- name: US Bank ACH
  description: US bank ACH pull deposits.
paths:
  /v1/deposit/us-bank-ach:
    post:
      summary: Create US Bank ACH Deposit Request
      tags:
      - US Bank ACH
      description: 'Creates a request to mint MOVEUSD by debiting a US bank account via ACH.


        Source bank accounts need to be registered as Payment Instruments which are associated with an Identity or Organization. ACH Deposit Requests refer to this Payment Instrument in the `sourcePaymentInstrumentId` field. Registered deposit requests will result in an ACH pull from the nominated bank account. After the debit is processed and reconciled the funds will be minted to the wallet specified in the request.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
              - type: object
                required:
                - identityId
                - reference
                - wallet
                - sourcePaymentInstrumentId
                - amount
                properties:
                  identityId:
                    type: string
                    description: Identity ID associated with the deposit request
                    example: id_VfsdSMtd8UdgxCgTnz0tm
                  reference:
                    type: string
                    description: "A unique identifier of the deposit request in the caller's system.\n\n  This is useful to correlate the id in the caller's system with the id returned by the API."
                    example: DR-123456789
                  wallet:
                    type: object
                    required:
                    - address
                    - blockchain
                    properties:
                      address:
                        type: string
                        description: Blockchain address or account
                      blockchain:
                        type: string
                    description: The blockchain wallet where funds are to be deposited
                  sourcePaymentInstrumentId:
                    type: string
                    description: ID for a US_ACH payment instrument
                    example: pi_jk23h4j564rthk32
                  amount:
                    type: object
                    required:
                    - amount
                    - currency
                    properties:
                      amount:
                        type: number
                        description: Amount of the nominated currency
                      currency:
                        type: string
                        description: Amount of the nominated currency
                        enum:
                        - USD
                    description: Amount associated with this deposit
                  speed:
                    anyOf:
                    - type: string
                      enum:
                      - same-day
                    - type: string
                      enum:
                      - next-day
                    description: ACH settlement speed. Defaults to next-day if not specified. Same-day requires an eligible ledger account.
                    example: same-day
                title: Individual
              - type: object
                required:
                - organizationId
                - reference
                - wallet
                - sourcePaymentInstrumentId
                - amount
                properties:
                  organizationId:
                    type: string
                    description: Organization ID associated with the deposit request
                    example: org_RD2of9vs3XFodUSd8T5hW
                  reference:
                    type: string
                    description: "A unique identifier of the deposit request in the caller's system.\n\n  This is useful to correlate the id in the caller's system with the id returned by the API."
                    example: DR-123456789
                  wallet:
                    type: object
                    required:
                    - address
                    - blockchain
                    properties:
                      address:
                        type: string
                        description: Blockchain address or account
                      blockchain:
                        type: string
                    description: The blockchain wallet where funds are to be deposited
                  sourcePaymentInstrumentId:
                    type: string
                    description: ID for a US_ACH payment instrument
                    example: pi_jk23h4j564rthk32
                  amount:
                    type: object
                    required:
                    - amount
                    - currency
                    properties:
                      amount:
                        type: number
                        description: Amount of the nominated currency
                      currency:
                        type: string
                        description: Amount of the nominated currency
                        enum:
                        - USD
                    description: Amount associated with this deposit
                  speed:
                    anyOf:
                    - type: string
                      enum:
                      - same-day
                    - type: string
                      enum:
                      - next-day
                    description: ACH settlement speed. Defaults to next-day if not specified. Same-day requires an eligible ledger account.
                    example: same-day
                title: Organization
      parameters:
      - schema:
          type: string
        in: header
        name: Idempotency-Key
        required: false
      responses:
        '201':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                required:
                - id
                - createdAt
                - status
                properties:
                  id:
                    type: string
                    description: Unique identifier for a deposit request, can be either the request id or the deposit id
                    example: dprq_FiZcY1MGfgB4XjIWsKgtT
                  createdAt:
                    type: string
                    description: Datetime the deposit request was created
                    example: '2023-10-23T06:20:04.366+00:00'
                  status:
                    enum:
                    - CREATED
                    - PROCESSING
                    - SUCCEEDED
                    - FAILED
                    - CANCELLED
                    type: string
        '400':
          description: The service cannot understand the request
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - INVALID_REQUEST
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties: {}
                      additionalProperties: true
                title: INVALID_REQUEST
                description: The service cannot understand the request
        '401':
          description: The access to this resource has been denied
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - UNAUTHORIZED
                  message:
                    type: string
                title: UNAUTHORIZED
                description: The access to this resource has been denied
        '403':
          description: The credentials are valid but the caller is not permitted to transact
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - FORBIDDEN
                  message:
                    type: string
                title: FORBIDDEN
                description: The credentials are valid but the caller is not permitted to transact
        '404':
          description: The resource was not found
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - NOT_FOUND
                  message:
                    type: string
                title: NOT_FOUND
                description: The resource was not found
        '409':
          description: A duplicate request with this idempotency key is already in progress
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - IDEMPOTENCY_IN_PROGRESS
                  message:
                    type: string
                title: IDEMPOTENCY_IN_PROGRESS
                description: A duplicate request with this idempotency key is already in progress
        '422':
          description: Another request with this idempotency key was made using a different body
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - IDEMPOTENCY_KEY_REUSED
                  message:
                    type: string
                title: IDEMPOTENCY_KEY_REUSED
                description: Another request with this idempotency key was made using a different body
        default:
          description: Catch-all error response for any unexpected internal errors
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - INTERNAL
                  message:
                    type: string
                    enum:
                    - An unexpected internal error has occurred
                title: INTERNAL
                description: Catch-all error response for any unexpected internal errors
      operationId: postV1DepositUsBankAch
      x-operation-id-source: derived
  /v1/deposit/us-bank-ach/{id}:
    get:
      summary: Get US Bank ACH Deposit Request
      tags:
      - US Bank ACH
      description: Retrieve a previously submitted US Bank ACH deposit request.
      parameters:
      - schema:
          type: string
        example: dprq_FiZcY1MGfgB4XjIWsKgtT
        in: path
        name: id
        required: true
        description: Unique identifier for a deposit request, can be either the request id or the deposit id
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                - type: object
                  required:
                  - identityId
                  - id
                  - reference
                  - wallet
                  - updatedAt
                  - createdAt
                  - status
                  - sourcePaymentInstrumentId
                  - amount
                  - quote
                  properties:
                    identityId:
                      type: string
                      description: Identity ID associated with the deposit request
                      example: id_VfsdSMtd8UdgxCgTnz0tm
                    id:
                      type: string
                      description: Unique identifier for a deposit request, can be either the request id or the deposit id
                      example: dprq_FiZcY1MGfgB4XjIWsKgtT
                    reference:
                      type: string
                      description: "A unique identifier of the deposit request in the caller's system.\n\n  This is useful to correlate the id in the caller's system with the id returned by the API."
                      example: DR-123456789
                    wallet:
                      type: object
                      required:
                      - address
                      - blockchain
                      properties:
                        address:
                          type: string
                          description: Blockchain address or account
                        blockchain:
                          type: string
                      description: The blockchain wallet where funds are to be deposited
                    depositId:
                      type: string
                      description: Unique identifier of the associated Deposit
                    deviceIpAddress:
                      type: string
                      description: IP address of the device creating the deposit request
                      example: 123.123.123.123
                    deviceLocation:
                      type: object
                      required:
                      - source
                      - lat
                      - long
                      properties:
                        source:
                          type: string
                          description: The source data for the location capture
                          enum:
                          - ip
                          example: ip
                        lat:
                          type: number
                          description: Latitude of the device
                          example: 37.851
                        long:
                          type: number
                          description: Longitude of the device
                          example: -96.822
                      description: Location of the device submitting transacting with the CFX network
                    updatedAt:
                      type: string
                      description: Datetime the deposit request was last updated
                      example: '2023-10-23T06:20:04.366+00:00'
                    createdAt:
                      type: string
                      description: Datetime the deposit request was created
                      example: '2023-10-23T06:20:04.366+00:00'
                    status:
                      enum:
                      - CREATED
                      - PROCESSING
                      - SUCCEEDED
                      - FAILED
                      - CANCELLED
                      type: string
                    sourcePaymentInstrumentId:
                      type: string
                      description: ID for a US_ACH payment instrument
                      example: pi_jk23h4j564rthk32
                    amount:
                      type: object
                      required:
                      - amount
                      - currency
                      properties:
                        amount:
                          type: number
                          description: Amount of the nominated currency
                        currency:
                          type: string
                          description: Amount of the nominated currency
                          enum:
                          - USD
                      description: Amount associated with this deposit
                    speed:
                      anyOf:
                      - type: string
                        enum:
                        - same-day
                      - type: string
                        enum:
                        - next-day
                      description: ACH settlement speed. Defaults to next-day if not specified. Same-day requires an eligible ledger account.
                      example: same-day
                    quote:
                      type: object
                      required:
                      - amountOut
                      - fees
                      - amountIn
                      properties:
                        amountOut:
                          type: object
                          required:
                          - amount
                          - currency
                          properties:
                            amount:
                              type: number
                              description: Amount of the nominated currency
                            currency:
                              enum:
                              - USDC
                              - MOVEUSD
                              type: string
                              description: Amount of the nominated currency
                          description: Amount associated with this deposit
                        fees:
                          type: array
                          items:
                            type: object
                            required:
                            - fee
                            - type
                            properties:
                              fee:
                                type: object
                                required:
                                - amount
                                - currency
                                properties:
                                  amount:
                                    type: number
                                    description: Amount of the nominated currency
                                  currency:
                                    enum:
                                    - USDC
                                    - MOVEUSD
                                    type: string
                                    description: Amount of the nominated currency
                                description: Amount associated with this deposit
                              type:
                                enum:
                                - CFX_FIXED_FEE
                                - CFX_VARIABLE_FEE
                                - PROVIDER_FIXED_FEE
                                - PROVIDER_VARIABLE_FEE
                                - CUSTOMER_FIXED_FEE
                                - CUSTOMER_VARIABLE_FEE
                                type: string
                          description: Fees associated with a deposit
                        amountIn:
                          type: object
                          required:
                          - amount
                          - currency
                          properties:
                            amount:
                              type: number
                              description: Amount of the nominated currency
                            currency:
                              type: string
                              description: Amount of the nominated currency
                              enum:
                              - USD
                          description: Amount associated with this deposit
                      description: Quote for the deposit
                  title: Individual
                - type: object
                  required:
                  - organizationId
                  - id
                  - reference
                  - wallet
                  - updatedAt
                  - createdAt
                  - status
                  - sourcePaymentInstrumentId
                  - amount
                  - quote
                  properties:
                    organizationId:
                      type: string
                      description: Organization ID associated with the deposit request
                      example: org_RD2of9vs3XFodUSd8T5hW
                    id:
                      type: string
                      description: Unique identifier for a deposit request, can be either the request id or the deposit id
                      example: dprq_FiZcY1MGfgB4XjIWsKgtT
                    reference:
                      type: string
                      description: "A unique identifier of the deposit request in the caller's system.\n\n  This is useful to correlate the id in the caller's system with the id returned by the API."
                      example: DR-123456789
                    wallet:
                      type: object
                      required:
                      - address
                      - blockchain
                      properties:
                        address:
                          type: string
                          description: Blockchain address or account
                        blockchain:
                          type: string
                      description: The blockchain wallet where funds are to be deposited
                    depositId:
                      type: string
                      description: Unique identifier of the associated Deposit
                    deviceIpAddress:
                      type: string
                      description: IP address of the device creating the deposit request
                      example: 123.123.123.123
                    deviceLocation:
                      type: object
                      required:
                      - source
                      - lat
                      - long
                      properties:
                        source:
                          type: string
                          description: The source data for the location capture
                          enum:
                          - ip
                          example: ip
                        lat:
                          type: number
                          description: Latitude of the device
                          example: 37.851
                        long:
                          type: number
                          description: Longitude of the device
                          example: -96.822
                      description: Location of the device submitting transacting with the CFX network
                    updatedAt:
                      type: string
                      description: Datetime the deposit request was last updated
                      example: '2023-10-23T06:20:04.366+00:00'
                    createdAt:
                      type: string
                      description: Datetime the deposit request was created
                      example: '2023-10-23T06:20:04.366+00:00'
                    status:
                      enum:
                      - CREATED
                      - PROCESSING
                      - SUCCEEDED
                      - FAILED
                      - CANCELLED
                      type: string
                    sourcePaymentInstrumentId:
                      type: string
                      description: ID for a US_ACH payment instrument
                      example: pi_jk23h4j564rthk32
                    amount:
                      type: object
                      required:
                      - amount
                      - currency
                      properties:
                        amount:
                          type: number
                          description: Amount of the nominated currency
                        currency:
                          type: string
                          description: Amount of the nominated currency
                          enum:
                          - USD
                      description: Amount associated with this deposit
                    speed:
                      anyOf:
                      - type: string
                        enum:
                        - same-day
                      - type: string
                        enum:
                        - next-day
                      description: ACH settlement speed. Defaults to next-day if not specified. Same-day requires an eligible ledger account.
                      example: same-day
                    quote:
                      type: object
                      required:
                      - amountOut
                      - fees
                      - amountIn
                      properties:
                        amountOut:
                          type: object
                          required:
                          - amount
                          - currency
                          properties:
                            amount:
                              type: number
                              description: Amount of the nominated currency
                            currency:
                              enum:
                              - USDC
                              - MOVEUSD
                              type: string
                              description: Amount of the nominated currency
                          description: Amount associated with this deposit
                        fees:
                          type: array
                          items:
                            type: object
                            required:
                            - fee
                            - type
                            properties:
                              fee:
                                type: object
                                required:
                                - amount
                                - currency
                                properties:
                                  amount:
                                    type: number
                                    description: Amount of the nominated currency
                                  currency:
                                    enum:
                                    - USDC
                                    - MOVEUSD
                                    type: string
                                    description: Amount of the nominated currency
                                description: Amount associated with this deposit
                              type:
                                enum:
                                - CFX_FIXED_FEE
                                - CFX_VARIABLE_FEE
                                - PROVIDER_FIXED_FEE
                                - PROVIDER_VARIABLE_FEE
                                - CUSTOMER_FIXED_FEE
                                - CUSTOMER_VARIABLE_FEE
                                type: string
                          description: Fees associated with a deposit
                        amountIn:
                          type: object
                          required:
                          - amount
                          - currency
                          properties:
                            amount:
                              type: number
                              description: Amount of the nominated currency
                            currency:
                              type: string
                              description: Amount of the nominated currency
                              enum:
                              - USD
                          description: Amount associated with this deposit
                      description: Quote for the deposit
                  title: Organization
        '400':
          description: The service cannot understand the request
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - INVALID_REQUEST
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties: {}
                      additionalProperties: true
                title: INVALID_REQUEST
                description: The service cannot understand the request
        '401':
          description: The access to this resource has been denied
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - UNAUTHORIZED
                  message:
                    type: string
                title: UNAUTHORIZED
                description: The access to this resource has been denied
        '403':
          description: The credentials are valid but the caller is not permitted to transact
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - FORBIDDEN
                  message:
                    type: string
                title: FORBIDDEN
                description: The credentials are valid but the caller is not permitted to transact
        '404':
          description: The resource was not found
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - NOT_FOUND
                  message:
                    type: string
                title: NOT_FOUND
                description: The resource was not found
        default:
          description: Catch-all error response for any unexpected internal errors
          content:
            application/json:
              schema:
                type: object
                required:
                - code
                - message
                properties:
                  code:
                    type: string
                    enum:
                    - INTERNAL
                  message:
                    type: string
                    enum:
                    - An unexpected internal error has occurred
                title: INTERNAL
                description: Catch-all error response for any unexpected internal errors
      operationId: getV1DepositUsBankAchById
      x-operation-id-source: derived
components:
  securitySchemes:
    ApiKeyAuth:
      name: x-api-key
      type: apiKey
      in: header
    ApiSecretAuth:
      name: x-api-secret
      type: apiKey
      in: header
externalDocs:
  description: Find out more about CFX
  url: https://www.cfxlabs.com/