Skip to main content
Embedded Payments

Close an account for your client

This section explains the closure process, reasons for closure, sample API requests and responses, automated and manual steps, and API field details. 

You can request to close a client account by making a POST/accounts/{accountID} request. Before making this request, you should move the funds out of the account. The final step requires servicing team intervention.

Account closure process

To close a client account:

1. Initiate Closure Request: You send a closure request via the API, specifying the desired account state and closure reason. 

2. Automated Processing: The system processes the closure request based on the account’s current state and available funds. 

  • If the account is in pending close state:
    • Funds = 0: Debit and credit restrictions are added. The servicing team manually closes the account.
    • Funds > 0: Credit restriction is added. You receive a 400 response indicating the balance must be zero. The servicing team closes the account after funds are moved out.
    • Funds < 0: Debit restriction is added. You receive a 400 response indicating the balance must be zero. The servicing team closes the account after the balance is brought to zero.
  • If  the account is in open state:
    • Funds = 0: Debit and credit restrictions are added. The account moves to Pending Close state. The servicing team manually closes the account.
    • Funds > 0: Credit restriction is added. The account moves to Pending Close state. You receive a notification and a 400 response indicating the balance must be zero. The servicing team closes the account after funds are moved out.
    • Funds < 0: Debit restriction is added. The account moves to Pending Close state. You receive a notification and a 400 response indicating the balance must be zero. The servicing team closes the account after the balance is brought to zero.

3. Manual Closure: The servicing team reviews the closure request, completes required manual steps (such as reconciliations, regulatory checks) and updates the account state to CLOSED.

4. Final Confirmation: You receive a notification when the account is fully closed.

Account states

  • OPEN: Account is active and operational.
  • PENDING_CLOSE: Account closure has been initiated; manual steps are pending.
  • CLOSED: Account is fully closed; no further transactions allowed.

Account closure Reasons

When requesting account closure, you must specify a reason:

  • Elective: You choose to close the account for business or personal reasons.
  • Subjected to Fraud: The account is closed due to suspected or confirmed fraud.
  • Overdraft: The account is closed due to unresolved overdraft status.
  • Dormancy: The account is closed due to inactivity.
  • Other: Any reason not covered above.

Sample request body:

{
  "state": "CLOSED",
  "closureReason": "ELECTIVE"
}

Sample response:

{
  "id": "dc2eda9084bf40b7a1d8baa8c5e0ea0ax",
  "state": "PENDING_CLOSE",
  "closureReason": "ELECTIVE"
}

Request Fields

  • state: Desired account state. Set to CLOSED to initiate closure.
  • closureReason: Reason for account closure. 
    • Possible values: Elective, Subjected to Fraud, Overdraft, Dormancy, and Other.
Note

Both fields are required and must match allowed values.

Response Fields

  • id: Unique identifier for the account.
  • state: Current account state after the closure request (typically PENDING_CLOSE).
  • closureReason: Reason for account closure.
Note

The response confirms the closure process has started. The account state is set to PENDING_CLOSE.

Error Responses

  • ACCOUNT_HAS_NON_ZERO_BALANCE: Account cannot be closed due to an outstanding balance. Account balance must be zero to allow closure.
  • ACCOUNT_ALREADY_CLOSED: Account is already closed.
  • OPERATION_NOT_SUPPORTED: This operation is only supported for accounts with either of these categories: 
    • LIMITED_DDA
    • LIMITED_DDA_PAYMENTS

Manual Closure

After the automated process sets the account to PENDING_CLOSE and sends notifications, the servicing team:

  • Reviews the closure request.
  • Performs required manual actions (such as transaction settlement and compliance checks).
  • Updates the account state to CLOSED.

After the servicing team closes the account, you automatically receive an ACCOUNT_CLOSED webhook if you are subscribed.