Increase Check Transfers API

Check Transfers move funds from your Increase account by mailing a physical check.

OpenAPI Specification

increase-check-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 Check Transfers API
  version: 0.0.1
servers:
- url: https://api.increase.com
- url: https://sandbox.increase.com
security:
- bearerAuth: []
tags:
- description: Check Transfers move funds from your Increase account by mailing a physical check.
  name: Check Transfers
paths:
  /check_transfers:
    get:
      operationId: list_check_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 Check Transfers to those that originated from the specified Account.
          type: string
          x-documentation-priority: default
          x-id-reference-to: 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: Filter Check Transfers to those that have the specified status. For GET requests, this should be encoded as a comma-delimited string, such as `?in=one,two,three`.
          items:
            enum:
            - pending_approval
            - canceled
            - pending_submission
            - requires_attention
            - rejected
            - pending_mailing
            - mailed
            - deposited
            - stopped
            - returned
            type: string
            x-enum-descriptions:
            - The transfer is awaiting approval.
            - The transfer has been canceled.
            - The transfer is pending submission.
            - The transfer requires attention from an Increase operator.
            - The transfer has been rejected.
            - The check is queued for mailing.
            - The check has been mailed.
            - The check has been deposited.
            - A stop-payment was requested for this check.
            - 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/check_transfer_list'
          description: Check Transfer List
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: List Check Transfers
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
    post:
      operationId: create_a_check_transfer
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/create_a_check_transfer_parameters'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/check_transfer'
          description: Check Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Create a Check Transfer
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
  /check_transfers/{check_transfer_id}:
    get:
      operationId: retrieve_a_check_transfer
      parameters:
      - example: check_transfer_30b43acfu9vw8fyc4f5
        in: path
        name: check_transfer_id
        required: true
        schema:
          description: The identifier of the Check Transfer.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Check Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/check_transfer'
          description: Check Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Retrieve a Check Transfer
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
  /check_transfers/{check_transfer_id}/approve:
    post:
      operationId: approve_a_check_transfer
      parameters:
      - example: check_transfer_30b43acfu9vw8fyc4f5
        in: path
        name: check_transfer_id
        required: true
        schema:
          description: The identifier of the Check Transfer to approve.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Check Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/check_transfer'
          description: Check Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Approve a Check Transfer
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
  /check_transfers/{check_transfer_id}/cancel:
    post:
      description: Cancel a Check Transfer with the `pending_approval` status. See [Transfer Approvals](/documentation/transfer-approvals) for more information.
      operationId: cancel_a_pending_check_transfer
      parameters:
      - example: check_transfer_30b43acfu9vw8fyc4f5
        in: path
        name: check_transfer_id
        required: true
        schema:
          description: The identifier of the pending Check Transfer to cancel.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Check Transfers
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/check_transfer'
          description: Check Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Cancel a pending Check Transfer
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
  /check_transfers/{check_transfer_id}/stop_payment:
    post:
      operationId: stop_payment_on_a_check_transfer
      parameters:
      - example: check_transfer_30b43acfu9vw8fyc4f5
        in: path
        name: check_transfer_id
        required: true
        schema:
          description: The identifier of the Check Transfer.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Check Transfers
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/stop_payment_on_a_check_transfer_parameters'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/check_transfer'
          description: Check Transfer
        4XX:
          $ref: '#/components/responses/errorResponse'
        5XX:
          $ref: '#/components/responses/errorResponse'
      summary: Stop payment on a Check Transfer
      x-sandbox-only: false
      x-tag: Check Transfers
      tags:
      - Check Transfers
