{"templateId":"openapi_docs","versions":[{"version":"v1","label":"v1","link":"/api-reference/v1/ach-transactions","default":false,"active":true,"folderId":"1b9c9f54"},{"version":"v2","label":"v2","link":"/api-reference/ach-transactions","default":true,"active":false,"folderId":"1b9c9f54"}],"sharedDataIds":{"openAPIDocsStore":"oas-api-reference/@v1/index.yaml","sidebar":"sidebar-sidebar.yaml__api-reference_v1"},"props":{"definitionId":"api-reference/@v1/index.yaml","dynamicMarkdocComponents":[],"baseSlug":"/api-reference/v1","seo":{"title":"ACH Transactions","siteUrl":"https://developer.flute.com","description":"<a id=\"ach-transactions\"></a>\nThe ACH (automated clearing house) transactions endpoints allow creating and managing ACH payments.\n\nThese operations support initiating ACH debit and credit transactions, retrieving transaction details, and monitoring transaction status throughout processing.\nThey also provide controls for managing transactions before settlement, such as placing transactions on hold, releasing holds, voiding pending transactions, or issuing refunds as needed.\n\nThe following is a typical Flute ACH workflow.\n\n**Authorizing the Payment**<br>\nThe customer authorizes the ACH payment.\nThis includes obtaining obtain NACHA-compliant authorization.\nNACHA (National Automated Clearing House Association) is the organization that governs the ACH payment network in the United States.\nIt sets the rules and standards for ACH payments.\n\nThe customer provides the SEC (standard entry class) code for the payment method.\nThis establishes the form of payment.\nIt can be one of the following:\n* Online form (SEC code WEB)\n* Signed authorization (SEC code PPD)\n* Phone authorization (SEC code TEL)\n* Business payment (SEC code CCD)\n\nAnd their personal information:\n* Name\n* Their bank's routing number\n* Their bank's account number and account type\n* Authorization confirmation\n\n**Creating the Payment**<br>\nThe method can include either a credit or debit transaction:<br>\n`POST /pay-api/v1/transactions/ach/payment/credit`<br>\n`POST /pay-api/v1/transactions/ach/payment`\n\n**Submitting the Payment**<br>\nCreating the ACH (automated clearing house) transaction also submits the request for processing.\n\nFlute aggregates transactions and sends them to the ODFI (originating bank) in an ACH (automated clearing house) transaction batch.\nACH (automated clearing house) transactions are typically not processed individually but rather in as a batch of transactions.\nThat processing is done by the ACH network and batches may take up to two days to clear.\nTherefore, there may be a delay in processing ACH (automated clearing house) transaction requests.\nAn individual ACH (automated clearing house) transaction may be requested for same day processing.\nSettlement in those cases may occur within hours.\nCheck with the originating bank for specific policies and fees.\n\n**Statusing the Payment**<br>\nIndividual requests will always have an available status that can be checked.\nThese will be noted with the <a href=\"#flute-transaction-statuses\">Flute transaction creator type identifier</a>.\n\nA status check may be submitted at any time.\nCheck the response field `status` or `statusId`.<br>\n`POST {{baseURL}}/pay-api/v1/transactions/{{transactionId}}`\n      \n**Holding or Cancelling the Payment**<br>\nAfter the ACH (automated clearing house) transaction request has been successfully submitted, the transaction by the put on hold or cancelled.\nA transaction on hold means the request will not be processed.\nThat transaction must either be released to continue processing or cancelled.<br>\n`POST {{baseURL}}/pay-api/v1/transactions/ach/{{transactionId}}/hold`<br>\n`POST {{baseURL}}/pay-api/v1/transactions/ach/{{transactionId}}/unhold`\n\nA transaction that is cancelled will be withdrawn from further processing.\nAn ACH (automated clearing house) transaction request cannot be cancelled after it has been submitted to the ACH network.\nThis is indicated by it's `pending` status.<br>\n`POST {{baseURL}}/pay-api/v1/transactions/ach/{{transactionId}}/void`\n\n**Settling the Payment**<br>\nIf the ACH (automated clearing house) transaction request is successful, it returns with a status of `settled`.\nThe merchant receives funds in their settlement account.\nThe ACH (automated clearing house) transaction is completed.\n\n**Unsuccessfully Completing the Payment**<br>\nBanks can reject the payment with ACH return codes.\nCheck the ACH return code for the specific reason.\n\n**Refunding the Payment**<br>\nRefunds may be issued.\nThe ACH (automated clearing house) transaction request must have successfully been resolved and settled.<br>\n`POST {{baseURL}}/pay-api/v1/transactions/ach/{{transactionId}}/refund`\n","lang":"en-US","llmstxt":{"hide":true,"excludeFiles":[]}},"itemId":"ach-transactions","disableAutoScroll":true,"metadata":{"subType":"openapi-operation"},"compilationErrors":[],"markdown":{"partials":{},"variables":{"rbac":{"teams":["anonymous"]},"user":{},"remoteAddr":{"hostname":"developer.flute.com","port":4000,"ipAddress":"216.73.216.41"},"lang":"default_locale","env":{"PUBLIC_REDOCLY_BRANCH_NAME":"main"}}},"pagePropGetterError":{"message":"","name":""}},"slug":"/api-reference/v1/ach-transactions","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}