# Initial Setup

## Requirements

* Exchange Bank account (to receive user deposits)
* Liquidity of fiat and crypto of selected market

***

## Enabling Fiat Controls

Before any other process, ensure that the Fiat Controls are enabled on the exchange.&#x20;

This is done by navigating to the *Operator Controls*, navigating to the *General* page, and then finally the *Features* tab. Look at the list and ensure that *Fiat Controls* is checked as in the image below.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2F73IBGXiHEXFhAsCUBt9o%2Fimage.png?alt=media&#x26;token=805d2760-7d98-4bea-9954-396a58e24b4a" alt=""><figcaption><p>Enabling Fiat Controls</p></figcaption></figure>

***

## Adding Fiat Currency

First, the desired fiat currencies should be added to the exchange. This can be done just as with any other asset. For this example, I will be adding the British Pound (GBP), but the current list of fiat currencies is extensive, and the system is flexible enough to support almost any world fiat currency.

{% hint style="info" %}
If the fiat currency you require is not on the currently supported fiat assets list, please message <support@hollaex.com> to arrange its addition
{% endhint %}

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2Fn6zvPWGzLU4IWEcHqS3J%2Fimage.png?alt=media&#x26;token=365c285f-8ea4-4add-9772-8861f6370dc0" alt=""><figcaption><p>Where to find fiat assets</p></figcaption></figure>

Click next to see some initial information about the fiat asset, and click confirm to have it added to your exchange.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FUmorbG8R4NEUKlP9849R%2Fimage.png?alt=media&#x26;token=e5c355a2-e4c2-4a42-b6fc-123ddfebd38a" alt=""><figcaption><p>Information menu for fiat currency British pound</p></figcaption></figure>

With this done, the fiat currency can be seen as an option on the user wallet screen.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FRKJoehvO9oBdLR3cvz3G%2Fimage.png?alt=media&#x26;token=7b0e7be5-9f6f-4285-9436-f3dd2dbe07b7" alt=""><figcaption><p>Viewing GBP in the wallet</p></figcaption></figure>

{% hint style="info" %}
Note that although the fiat asset has been added and will be visible in users' wallets, currently, there will be no way for it to be traded on the exchange. First, a market must be added and set up for the relevant pairing; this is detailed on the [following page.](https://docs.hollaex.com/how-tos/fiat-controls/setting-up-fiat-on-off-ramp)
{% endhint %}

***

## Adding Payment Account

A *payment account* is the type of account that users will fill out on your exchange, such that it is possible to allow them to withdraw any fiat credits they have.&#x20;

