# Fiat Fund Management

The prerequisites to manage Fiat funds using the Cion Digital platform are:

1. The user should have an account with a financial institution.
2. The user should have an intent to deposit Fiat currency.

{% hint style="info" %}
The Cion Digital platform captures user account details and stores the details for future reference.
{% endhint %}

### Assumptions and Constraints <a href="#assumption-and-constraints" id="assumption-and-constraints"></a>

1. The Fiat currency considered is USD.
2. The transaction history for a user is available on the Cion Digital platform.
3. The deposit process can happen with the following modes:

&#x20;    a. Wire - Wire transfer, bank transfer, or credit transfer is a method of electronic funds transfer from one person or entity to another. A wire transfer can be made from one bank account to another bank account, or through the transfer of cash at a cash office. **For the scope of this document, assume the deposit process is done using the wire transfer.**

&#x20;      b. Credit or debit card

4\. The Cion Digital platform has user account details due to the KYC process.

### Functional Flow <a href="#functional-requirements" id="functional-requirements"></a>

#### For Funds Deposits  <a href="#deposit" id="deposit"></a>

![](https://3591104832-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FR8K6biUJl6Sez17WdBXa%2Fuploads%2F12RaoWF8kFufAHrlFQwM%2FCrypto%20Deposit.png?alt=media\&token=1d99054e-cf42-46a6-aa39-db459d874627)

* The user can log in to the Cion Digital platform with
  * Username - email ID(assuming it is the username), mandatory to fill.
  * Password - alphanumeric, mandatory to fill.
* The user can navigate to a section/tab/screen to deposit and withdraw funds. For ease of understanding, assume such a section/tab/screen is denoted as ‘Funds’.
* The user can view existing funds in the account.
* The user can also initiate a deposit request.
* On initiating the deposit request, the user can enter the deposit amount.
  * deposit amount- the amount in USD, mandatory to fill.
* The user can post the above transaction by clicking 'Continue/Next’.
  * On clicking the Continue/Next button, the "Stripe page" is displayed.
    * Using Stripe, the user can deposit the funds using  payment methods like
      * Credit or Debit Cards
      * Net banking from any bank account
  * On completing the deposit, the user is navigated back to the Cion Digital platform - Funds screen.
* The user can now view the updated funds.
* Using the Transaction History tab, the user can view previous transaction records.

{% hint style="info" %}
The Cion Digital platform should have a zero-state transaction screen for a user with no previous transaction history.
{% endhint %}

**For Funds Withdrawal**

* The user can log in to the Cion Digital platform with
  * Username - email ID(assuming it is the username), mandatory to fill.
  * Password - alphanumeric, mandatory to fill.
* The user can view existing funds in the account by clicking "Existing Funds".
* The user can initiate a withdrawal request by clicking on "Withdraw".
* The user can enter the withdrawal amount in USD
* On clicking Withdraw, the user can view the withdrawal status:
  * Pending
  * Completed

{% hint style="info" %}
The status is fetched from Custodian
{% endhint %}

* Using the Transaction History tab, the user can view previous transaction records.

{% hint style="info" %}
The Cion Digital platform should have a zero-state transaction screen for a user with no previous transaction history.
{% endhint %}

### APIs <a href="#non-functional-requirements" id="non-functional-requirements"></a>

For API integration, connect with the Cion Digital team to perform these functionalities without using the Cion Digital UI.
