How to connect my vault with my HollaEx exchange?

I have an exchange built on HollaEx kit and I am trying to connect it with Vault to get my wallets working. I made an account on Vault and now I am not sure how to proceed from here.

Could someone share some instructions on how the integration works?

  1. Upgrade your Lite Vault subscription (skip if your Vault account is Busines or above).

  2. Generate a Vault API Key.

  3. Go to the secret file in the settings directory of your HollaEx-Kit. There, you will find the env variables HOLLAEX_SECRET_VAULT_KEY (VAULT-KEY) and HOLLAEX_SECRET_VAULT_SECRET (VAULT-SECRET). Set these values as your newly generated Vault API key and secret.

  4. Go to the configmap file in the settings directory of your HollaEx-Kit. There, you will find the env variable HOLLAEX_CONFIGMAP_VAULT_NAME (VAULT-NAME). Set this value. It should be unique e.g. the name of your exchange.

  5. Go to the wallet section of Vault. Here, you will create a wallet for every active currency in your exchange (btc, eth, etc…). Your exchange only needs one wallet per currency.

    • The wallet names should be formatted as {VAULT-NAME}-{CURRENCY}. For example, if your VAULT-NAME is bitHolla and the currency is Bitcoin, the name of the wallet is bitHolla-btc. For Ethereum, bitHolla-eth. Make sure your wallet name is available. If the name is already taken, go back to step 4, choose a new VAULT-NAME, and repeat this step. Click here to learn more.

    • Set the webhook URL of your wallet as the /deposit/{currency} endpoint of your exchange’s API URL. The webhook notifies your exchange whenever a deposit is made to your Vault wallet. The format of your webhook URL should be {YOUR_API_URL}/deposit/{currency}. For example, if your API URL is https://api.myexchange.com and the wallet currency is Bitcoin, https://api.myexchange.com/deposit/btc. Read more on webhooks here.

After these steps, your exchange will be connected to Vault. Your users will be able to generate addresses and make transactions for active coins. For more information on Vault, go to the bitHolla docs.

3 Likes

So for the wallet name if lets say I pick bitnull then for btc I should generate bitnull-btc for eth it should be bitnull-eth etc?

What if one of those names is taken by someone else since the names are unique.

So for the wallet name if lets say I pick bitnull then for btc I should generate bitnull-btc for eth it should be bitnull-eth etc?

Yes, you should generate a wallet for each active coin in your exchange using that format

What if one of those names is taken by someone else since the names are unique.

All wallets must have the same VAULT-NAME. If a wallet using that VAULT-NAME is taken, you have to change your VAULT-NAME. This is why I recommend picking a VAULT-NAME that is unique to your exchange from the beginning. Include numbers, dashes(-), or underscores(_) to your name to make it even more unique. For example, if your exchange name is bitnull, your VAULT-NAME can be bitnull-08_81. Keep in mind that the wallet name character limit is 20.

3 Likes