This payment account can also be used for on-ramping, discussed in the [next section](#adding-exchange-on-ramp).

To add your payment account, this is done by accessing the *Operator Controls*, then *Fiat Controls* in the sidebar, and finally the *Payment Accounts* tab at the top of the page.

To get started, click either green buttons labeled *Add payment account.*

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FQ3R0HHgFnmAStDchVreL%2Fimage.png?alt=media&#x26;token=3d833cb0-38fc-4ec2-981f-d6110804fa59" alt=""><figcaption><p>Adding user payment account</p></figcaption></figure>

Choose the method of payment account:

* **Bank**: This will provide a default set of fields to fill in, such as bank name, IBAN, etc. These fields can be fully edited, or removed, as well as new fields added
* **PayPal**: Simple email
* **Custom:** This functions very similarly to the Bank setting above, but suggests no default fields

{% hint style="info" %}
When adding multiple Payment accounts for different currencies, ensure to use *Custom* for any currencies after the first, even if you are creating an account for a bank&#x20;
{% endhint %}

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2F99QxxCmGdx6uDi9xTr64%2Fimage.png?alt=media&#x26;token=496979e4-d9e6-420f-a022-c1bca93f34db" alt=""><figcaption></figcaption></figure>

Selecting this we will see the following default options:

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FcsUkpDiJB2IC1MDnbOKX%2Fimage.png?alt=media&#x26;token=fb1adddb-c215-4333-979d-44e59b8bafd1" alt=""><figcaption><p>Default Payment Account options</p></figcaption></figure>

Here we have the option of setting exactly what details we want from users. Continuing with the UK example above, in addition to the account number (which we already have), would also need users to provide their sort code.

To do this, select *Add more payment details* at the bottom left of the options. This will open the menu that can be seen in the following image. Enter the fields name, and whether or not it is required.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FcMuiSsA7CjmgzbJblXIZ%2Fimage.png?alt=media&#x26;token=509faefa-ba78-4a06-971e-03e3f31febca" alt=""><figcaption></figcaption></figure>

With this added, we can save the Payment account.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FBBFpD8evrcbMLREweBwt%2Fimage.png?alt=media&#x26;token=5be600b0-204d-49f2-8619-9cefecea413e" alt=""><figcaption><p>Finished payment account, your specifics may be different</p></figcaption></figure>

## Adding Exchange On-Ramp&#x20;

With the fiat asset now active on the exchange, we have to enable a method for users to deposit the fiat to the exchange, and thus be *minted* credits they can use to trade.

To do this, the details of the location we want users to send fiat to will be displayed to users.

This is done by accessing the *Operator Controls*, then *Fiat Controls* in the sidebar, and finally the *On-Ramp* tab at the top of the page.

On this page, we will see a list of all the on-ramps we have created, for all the fiat assets the exchange has listed.

At the moment, my page is empty, so let's add an on-ramp for GBP (British Pound). This can be done in two ways, either by clicking *Add on-ramp* in the top right and selecting from the dropdown which asset to add the on-ramp, or directly selecting the *Add on-ramp* button beside the relevant asset.

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2F6t6RDeLfq9OL1QKuDFAz%2Fimage.png?alt=media&#x26;token=d2138d81-a3ac-47ab-976d-a2e9b8e38c4c" alt=""><figcaption><p>Adding on-ramp options </p></figcaption></figure>

The first menu is the selection of what type of On-Ramp to provide:

We are given the option to select from the premade payment account that we created in the previous section, and will then be given those fields we set up. This will likely be the option most operators use.

Alternatively, we can select Paypal, or select Custom and create a new method as shown below:

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FiY1ZPXfIwbbdXmlYcOgX%2Fimage.png?alt=media&#x26;token=e15c3d5e-cb79-46ac-b9af-ff6b1bfae4a9" alt=""><figcaption></figcaption></figure>

With the name chosen and NEXT clicked, we will see the following back on the On-Ramp page:&#x20;

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FSOkFF60pRhQ5va11NjiT%2Fimage.png?alt=media&#x26;token=bfd093c3-a17a-4d05-a90c-833e63dcee7c" alt=""><figcaption></figcaption></figure>

Now we have to add the relevant details for the currency we have chosen.&#x20;

In this case for GBP, in the UK to transfer between accounts we require:

* Name
* Account Number
* Sort Code&#x20;

{% hint style="info" %}
*Sort code* is a UK-specific requirement for domestic transfers.&#x20;

This illustrates how the HollaEx system gives the flexibility to ensure that whatever national method is used, the users will be provided with the relevant information they need.

The exact fields you add will vary depending on the fiat in question
{% endhint %}

Adding these 3 fields, we can set them as Required. This means that the On-Ramp cannot be created without them. Alongside these required fields we can add optional fields as required. These are simply those fields that are not strictly required to instantiate the On-Ramp.&#x20;

Below we can see my on-ramp for a British bank, with some credentials added.&#x20;

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FyockQFGe9Dy1WDOBNkQF%2Fimage.png?alt=media&#x26;token=18f520e9-042c-4b81-b655-22a01268797d" alt=""><figcaption></figcaption></figure>

And in the following image, how these details are displayed to users on the Deposit screen for GBP. This is covered in the [Users Making Fiat Deposit page](https://docs.hollaex.com/how-tos/fiat-controls/users-making-fiat-deposit).

<figure><img src="https://3965312054-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MP899VqAdyGFgLTy9SY%2Fuploads%2FdrndP2te3ptDXPwIq5h7%2Fimage.png?alt=media&#x26;token=d62f275c-5665-4750-af2a-8f9d5bea1c03" alt=""><figcaption></figcaption></figure>
