Early withdrawal from a CD
In this tutorial, you'll learn how to:
✅ Request early withdrawal
✅ Determine how much to withdraw from the account after the penalty fee is deducted
If you are new to account management we recommend you read the Account management before starting this tutorial
The tutorial assumes you have a knowledge of APIs and how they work. For more information on sending API calls, see the API overview page .
The tutorial uses these API endpoints:
API | Description |
This endpoint requests early withdrawal from a time deposit account | |
GET /core/v1/accounts/{accountNumber} | This endpoint queries a specific account for information about it |
The tutorial uses these webhooks:
Webhook | Description |
Core.TimeDeposit.Withdrawn | Shows information about the account the early withdrawal request was made to Ach.Payment.ReceivedEarly |
Make sure you have:
- Account number
Register the relevant webhook events
To receive the webhook events for this tutorial both partner accounts need to register each specific webhook event type. Once you are registered, the event objects are sent to the registered URLs.
The event object contains a list of resource identifiers used to download details on each event.
Request early withdrawal of funds from a time deposit account
Before an account holder can actually withdraw funds from a time account that hasn't reached maturity, you have to make a request (for the account holder) to make that early withdrawal. In the request you also indicate if the withdrawal will trigger a penalty fee or not. CR charges a penalty fee for early withdrawal, although in some cases it can be waived. For example, Cross River time deposit accounts have no provisions for partial withdrawals. However, in certain circumstances, an account holder can be allowed to make an early withdrawal of the money in the account without penalty, which is similar to a partial withdrawal.
Note that a request for early withdrawal does not remove funds from the account. That is a separate call.
In this tutorial, you will request an early withdrawal with a penalty fee.
To request early withdrawal
- Call POST /v1/dda/accounts/{accountNumber}/time-deposit/early-withdraw. For this call, some/all attributes are required. A full list of attributes is found here. Set the waivePenaltyFee attribute to false.
- A successful API call returns a JSON response with the details of account, including the total funds to be withdrawn and the amount of penalty fee charged. In our example, the total deposit amount is 1,000,000.00. The penalty fee amount is 4,109.59.
To see the amount available for withdrawal
- Call GET /core/v1/accounts/{accountNumber} to see the balance that remains in the account after deducting the penalty. This is the sum you will withdraw. You must transfer the entire amount. Transfer the funds as you would any money transfer.
- Withdrawal of the funds triggers the Core.TimeDeposit.Withdrawn webhook event.