Get bank account verification

Retrieve the current status and details of an instant verification, including whether the verification method was instant or same-day ACH. This helps track the verification process in real-time and provides details in case of exceptions.

The status will indicate the following:

  • new: Verification initiated, credit pending to the payment network
  • sent-credit: Credit sent, available for verification
  • failed: Verification failed, description provided, user needs to add a new bank account
  • expired: Verification expired after 14 days, initiate another verification
  • max-attempts-exceeded: Five incorrect code attempts exhausted, initiate another verification

To use this endpoint from the browser, you’ll need to specify the /accounts/{accountID}/bank-accounts.read scope when generating a token.

GET
/accounts/{accountID}/bank-accounts/{bankAccountID}/verify
cURL
1
2
curl -X GET "https://api.moov.io/accounts/{accountID}/bank-accounts/{bankAccountID}/verify" \
  -H "Authorization: Bearer {token}" \
200 404 429
Bank Account Verification
{
  "status": "successful",
  "verificationMethod": "instant"
}
No account with the specified accountID was found or verification code has not been sent for the source.
Request was refused due to rate limiting.

Retry-After

number

Path parameters

accountID

string <uuid> required
ID of the account.

bankAccountID

string <uuid> required
ID of the bank account

Response

application/json

exceptionDetails

object
Reason for, and details related to, an errored or verificationFailed bank account status.
right_key Show child attributes

achReturnCode

string<enum>

The return code of an ACH transaction that caused the bank account status to change.

Codes:

  • R02 - Account Closed
  • R03 - No Account/Unable to Locate Account
  • R04 - Invalid Account Number
  • R05 - Improper Debit to Consumer Account
  • R07 - Authorization Revoked by Customer
  • R08 - Payment Stopped
  • R10 - Customer Advises Originator is Not Known or Authorized to Receiver and
  • R11 - Customer Advises Entry Not in Accordance with the Terms of the Authorization
  • R12 - Branch Sold to Another DFI
  • R13 - RDFI not qualified to participate
  • R14 - Representative payee deceased or unable to continue in that capacity
  • R15 - Beneficiary or bank account holder
  • R16 - Bank account frozen
  • R17 - Entry with Invalid Account Number Initiated Under Questionable Circumstances
  • R20 - Non-payment bank account
  • R23 - Credit entry refused by receiver
  • R29 - Corporate customer advises not authorized
  • R34 - Limited participation RDFI
  • R38 - Stop Payment on Source Document (Adjustment Entry)
  • R39 - Improper Source Document
Possible values: R02, R03, R04, R05, R07, R08, R10, R11, R12, R13, R14, R15, R16, R17, R20, R23, R29, R34, R38, R39

description

string
Details related to an errored or verificationFailed bank account status.

rtpRejectionCode

string<enum>

The rejection code of an RTP transaction that caused the bank account status to change.

Codes:

  • AC03 - Account Invalid
  • AC04 - Account Closed
  • AC06 - Account Blocked
  • AC14 - Creditor Account Type Invalid
  • AG01 - Transactions Forbidden On Account
  • AG03 - Transaction Type Not Supported
  • MD07 - Customer Deceased
Possible values: AC03, AC04, AC06, AC14, AG01, AG03, MD07

status

string<enum>
Possible values: new, sent-credit, max-attempts-exceeded, failed, expired, successful

verificationMethod

string<enum>
Possible values: instant, ach