Hextrust - Wallet Custody Integration

Available To

Free for the following exchange plans:

  • On-Premise Plans:

    • Enterprise Unlimited

circle-info

This is a wallet custody plugin and is only available on On-Premise plans. It is not offered on Cloud plans because custody must be controlled by the exchange operator's own infrastructure and HexTrust API credentials.

What Is It?

The HexTrust Plugin connects a HollaEx exchange to HexTrust wallet custody. It creates user deposit addresses through HexTrust vaults, processes signed HexTrust webhooks for deposits and withdrawals, and dispatches eligible pending crypto withdrawals to HexTrust for on-chain settlement.

The plugin exposes server-side routes only. Users request deposit addresses through the exchange, while withdrawal dispatch runs automatically in the background and can also be triggered by an admin.

Who Needs It?

This plugin is suitable for exchange operators that:

  • Use HexTrust as their custody provider.

  • Want user deposit addresses derived from HexTrust vaults.

  • Want pending exchange withdrawals submitted to HexTrust automatically.

  • Need signed webhook confirmation before deposits are credited or withdrawals are completed.

How to Use It?

Install the plugin from the Plugins section inside the Operator Control, then configure the plugin meta with your HexTrust credentials and webhook verification key.

1. Get your HexTrust credentials

Create or retrieve the following values from your HexTrust environment:

  • API base URL for sandbox or production.

  • Enterprise ID.

  • API key.

  • ES256 private key used to sign API requests.

  • Ed25519 webhook public key used to verify HexTrust webhook payloads.

  • Source withdrawal address used as the from address when submitting withdrawals.

Store the private key and API key securely. Do not commit live credentials into this repository.

2. Configure the plugin

Open the plugin in the Operator Control and set the following fields:

Field
Required
Default
Description

api_url

yes

https://api.sandbox.hexsafe.hextrust.com

HexTrust API base URL. Use the correct sandbox or production URL for your account.

enterprise_id

yes

empty

HexTrust enterprise ID.

api_key

yes

empty

HexTrust API key.

private_key

yes

empty

ES256 private key used to sign HexTrust API requests. Escaped \n newlines are accepted.

webhook_public_key

yes

empty

Base64 Ed25519 public key used to verify HexTrust webhooks. Webhooks are rejected if this is missing or invalid.

withdrawal_address

yes

empty

Address sent as from when the plugin submits withdrawals to HexTrust.

The plugin will not initialize unless all required values are present.

3. Configure HexTrust webhooks

Configure HexTrust to send transaction webhooks to:

Webhook requests must include a valid signature and payload in the format expected by HexTrust. The plugin verifies the signature before processing any deposit or withdrawal update.

4. Address creation

Authenticated users can request a deposit address with:

The plugin creates or reuses the user's HexTrust vault, derives an address for the requested asset/network, and registers the address in the exchange wallet records. If a user already has a wallet on the same network, the plugin reuses that address for compatible assets.

5. Withdrawal dispatch

The plugin checks pending exchange withdrawals every minute. Eligible withdrawals are submitted to HexTrust when they are:

  • Not completed.

  • Not dismissed.

  • Not rejected.

  • Not waiting.

  • Not on hold.

  • Marked for processing by the plugin.

  • For a supported blockchain asset.

To trigger dispatch manually as an admin:

After a withdrawal is submitted, it remains waiting for a HexTrust webhook. A completed withdrawal webhook updates the exchange burn as successful and stores the on-chain transaction hash when available.

Supported Assets

The plugin loads supported chains from HexTrust at startup and maps HexTrust chain names to exchange symbols. Built-in mappings include Bitcoin, Ethereum, Optimism, Avalanche, Kaia, Bitcoin Cash, Celestia, Cosmos, XRP, Algorand, Stacks, Tezos, Injective, and several other networks returned by HexTrust.

Assets without a mapped HexTrust chain are skipped by the withdrawal dispatcher and may not be able to derive addresses until the mapping is added.


Benefits for HollaEx Operators

The HexTrust plugin lets an exchange keep custody operations inside HexTrust while preserving the normal HollaEx wallet flow for users. Deposit addresses are derived from custody vaults, deposit credits depend on signed custody webhooks, and outgoing withdrawals are queued and dispatched without manual API calls. This keeps custody integration centralized, auditable, and aligned with the exchange's existing pending transaction workflow.

Last updated