{"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"]}}}