Increase Ach Transfers API

The Ach Transfers API from Increase — 4 operation(s) for ach transfers.

OpenAPI Specification

increase-ach-transfers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  description: Anything that you can achieve with PDFs, presence, and persistence in a bank branch you can do with our API. We've always wanted a fully programmatic bank so we built one. Our API faithfully exposes the data and capabilities of the Federal Reserve, Visa, The Clearing House, depository networks, and accounting tools. It's lovingly boring and exceptionally powerful. If you have any questions or want to get started, don't hesitate to ping us at sales@increase.com. We can't wait to see what you build!
  title: Increase Account Numbers Ach Transfers API
  version: 0.0.1
servers:
- url: https://api.increase.com
- url: https://sandbox.increase.com
security:
- bearerAuth: []
tags:
- name: Ach Transfers
paths:
  /ach_transfers:
    get:
      operationId: list_ach_transfers
      parameters:
      - in: query
        name: cursor
        required: false
        schema:
          description: Return the page of entries after this one.
          type: string
          x-documentation-priority: low
      - in: query
        name: limit
        required: false
        schema:
          description: Limit the size of the list that is returned. The default (and maximum) is 100 objects.
          minimum: 1
          type: integer
          x-documentation-priority: low
      - example: account_in71c4amph0vgo2qllky
        in: query
        name: account_id
        required: false
        schema:
          description: Filter ACH Transfers to those that originated from the specified Account.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Accounts
      - in: query
        name: external_account_id
        required: false
        schema:
          description: Filter ACH Transfers to those made to the specified External Account.
          type: string
          x-documentation-priority: default
          x-id-reference-to: External Accounts
      - in: query
        name: idempotency_key
        required: false
        schema:
          description: Filter records to the one with the specified `idempotency_key` you chose for that object. This value is unique across Increase and is used to ensure that a request is only processed once. Learn more about [idempotency](https://increase.com/documentation/idempotency-keys).
          maxLength: 200
          minLength: 1
          type: string
          x-documentation-priority: default
      - in: query
        name: status.in
        required: false
        schema:
          description: Return results whose value is in the provided list. For GET requests, this should be encoded as a comma-delimited string, such as `?in=one,two,three`.
          items:
            enum:
            - pending_approval
            - pending_transfer_session_confirmation
            - canceled
            - pending_submission
            - pending_reviewing
            - requires_attention
            - rejected
            - submitted
            - returned
            type: string
            x-enum-descriptions:
            - The transfer is pending approval.
            - The transfer belongs to a Transfer Session that is pending confirmation.
            - The transfer has been canceled.
            - The transfer is pending submission to the Federal Reserve.
            - The transfer is pending review by Increase.
            - The transfer requires attention from an Increase operator.
            - The transfer has been rejected.
            - The transfer is complete.
            - The transfer has been returned.
          type: array
          x-documentation-priority: default
        explode: false
      - in: query
        name: created_at.after
        required: false
        schema:
          description: Return results after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
          format: date-time
          type: string
          x-documentation-priority: low
      - in: query
        name: created_at.before
        required: false
        schema:
          description: Return results before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
          format: date-time
          type: string
          x-documentation-priority: low
      - in: query
        name: created_at.on_or_after
        required: false
        schema:
          description: Return results on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
          format: date-time
          type: string
          x-documentation-priority: low
      - in: query
        name: created_at.on_or_before
        required: false
        schema:
          description: Return results on or before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.
          format: date-time
          type: string
          x-documentation-priority: low
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ach_transfer_list'
          description: ACH Transfer List
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: List ACH Transfers
      x-sandbox-only: false
      x-tag: ACH Transfers
      tags:
      - Ach Transfers
    post:
      operationId: create_an_ach_transfer
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/create_an_ach_transfer_parameters'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ach_transfer'
          description: ACH Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Create an ACH Transfer
      x-sandbox-only: false
      x-tag: ACH Transfers
      tags:
      - Ach Transfers
  /ach_transfers/{ach_transfer_id}:
    get:
      operationId: retrieve_an_ach_transfer
      parameters:
      - example: ach_transfer_uoxatyh3lt5evrsdvo7q
        in: path
        name: ach_transfer_id
        required: true
        schema:
          description: The identifier of the ACH Transfer.
          type: string
          x-documentation-priority: default
          x-id-reference-to: ACH Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ach_transfer'
          description: ACH Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Retrieve an ACH Transfer
      x-sandbox-only: false
      x-tag: ACH Transfers
      tags:
      - Ach Transfers
  /ach_transfers/{ach_transfer_id}/approve:
    post:
      description: Approves an ACH Transfer in a pending_approval state.
      operationId: approve_an_ach_transfer
      parameters:
      - example: ach_transfer_uoxatyh3lt5evrsdvo7q
        in: path
        name: ach_transfer_id
        required: true
        schema:
          description: The identifier of the ACH Transfer to approve.
          type: string
          x-documentation-priority: default
          x-id-reference-to: ACH Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ach_transfer'
          description: ACH Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Approve an ACH Transfer
      x-sandbox-only: false
      x-tag: ACH Transfers
      tags:
      - Ach Transfers
  /ach_transfers/{ach_transfer_id}/cancel:
    post:
      description: Cancels an ACH Transfer in a pending_approval state.
      operationId: cancel_a_pending_ach_transfer
      parameters:
      - example: ach_transfer_uoxatyh3lt5evrsdvo7q
        in: path
        name: ach_transfer_id
        required: true
        schema:
          description: The identifier of the pending ACH Transfer to cancel.
          type: string
          x-documentation-priority: default
          x-id-reference-to: ACH Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ach_transfer'
          description: ACH Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Cancel a pending ACH Transfer
      x-sandbox-only: false
      x-tag: ACH Transfers
      tags:
      - Ach Transfers
components:
  schemas:
    error:
      anyOf:
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 404
            type: integer
          title:
            type: string
          type:
            enum:
            - api_method_not_found_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 403
            type: integer
          title:
            type: string
          type:
            enum:
            - environment_mismatch_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          resource_id:
            description: ''
            type: string
            x-documentation-priority: default
          status:
            enum:
            - 409
            type: integer
          title:
            type: string
          type:
            enum:
            - idempotency_key_already_used_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        - resource_id
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 403
            type: integer
          title:
            type: string
          type:
            enum:
            - insufficient_permissions_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 500
            type: integer
          title:
            type: string
          type:
            enum:
            - internal_server_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          reason:
            description: ''
            enum:
            - deleted_credential
            - expired_credential
            - ip_not_allowed
            - no_credential
            - no_header
            - no_api_access
            - wrong_environment
            type: string
            x-documentation-priority: default
            x-enum-descriptions:
            - deleted_credential
            - expired_credential
            - ip_not_allowed
            - no_credential
            - no_header
            - no_api_access
            - wrong_environment
          status:
            enum:
            - 401
            type: integer
          title:
            type: string
          type:
            enum:
            - invalid_api_key_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        - reason
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 409
            type: integer
          title:
            type: string
          type:
            enum:
            - invalid_operation_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          errors:
            description: All errors related to parsing the request parameters.
            items:
              additionalProperties: true
              properties: {}
              title: ErrorsElement
              type: object
              x-event-categories: []
              x-stainless-empty-object: false
              x-title-plural: ErrorsElements
            type: array
            x-documentation-priority: default
          status:
            enum:
            - 400
            type: integer
          title:
            type: string
          type:
            enum:
            - invalid_parameters_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        - errors
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 400
            type: integer
          title:
            type: string
          type:
            enum:
            - malformed_request_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 404
            type: integer
          title:
            type: string
          type:
            enum:
            - object_not_found_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          status:
            enum:
            - 403
            type: integer
          title:
            type: string
          type:
            enum:
            - private_feature_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
      - properties:
          detail:
            anyOf:
            - type: string
            - type: 'null'
          retry_after:
            anyOf:
            - description: ''
              type: integer
              x-documentation-priority: default
            - type: 'null'
          status:
            enum:
            - 429
            type: integer
          title:
            type: string
          type:
            enum:
            - rate_limited_error
            type: string
        required:
        - type
        - title
        - detail
        - status
        type: object
        x-event-categories: []
    inbound_funds_hold:
      additionalProperties: true
      description: We hold funds for certain transaction types to account for return windows where funds might still be clawed back by the sending institution.
      example:
        amount: 100
        automatically_releases_at: '2020-01-31T23:59:59Z'
        created_at: '2020-01-31T23:59:59Z'
        currency: USD
        held_transaction_id: transaction_uyrp7fld2ium70oa7oi
        pending_transaction_id: pending_transaction_k1sfetcau2qbvjbzgju4
        released_at: null
        status: held
        type: inbound_funds_hold
      properties:
        amount:
          description: The held amount in the minor unit of the account's currency. For dollars, for example, this is cents.
          type: integer
          x-documentation-priority: default
        automatically_releases_at:
          description: When the hold will be released automatically. Certain conditions may cause it to be released before this time.
          format: date-time
          type: string
          x-documentation-priority: default
        created_at:
          description: The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) time at which the hold was created.
          format: date-time
          type: string
          x-documentation-priority: default
        currency:
          description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the hold's currency.
          enum:
          - USD
          type: string
          x-documentation-priority: default
          x-enum-descriptions:
          - US Dollar (USD)
        held_transaction_id:
          anyOf:
          - description: The ID of the Transaction for which funds were held.
            type: string
            x-documentation-priority: default
            x-id-reference-to: Transactions
          - type: 'null'
        pending_transaction_id:
          anyOf:
          - description: The ID of the Pending Transaction representing the held funds.
            type: string
            x-documentation-priority: default
            x-id-reference-to: Pending Transactions
          - type: 'null'
        released_at:
          anyOf:
          - description: When the hold was released (if it has been released).
            format: date-time
            type: string
            x-documentation-priority: default
          - type: 'null'
        status:
          description: The status of the hold.
          enum:
          - held
          - complete
          type: string
          x-documentation-priority: default
          x-enum-descriptions:
          - Funds are still being held.
          - Funds have been released.
        type:
          description: A constant representing the object's type. For this resource it will always be `inbound_funds_hold`.
          enum:
          - inbound_funds_hold
          type: string
          x-documentation-priority: default
      required:
      - type
      - amount
      - created_at
      - currency
      - automatically_releases_at
      - released_at
      - status
      - held_transaction_id
      - pending_transaction_id
      title: Inbound Funds Hold
      type: object
      x-event-categories: []
      x-stainless-empty-object: false
      x-title-plural: Inbound Funds Holds
    ach_transfer:
      additionalProperties: true
      description: ACH transfers move funds between your Increase account and any other account accessible by the Automated Clearing House (ACH).
      example:
        account_id: account_in71c4amph0vgo2qllky
        account_number: '987654321'
        acknowledgement:
          acknowledged_at: '2020-01-31T23:59:59Z'
        addenda: null
        amount: 100
        approval:
          approved_at: '2020-01-31T23:59:59Z'
          approved_by: null
        cancellation: null
        company_descriptive_date: null
        company_discretionary_data: null
        company_entry_description: null
        company_id: '1234987601'
        company_name: National Phonograph Company
        created_at: '2020-01-31T23:59:59Z'
        created_by:
          category: user
          user:
            email: user@example.com
        currency: USD
        destination_account_holder: business
        external_account_id: external_account_ukk55lr923a3ac0pp7iv
        funding: checking
        id: ach_transfer_uoxatyh3lt5evrsdvo7q
        idempotency_key: null
        inbound_funds_hold: null
        individual_id: null
        individual_name: Ian Crease
        network: ach
        notifications_of_change: []
        pending_transaction_id: null
        preferred_effective_date:
          date: null
          settlement_schedule: same_day
        return: null
        routing_number: '101050001'
        settlement: null
        standard_entry_class_code: corporate_credit_or_debit
        statement_descriptor: Statement descriptor
        status: returned
        submission:
          administrative_returns_expected_by: '2020-02-05T11:00:00Z'
          effective_date: '2020-01-31'
          expected_funds_settlement_at: '2020-02-03T13:30:00Z'
          expected_settlement_schedule: future_dated
          submitted_at: '2020-01-31T23:59:59Z'
          trace_number: 058349238292834
        transaction_id: transaction_uyrp7fld2ium70oa7oi
        type: ach_transfer
      properties:
        account_id:
          description: The Account to which the transfer belongs.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Accounts
        account_number:
          description: The destination account number.
          type: string
          x-documentation-priority: default
        acknowledgement:
          anyOf:
          - additionalProperties: false
            description: After the transfer is acknowledged by FedACH, this will contain supplemental details. The Federal Reserve sends an acknowledgement message for each file that Increase submits.
            example:
              acknowledged_at: '2020-01-31T23:59:59Z'
            properties:
              acknowledged_at:
                description: When the Federal Reserve acknowledged the submitted file containing this transfer.
                type: string
                x-documentation-priority: default
            required:
            - acknowledged_at
            title: ACH Transfer ACH Transfer Acknowledgement
            type: object
            x-documentation-priority: default
            x-event-categories: []
            x-stainless-empty-object: false
            x-title-plural: ACH Transfer Acknowledgements
          - type: 'null'
        addenda:
          anyOf:
          - additionalProperties: false
            description: Additional information that will be sent to the recipient.
            example:
              category: freeform
              freeform:
                entries:
                - payment_related_information: addendum
            properties:
              category:
                description: The type of the resource. We may add additional possible values for this enum over time; your application should be able to handle such additions gracefully.
                enum:
                - freeform
                - payment_order_remittance_advice
                - other
                type: string
                x-documentation-priority: default
                x-enum-descriptions:
                - Unstructured `payment_related_information` passed through with the transfer.
                - Structured ASC X12 820 remittance advice records. Please reach out to [support@increase.com](mailto:support@increase.com) for more information.
                - Unknown addenda type.
              freeform:
                anyOf:
                - additionalProperties: false
                  description: Unstructured `payment_related_information` passed through with the transfer.
                  properties:
                    entries:
                      description: Each entry represents an addendum sent with the transfer.
                      items:
                        additionalProperties: false
                        properties:
                          payment_related_information:
                            description: The payment related information passed in the addendum.
                            type: string
                            x-documentation-priority: default
                        required:
                        - payment_related_information
                        title: ACH Transfer ACH Transfer Addenda Freeform EntriesElement
                        type: object
                        x-event-categories: []
                        x-stainless-empty-object: false
                        x-title-plural: EntriesElements
                      type: array
                      x-documentation-priority: default
                  required:
                  - entries
                  title: ACH Transfer ACH Transfer Addenda Freeform
                  type: object
                  x-documentation-priority: default
                  x-event-categories: []
                  x-stainless-empty-object: false
                  x-title-plural: Freeforms
                - type: 'null'
              payment_order_remittance_advice:
                anyOf:
                - additionalProperties: false
                  description: Structured ASC X12 820 remittance advice records. Please reach out to [support@increase.com](mailto:support@increase.com) for more information.
                  properties:
                    invoices:
                      description: ASC X12 RMR records for this specific transfer.
                      items:
                        additionalProperties: false
                        properties:
                          invoice_number:
                            description: The invoice number for this reference, determined in advance with the receiver.
                            type: string
                            x-documentation-priority: default
                          paid_amount:
                            description: The amount that was paid for this invoice in the minor unit of its currency. For dollars, for example, this is cents.
                            type: integer
                            x-documentation-priority: default
                        required:
                        - invoice_number
                        - paid_amount
                        title: ACH Transfer ACH Transfer Addenda PaymentOrderRemittanceAdvice InvoicesElement
                        type: object
                        x-event-categories: []
                        x-stainless-empty-object: false
                        x-title-plural: InvoicesElements
                      type: array
                      x-documentation-priority: default
                  required:
                  - invoices
                  title: ACH Transfer ACH Transfer Addenda PaymentOrderRemittanceAdvice
                  type: object
                  x-documentation-priority: default
                  x-event-categories: []
                  x-stainless-empty-object: false
                  x-title-plural: PaymentOrderRemittanceAdvices
                - type: 'null'
            required:
            - category
            title: ACH Transfer ACH Transfer Addenda
            type: object
            x-documentation-priority: default
            x-event-categories: []
            x-stainless-empty-object: false
            x-title-plural: ACH Transfer Addendas
          - type: 'null'
        amount:
          description: The transfer amount in USD cents. A positive amount indicates a credit transfer pushing funds to the receiving account. A negative amount indicates a debit transfer pulling funds from the receiving account.
          type: integer
          x-documentation-priority: default
        approval:
          anyOf:
          - additionalProperties: false
            description: If your account requires approvals for transfers and the transfer was approved, this will contain details of the approval.
            example:
              approved_at: '2020-01-31T23:59:59Z'
              approved_by: null
            properties:
              approved_at:
                description: The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was approved.
                format: date-time
                type: string
                x-documentation-priority: default
              approved_by:
                anyOf:
                - description: If the Transfer was approved by a user in the dashboard, the email address of that user.
                  type: string
                  x-documentation-priority: default
                - type: 'null'
            required:
            - approved_at
            - approved_by
            title: ACH Transfer Transfer Approval
            type: object
            x-documentation-priority: default
            x-event-categories: []
            x-stainless-empty-object: false
            x-title-plural: Transfer Approvals
          - type: 'null'
        cancellation:
          anyOf:
          - additionalProperties: false
            description: If your account requires approvals for transfers and the transfer was not approved, this will contain details of the cancellation.
            example:
              canceled_at: '2020-01-31T23:59:59Z'
              canceled_by: null
            properties:
              canceled_at:
                description: The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the Transfer was canceled.
                format: date-time
                type: string
                x-documentation-priority: default
              canceled_by:
                anyOf:
                - description: If the Transfer was canceled by a user in the dashboard, the email address of that user.
                  type: string
                  x-documentation-priority: default
                - type: 'null'
            required:
            - canceled_at
            - canceled_by
            title: ACH Transfer Transfer Cancellation
            type: object
            x-documentation-priority: default
            x-event-categories: []
            x-stainless-empty-object: false
            x-title-plural: Transfer Cancellations
          - type: 'null'
        company_descriptive_date:
          anyOf:
          - description: The description of the date of the transfer.
            type: string
            x-documentation-priority: default
          - type: 'null'
        company_discretionary_data:
          anyOf:
          - description: The data you chose to associate with the transfer.
            type: string
            x-documentation-priority: default
          - type: 'null'
        company_entry_description:
          anyOf:
          - description: The description of the transfer you set to be shown to the recipient.
            type: string
            x-documentation-priority: default
          - type: 'null'
        company_id:
          description: The company ID associated with the transfer.
          type: string
          x-documentation-priority: default
        company_name:
          anyOf:
          - description: The name by which the recipient knows you.
            type: string
            x-documentation-priority: default
          - type: 'null'
        created_at:
          description: The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was created.
          format: date-time
          type: string
          x-documentation-priority: default
        created_by:
          anyOf:
          - additionalProperties: false
            description: What object created the transfer, either via the API or the dashboard.
            example:
              category: user
              user:
                email: user@example.com
            properties:
              api_key:
                anyOf:
                - additionalProperties: false
                  description: If present, details about the API key that created the transfer.
                  properties:
                    description:
                      anyOf:
                      - description: The description set for the API key when it was created.
                        type: string
                        x-documentation-priority: default
                      - type: 'null'
                  required:
                  - description
                  title: ACH Transfer Transfer Creator ApiKey
                  type: object
                  x-documentation-priority: default
                  x-event-categories: []
                  x-stainless-empty-object: 

# --- truncated at 32 KB (84 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/increase/refs/heads/main/openapi/increase-ach-transfers-api-openapi.yml