Afinis Account Validation API

Afinis Account Validation API for validating that a bank account is open and able to accept ACH credits or debits, reducing returns and fraud.

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/nacha-account-validation"
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 email required.

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

OpenAPI Specification

nacha-account-validation.json Raw ↑
{"swagger":"2.0","info":{"version":"1.0.2","title":"Account Validation APIs","description":"Afinis is a diverse group of organizations working to support advancement and use of API standardization in the financial services industry. Utilization of this API requires a developer to [register](https://www.afinis.org/user/register) their application."},"host":"api.afinis.org","basePath":"/v1","securityDefinitions":{"APIKeyQueryParam":{"type":"apiKey","in":"query","name":"apikey"}},"schemes":["https"],"consumes":["application/json"],"produces":["application/json"],"paths":{"/accounts/validate/achPaymentDebitAcceptance":{"post":{"summary":"Account eligibility for debit ACH transactions","tags":["Accounts"],"operationId":"validateDebtorAccount","consumes":["application/json"],"produces":["application/json"],"parameters":[{"name":"debitAccount","in":"body","required":true,"description":"Account to be validated for debit transactions","schema":{"$ref":"#/definitions/ACHPaymentAcceptanceDebit"}},{"name":"Request_Id","in":"header","required":false,"type":"string","format":"uuid","description":"Optional Request ID allows application developer to trace requests through the systems logs"}],"responses":{"200":{"description":"Valid account request","schema":{"$ref":"#/definitions/AccountStatus"},"examples":{}},"400":{"description":"Bad request","schema":{"$ref":"#/definitions/error-400"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/error-401"}},"404":{"description":"Not Found"},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-500"}},"503":{"description":"Service unavailable"}},"security":[{"APIKeyQueryParam":[]}]}},"/accounts/validate/achPaymentCreditAcceptance":{"post":{"summary":"Account eligibility for credit ACH transactions","tags":["Accounts"],"operationId":"validateCreditorAccount","consumes":["application/json"],"produces":["application/json"],"parameters":[{"name":"creditAccount","in":"body","required":true,"description":"Account to be validated for Credit transactions","schema":{"$ref":"#/definitions/ACHPaymentAcceptanceCredit"}},{"name":"Request_Id","in":"header","required":false,"type":"string","format":"uuid","description":"Optional Request ID allows application developer to trace requests through the systems logs"}],"responses":{"200":{"description":"Valid account request","schema":{"$ref":"#/definitions/AccountStatus"},"examples":{}},"400":{"description":"Bad request","schema":{"$ref":"#/definitions/error-400"}},"401":{"description":"Unauthorized","schema":{"$ref":"#/definitions/error-401"}},"404":{"description":"Not Found"},"500":{"description":"Internal Server error","schema":{"$ref":"#/definitions/error-500"}},"503":{"description":"Service unavailable"}},"security":[{"APIKeyQueryParam":[]}]}}},"definitions":{"DebtorAgent":{"title":"DebtorAgent","type":"object","properties":{"memberIdentification":{"description":"Identification number of clearing system e.g., a U.S. transit routing number or a Canadian Payments Association Routing Number","example":"061103852","type":"string"},"clearingSystemIdentification":{"description":"Clearing system identification","example":"United States Routing Number","type":"string"}}},"AccountStatus":{"type":"object","properties":{"accountStatus":{"type":"string","enum":["Enabled","Disabled"]}}},"ACHPaymentAcceptanceCredit":{"title":"ACHPaymentAcceptanceCredit","type":"object","properties":{"creditorAccount":{"$ref":"#/definitions/CreditorAccount"},"creditorAgent":{"$ref":"#/definitions/CreditorAgent"},"cashAccountType":{"type":"string","enum":["Current","Savings"]}}},"CreditorAccount":{"title":"CreditorAccount","type":"object","required":["identification"],"properties":{"identification":{"description":"Account number of party to be credited","example":11101019,"type":"string"}}},"CreditorAgent":{"title":"CreditorAgent","type":"object","properties":{"memberIdentification":{"description":"Identification number of clearing system e.g., a U.S. transit routing number or Canadian Payments Association Routing Number","example":"061103852","type":"string"},"clearingSystemIdentification":{"description":"Clearing system identification","example":"United States Routing Number","type":"string"}}},"ACHPaymentAcceptanceDebit":{"title":"ACHPaymentAcceptanceDebit","type":"object","properties":{"debtorAccount":{"$ref":"#/definitions/DebtorAccount"},"debtorAgent":{"$ref":"#/definitions/DebtorAgent"},"cashAccountType":{"type":"string","enum":["Current","Savings"]}}},"DebtorAccount":{"title":"DebtorAccount","type":"object","required":["identification"],"properties":{"identification":{"description":"Account number of party who owes funds","example":11101012,"type":"string"}}},"error-400":{"title":"Error","type":"object","properties":{"detail":{"description":"error details","type":"array","items":{"$ref":"#/definitions/errorDetails-400"}}}},"errorDetails-400":{"title":"ErrorDetails","type":"object","properties":{"errorcode":{"description":"A programmatic error code","example":2000,"type":"string"},"message":{"description":"A human readable description of the problem","example":"Invalid request.","type":"string"}},"required":["errorcode","message"]},"error-401":{"title":"401 Error","type":"object","properties":{"detail":{"description":"error details","type":"array","items":{"$ref":"#/definitions/errorDetails-401"}}}},"errorDetails-401":{"title":"401 ErrorDetails","type":"object","properties":{"errorcode":{"description":"A programmatic error code","example":1000,"type":"number","enum":[{"1000":null,"description":"API key is missing, invalid or expired."},{"1001":null,"description":"API token is invalid, expired, or account associated with key does not have access to that API."}]},"message":{"description":"A human readable description of the problem","example":"API key is missing, invalid or expired.","type":"string"}},"required":["errorcode","message"]},"error-500":{"title":"500 Error","type":"object","properties":{"detail":{"description":"error details","type":"array","items":{"$ref":"#/definitions/errorDetails-500"}}}},"errorDetails-500":{"title":"500 ErrorDetails","type":"object","properties":{"errorcode":{"description":"A programmatic error code","example":3001,"type":"number"},"message":{"description":"A human readable description of the problem","example":"Internal Server error","type":"string"}},"required":["errorcode","message"]}}}