action increase_create_an_ach_transfer { label: "Create an ACH Transfer" provider: increase method: POST path: "/ach_transfers" encoding: json input: { type: "object" required: ["account_id", "amount", "statement_descriptor"] properties: { account_id: { type: "string" description: "The Increase identifier for the account that will send the transfer." } account_number: { type: "string" description: "The account number for the destination account." } addendum: { type: "string" description: "Additional information that will be sent to the recipient. This is included in the transfer data sent to the receiving bank." } amount: { type: "integer" description: "The transfer amount in cents. A positive amount originates a credit transfer pushing funds to the receiving account. A negative amount originates a debit transfer pulling funds from the receiving account." } company_descriptive_date: { type: "string" description: "The description of the date of the transfer, usually in the format `YYYYMMDD`. This is included in the transfer data sent to the receiving bank." } company_discretionary_data: { type: "string" description: "The data you choose to associate with the transfer. This is included in the transfer data sent to the receiving bank." } company_entry_description: { type: "string" description: "A description of the transfer. This is included in the transfer data sent to the receiving bank." } company_name: { type: "string" description: "The name by which the recipient knows you. This is included in the transfer data sent to the receiving bank." } effective_date: { type: "string" format: "date" description: "The transfer effective date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format." } external_account_id: { type: "string" description: "The ID of an External Account to initiate a transfer to. If this parameter is provided, `account_number`, `routing_number`, and `funding` must be absent." } funding: { type: "string" description: "The type of the account to which the transfer will be sent." enum: ["checking", "savings"] } individual_id: { type: "string" description: "Your identifer for the transfer recipient." } individual_name: { type: "string" description: "The name of the transfer recipient. This value is informational and not verified by the recipient's bank." } require_approval: { type: "boolean" description: "Whether the transfer requires explicit approval via the dashboard or API." } routing_number: { type: "string" description: "The American Bankers' Association (ABA) Routing Transit Number (RTN) for the destination account." } standard_entry_class_code: { type: "string" description: "The Standard Entry Class (SEC) code to use for the transfer." enum: ["corporate_credit_or_debit", "prearranged_payments_and_deposit", "internet_initiated"] } statement_descriptor: { type: "string" description: "A description you choose to give the transfer. This will be saved with the transfer details, displayed in the dashboard, and returned by the API. If `individual_name` and `company_name` are not explicitly set by this API, the `statement_descriptor` will be sent in those fields to the receiving bank to help the customer recognize the transfer. You are highly encouraged to pass `individual_name` and `company_name` instead of relying on this fallback." } } } output: { type: "object" description: "ACH transfers move funds between your Increase account and any other account accessible by the Automated Clearing House (ACH)." required: ["account_id", "account_number", "addendum", "amount", "approval", "cancellation", "company_descriptive_date", "company_discretionary_data", "company_entry_description", "company_name", "created_at", "currency", "external_account_id", "funding", "id", "individual_id", "individual_name", "network", "notification_of_change", "return", "routing_number", "standard_entry_class_code", "statement_descriptor", "status", "submission", "template_id", "transaction_id", "type"] properties: { account_id: { type: "string" description: "The Account to which the transfer belongs." } account_number: { type: "string" description: "The destination account number." } addendum: { type: "string" description: "Additional information that will be sent to the recipient." } amount: { type: "integer" 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." } approval: { type: "object" description: "If your account requires approvals for transfers and the transfer was approved, this will contain details of the approval." required: ["approved_at"] properties: { approved_at: { type: "string" format: "date-time" description: "The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was approved." } } } cancellation: { type: "object" description: "If your account requires approvals for transfers and the transfer was not approved, this will contain details of the cancellation." required: ["canceled_at"] properties: { canceled_at: { type: "string" format: "date-time" description: "The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the Transfer was canceled." } } } company_descriptive_date: { type: "string" description: "The description of the date of the transfer." } company_discretionary_data: { type: "string" description: "The data you chose to associate with the transfer." } company_entry_description: { type: "string" description: "The description of the transfer you set to be shown to the recipient." } company_name: { type: "string" description: "The name by which the recipient knows you." } created_at: { type: "string" format: "date-time" description: "The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was created." } currency: { type: "string" description: "The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the transfer's currency. For ACH transfers this is always equal to `usd`." enum: ["CAD", "CHF", "EUR", "GBP", "JPY", "USD"] } external_account_id: { type: "string" description: "The identifier of the External Account the transfer was made to, if any." } funding: { type: "string" description: "The type of the account to which the transfer will be sent." enum: ["checking", "savings"] } id: { type: "string" description: "The ACH transfer's identifier." } individual_id: { type: "string" description: "Your identifer for the transfer recipient." } individual_name: { type: "string" description: "The name of the transfer recipient. This value is information and not verified by the recipient's bank." } network: { type: "string" description: "The transfer's network." enum: ["ach"] } notification_of_change: { type: "object" description: "If the receiving bank accepts the transfer but notifies that future transfers should use different details, this will contain those details." required: ["change_code", "corrected_data", "created_at"] properties: { change_code: { type: "string" description: "The type of change that occurred." } corrected_data: { type: "string" description: "The corrected data." } created_at: { type: "string" format: "date-time" description: "The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the notification occurred." } } } return: { type: "object" description: "If your transfer is returned, this will contain details of the return." required: ["created_at", "return_reason_code", "transaction_id", "transfer_id"] properties: { created_at: { type: "string" format: "date-time" description: "The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was created." } return_reason_code: { type: "string" description: "Why the ACH Transfer was returned." enum: ["insufficient_fund", "no_account", "account_closed", "invalid_account_number_structure", "account_frozen_entry_returned_per_ofac_instruction", "credit_entry_refused_by_receiver", "unauthorized_debit_to_consumer_account_using_corporate_sec_code", "corporate_customer_advised_not_authorized", "payment_stopped", "non_transaction_account", "uncollected_funds", "routing_number_check_digit_error", "customer_advised_unauthorized_improper_ineligible_or_incomplete", "amount_field_error", "authorization_revoked_by_customer", "invalid_ach_routing_number", "file_record_edit_criteria", "enr_invalid_individual_name", "returned_per_odfi_request", "addenda_error", "limited_participation_dfi", "incorrectly_coded_outbound_international_payment", "other"] } transaction_id: { type: "string" description: "The identifier of the Tranasaction associated with this return." } transfer_id: { type: "string" description: "The identifier of the ACH Transfer associated with this return." } } } routing_number: { type: "string" description: "The American Bankers' Association (ABA) Routing Transit Number (RTN)." } standard_entry_class_code: { type: "string" description: "The Standard Entry Class (SEC) code to use for the transfer." enum: ["corporate_credit_or_debit", "prearranged_payments_and_deposit", "internet_initiated"] } statement_descriptor: { type: "string" description: "The descriptor that will show on the recipient's bank statement." } status: { type: "string" description: "The lifecycle status of the transfer." enum: ["pending_approval", "canceled", "pending_submission", "submitted", "returned", "requires_attention", "rejected"] } submission: { type: "object" description: "After the transfer is submitted to FedACH, this will contain supplemental details." required: ["submitted_at", "trace_number"] properties: { submitted_at: { type: "string" format: "date-time" description: "When the ACH transfer was sent to FedACH." } trace_number: { type: "string" description: "The trace number for the submission." } } } template_id: { type: "string" description: "If the transfer was created from a template, this will be the template's ID." } transaction_id: { type: "string" description: "The ID for the transaction funding the transfer." } type: { type: "string" description: "A constant representing the object's type. For this resource it will always be `ach_transfer`." enum: ["ach_transfer"] } } } }