components:
  schemas:
    stop_payment_on_a_check_transfer_parameters:
      additionalProperties: false
      example:
        reason: mail_delivery_failed
      properties:
        reason:
          description: The reason why this transfer should be stopped.
          enum:
          - mail_delivery_failed
          - not_authorized
          - valid_until_date_passed
          - unknown
          type: string
          x-documentation-priority: default
          x-enum-descriptions:
          - The check could not be delivered.
          - The check was not authorized.
          - The check was stopped for `valid_until_date` being in the past.
          - The check was stopped for another reason.
      type: object
      x-event-categories: []
      x-stainless-empty-object: false
    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: []
    check_transfer_list:
      additionalProperties: true
      description: A list of Check Transfer objects.
      example:
        data:
        - account_id: account_in71c4amph0vgo2qllky
          account_number: '987654321'
          amount: 1000
          approval: null
          approved_inbound_check_deposit_id: inbound_check_deposit_zoshvqybq0cjjm31mra
          balance_check: null
          cancellation: null
          check_number: '123'
          created_at: '2020-01-31T23:59:59Z'
          created_by:
            category: user
            user:
              email: user@example.com
          currency: USD
          fulfillment_method: physical_check
          id: check_transfer_30b43acfu9vw8fyc4f5
          idempotency_key: null
          mailing:
            mailed_at: '2020-01-31T23:59:59Z'
          pending_transaction_id: pending_transaction_k1sfetcau2qbvjbzgju4
          physical_check:
            attachment_file_id: null
            check_voucher_image_file_id: null
            mailing_address:
              city: New York
              line1: 33 Liberty Street
              line2: null
              name: Ian Crease
              phone: '+16505046304'
              postal_code: '10045'
              state: NY
            memo: Invoice 29582
            note: null
            payer:
            - contents: Ian Crease
            - contents: 33 Liberty Street
            - contents: New York, NY 10045
            recipient_name: Ian Crease
            return_address:
              city: New York
              line1: 33 Liberty Street
              line2: null
              name: Ian Crease
              phone: '+16505046304'
              postal_code: '10045'
              state: NY
            shipping_method: null
            signature:
              image_file_id: null
              text: Ian Crease
            tracking_updates: []
          routing_number: '101050001'
          source_account_number_id: account_number_v18nkfqm6afpsrvy82b2
          status: mailed
          stop_payment_request: null
          submission:
            preview_file_id: null
            submitted_address:
              city: NEW YORK
              line1: 33 LIBERTY STREET
              line2: null
              recipient_name: IAN CREASE
              state: NY
              zip: '10045'
            submitted_at: '2020-01-31T23:59:59Z'
            tracking_number: null
          third_party: null
          type: check_transfer
          valid_until_date: null
        next_cursor: v57w5d
      properties:
        data:
          description: The contents of the list.
          items:
            $ref: '#/components/schemas/check_transfer'
          type: array
          x-documentation-priority: default
        next_cursor:
          anyOf:
          - description: A pointer to a place in the list. Pass this as the `cursor` parameter to retrieve the next page of results. If there are no more results, the value will be `null`.
            type: string
            x-documentation-priority: default
          - type: 'null'
      required:
      - data
      - next_cursor
      title: Check Transfer List
      type: object
      x-event-categories: []
      x-stainless-empty-object: false
      x-title-plural: Check Transfer Lists
    create_a_check_transfer_parameters:
      additionalProperties: true
      example:
        account_id: account_in71c4amph0vgo2qllky
        amount: 1000
        fulfillment_method: physical_check
        physical_check:
          mailing_address:
            city: New York
            line1: 33 Liberty Street
            name: Ian Crease
            phone: '+16505046304'
            postal_code: '10045'
            state: NY
          memo: Check payment
          recipient_name: Ian Crease
          return_address: null
          signature:
            text: Ian Crease
        source_account_number_id: account_number_v18nkfqm6afpsrvy82b2
        valid_until_date: '2025-12-31'
      properties:
        account_id:
          description: The identifier for the account that will send the transfer.
          type: string
          x-documentation-priority: default
          x-id-reference-to: Accounts
        amount:
          description: The transfer amount in USD cents.
          minimum: 1
          type: integer
          x-documentation-priority: default
        balance_check:
          description: 'How the account''s available balance should be checked. If omitted, the default behavior is `balance_check: full`.'
          enum:
          - full
          - none
          type: string
          x-documentation-priority: default
          x-enum-descriptions:
          - The available balance of the account must be at least the amount of the check, and a Pending Transaction will be created for the full amount. This is the default behavior if `balance_check` is omitted.
          - No balance check will performed when the check transfer is initiated. A zero-dollar Pending Transaction will be created. The balance will still be checked when the Inbound Check Deposit is created.
        check_number:
          description: The check number Increase should use for the check. This should not contain leading zeroes and must be unique across the `source_account_number`. If this is omitted, Increase will generate a check number for you.
          maxLength: 10
          minLength: 1
          pattern: ^[1-9]\d*$
          type: string
          x-documentation-priority: default
        fulfillment_method:
          description: Whether Increase will print and mail the check or if you will do it yourself.
          enum:
          - physical_check
          - third_party
          type: string
          x-documentation-priority: default
          x-enum-descriptions:
          - Increase will print and mail a physical check.
          - Increase will not print a check; you are responsible for printing and mailing a check with the provided account number, routing number, check number, and amount.
        physical_check:
          additionalProperties: true
          description: Details relating to the physical check that Increase will print and mail. This is required if `fulfillment_method` is equal to `physical_check`. It must not be included if any other `fulfillment_method` is provided.
          properties:
            attachment_file_id:
              description: 'The ID of a File to be attached to the check. This must have `purpose: check_attachment`. For details on pricing and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .'
              type: string
              x-documentation-priority: default
              x-id-reference-to: Files
            check_voucher_image_file_id:
              description: 'The ID of a File to be used as the check voucher image. This must have `purpose: check_voucher_image`. For details on pricing and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .'
              type: string
              x-documentation-priority: default
              x-id-reference-to: Files
            mailing_address:
              additionalProperties: false
              description: Details for where Increase will mail the check.
              properties:
                city:
                  description: The city component of the check's destination address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                line1:
                  description: The first line of the address component of the check's destination address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                line2:
                  description: The second line of the address component of the check's destination address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                name:
                  description: The name component of the check's destination address. Defaults to the provided `recipient_name` parameter if `name` is not provided.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                phone:
                  description: The phone number to associate with the check's destination address. The phone number is only used when `shipping_method` is `fedex_overnight` and will be supplied to FedEx to be used in case of delivery issues.
                  maxLength: 200
                  minLength: 1
                  type: string
                  x-documentation-priority: default
                postal_code:
                  description: The postal code component of the check's destination address.
                  maxLength: 10
                  minLength: 1
                  pattern: ^[0-9]{5}(?:-?[0-9]{4})?$
                  type: string
                  x-documentation-priority: default
                state:
                  description: The US state component of the check's destination address.
                  maxLength: 2
                  minLength: 2
                  type: string
                  x-documentation-priority: default
              required:
              - line1
              - city
              - state
              - postal_code
              type: object
              x-documentation-priority: default
              x-event-categories: []
              x-stainless-empty-object: false
            memo:
              description: The descriptor that will be printed on the memo field on the check.
              maxLength: 100
              minLength: 1
              pattern: ^[\u0000-\uFFFF]*$
              type: string
              x-documentation-priority: default
            note:
              description: The descriptor that will be printed on the letter included with the check.
              maxLength: 1200
              minLength: 1
              pattern: ^[\u0000-\uFFFF]*$
              type: string
              x-documentation-priority: default
            payer:
              description: The payer of the check. This will be printed on the top-left portion of the check and defaults to the return address if unspecified. This should be an array of up to 4 elements, each of which represents a line of the payer.
              items:
                additionalProperties: false
                properties:
                  contents:
                    description: The contents of the line.
                    maxLength: 35
                    minLength: 1
                    pattern: ^[\u0000-\uFFFF]*$
                    type: string
                    x-documentation-priority: default
                required:
                - contents
                type: object
                x-event-categories: []
                x-stainless-empty-object: false
              type: array
              x-documentation-priority: default
            recipient_name:
              description: The name that will be printed on the check in the 'To:' field.
              maxLength: 35
              minLength: 1
              pattern: ^[\u0000-\uFFFF]*$
              type: string
              x-documentation-priority: default
            return_address:
              additionalProperties: false
              description: The return address to be printed on the check. If omitted this will default to an Increase-owned address that will mark checks as delivery failed and shred them.
              properties:
                city:
                  description: The city of the return address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                line1:
                  description: The first line of the return address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                line2:
                  description: The second line of the return address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                name:
                  description: The name of the return address.
                  maxLength: 35
                  minLength: 1
                  pattern: ^[\u0000-\uFFFF]*$
                  type: string
                  x-documentation-priority: default
                phone:
                  description: The phone number to associate with the shipper. The phone number is only used when `shipping_method` is `fedex_overnight` and will be supplied to FedEx to be used in case of delivery issues.
                  maxLength: 200
                  minLength: 1
                  type: string
                  x-documentation-priority: default
                postal_code:
                  description: The postal code of the return address.
                  maxLength: 10
                  minLength: 1
                  pattern: ^[0-9]{5}(?:-?[0-9]{4})?$
                  type: string
                  x-documentation-priority: default
                state:
                  description: The US state of the return address.
                  maxLength: 200
                  minLength: 1
                  type: string
                  x-documentation-priority: default
              required:
              - name
              - line1
              - city
              - state
              - postal_code
              type: object
              x-documentation-priority: default
              x-event-categories: []
              x-stainless-empty-object: false
            shipping_method:
              description: How to ship the check. For details on pricing, timing, and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .
              enum:
              - usps_first_class
              - fedex_overnight
              type: string
              x-documentation-priority: default
              x-enum-descriptions:
              - USPS First Class
              - FedEx Overnight
            signature:
              additionalProperties: false
              description: The signature that will appear on the check. If not provided, the check will be printed with 'No Signature Required'. At most one of `text` and `image_file_id` may be provided.
              properties:
                image_file_id:
  

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