# Add Fixed Deposit

The "Add Fixed Deposit" endpoint allows customers to add a fixed deposit account. \
\ <mark style="color:green;">`POST`</mark> `/api/fixeddepositaccount/v1/add`\
\
To create a new fixed deposit account, you need to provide the necessary body parameters, such as `referenceNumber`, `liquidationAccount`, `principalAmount`, and other relevant details.\ <br>

**Headers**

| Name                                            | Value                |
| ----------------------------------------------- | -------------------- |
| Content-Type<mark style="color:red;">\*</mark>  | `application/json`   |
| Authorization<mark style="color:red;">\*</mark> | `Bearer <token>`     |
| Request-Reference                               | `{unique-reference}` |

**Body**

<table><thead><tr><th width="174">Name</th><th width="174">Data Type (length)</th><th width="100" data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td><code>liquidationAccountType</code></td><td>string</td><td>false</td><td><p>The type of account where funds will be liquidated </p><p><br>The enumerations are: <br><code>1</code> = SavingsAndCurrent <em>(Default)</em><br><code>2</code> = GeneralLedgerAccount</p></td></tr><tr><td><code>liquidationAccount</code></td><td>string <em>(1</em><a data-footnote-ref href="#user-content-fn-1"><em>0)</em></a></td><td>true</td><td>The account number where funds will be liquidated</td></tr><tr><td><code>customerID</code></td><td>string <em>(1</em><a data-footnote-ref href="#user-content-fn-1"><em>0)</em></a></td><td>false</td><td>The unique identifier of the customer (individual or group), is only <strong>optional</strong> if the <code>liquidationType</code> is <code>SavingsAndCurrent</code><br><br><em><mark style="color:orange;">It must be a</mark><mark style="color:orange;"> </mark><mark style="color:orange;"><code>customerID</code></mark><mark style="color:orange;"> </mark><mark style="color:orange;">that exists on the CBA portal.</mark></em></td></tr><tr><td><code>referenceNumber</code></td><td>string <a data-footnote-ref href="#user-content-fn-1"><em>(500)</em></a></td><td>true</td><td>A unique reference number for the fixed deposit account</td></tr><tr><td><code>productCode</code></td><td>string <a data-footnote-ref href="#user-content-fn-1"><em>(3)</em></a></td><td>true</td><td><p>The product code associated with the fixed deposit account</p><p><br><em><mark style="color:orange;">The</mark></em> <em><mark style="color:orange;"><code>productCode</code></mark><mark style="color:orange;"> </mark><mark style="color:orange;">must exist on the CBA portal.</mark></em></p></td></tr><tr><td><code>branchCode</code></td><td>string <a data-footnote-ref href="#user-content-fn-1"><em>(3)</em></a></td><td>false</td><td>The branch code where the fixed deposit account is being created is only <strong>optional</strong> if the <code>liquidationType</code> is <code>SavingsAndCurrent</code><br><br><em><mark style="color:orange;">The</mark></em> <em><mark style="color:orange;"><code>branchCode</code></mark><mark style="color:orange;"> </mark><mark style="color:orange;">must exist on the CBA portal. The system will use the account branch if empty or null</mark>.</em></td></tr><tr><td><code>principalAmount</code></td><td>integer</td><td>true</td><td>The principal amount being deposited into the fixed deposit account<br><br><em><mark style="color:orange;">The amount should be sent in the base unit of the currency. For example, <code>1000</code> naira will be sent as <code>1000</code> * <code>100</code>.</mark></em> </td></tr><tr><td><code>tenure</code></td><td>integer</td><td>true</td><td>The tenure or duration of the fixed deposit in months</td></tr><tr><td><code>commencementDate</code></td><td>date</td><td>true</td><td>The start date of the fixed deposit</td></tr><tr><td><code>useProductInterestRate</code></td><td>boolean</td><td>false</td><td>Set <code>true</code> to use the default interest rate of the product and false for no</td></tr><tr><td><code>applicableInterestCode</code></td><td>string <a data-footnote-ref href="#user-content-fn-1"><em>(3)</em></a></td><td>false</td><td>The interest code should be applied if you are not using the product's default interest rate.</td></tr><tr><td><code>applicableInterestRate</code></td><td>integer</td><td>true</td><td>The interest rate to apply if not using the product's default<br><br><em><mark style="color:orange;">The percentage must be rounded to a maximum of three decimal places.</mark></em></td></tr><tr><td><code>partLiquidationCharge</code></td><td>integer</td><td>false</td><td>The charge applied if the fixed deposit is partially liquidated<br><br><em><mark style="color:orange;">The percentage must be rounded to a maximum of three decimal places.</mark></em></td></tr><tr><td><code>holdFundAtMaturity</code></td><td>boolean</td><td>false</td><td>Indicates whether to hold the funds in the account at maturity, Set true  for <code>yes</code> and <code>false</code> for no</td></tr><tr><td><code>applyRollover</code></td><td>boolean</td><td>false</td><td>Indicates whether to apply rollover at maturity</td></tr><tr><td><code>rolloverOption</code></td><td>string</td><td>false</td><td>The rollover option to apply <br><br>The enumerations are:<br><code>1</code> = RolloverPrincipalOnly<br><code>2</code> = RolloverPrincipalAndInterest</td></tr></tbody></table>

Here is an example request and response with a sample payload sent to the endpoint in Curl format.

<details>

<summary>Sample Request</summary>

```json
curl --location -g '{{baseurl}}/api/fixeddepositaccount/v1/add' \
--header 'Authorization: bearer {token}' \
--header 'request-reference: {unique_reference}' \
--header 'Content-Type: application/json' \
--data '{
  "liquidationAccountType": "string",
  "liquidationAccount": "string",
  "customerID": "string",
  "referenceNumber": "string",
  "productCode": "string",
  "branchCode": "string",
  "principalAmount": 0,
  "tenure": 0,
  "commencementDate": "2023-01-20T23:43:25.269Z",
  "useProductInterestRate": true,
  "applicableInterestCode": "string",
  "applicableInterestRate": 0,
  "partLiquidationCharge": 0,
  "holdFundAtMaturity": true,
  "applyRollover": true,
  "rolloverOption": "string"
}'
```

</details>

<details>

<summary>Respose: <code>200</code></summary>

```json
{
  "status": true,
  "message": "string",
  "data": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
  }
}
```

</details>

[^1]: This is the maximum number of characters allowed.
