Skip to content

The Revenue section in the Management UI allows you to configure developer fees and manage the accounts where those fees are collected. Developer fees enable you to collect additional fees from your end customers when they perform transactions on your platform.

Overview

The Revenue section contains two main tabs:

  • Revenue Accounts: View and manage the accounts where collected fees are deposited
  • Customer Fees: Create, view, update, and delete fee configurations

Understanding Developer Fees

Developer fees are charges you can apply to customer transactions on your platform. These fees are collected in addition to any network or processing fees and are deposited into your designated revenue accounts.

Each fee configuration consists of two parts:

  • Filters: Define WHICH transactions the fee applies to (asset type, trade pair, customer, rail)
  • Attributes: Define HOW the fee is charged (fee structure, charge asset type, revenue account, status)

Fee Types

You can configure fees for four different transaction types:

Fee TypeDescriptionApplied When
ExchangeFees charged when customers trade between different assetsCustomer executes a trade or exchange transaction
DepositFees charged when customers deposit funds into their accountsCustomer deposits fiat or crypto assets
WithdrawalFees charged when customers withdraw funds from their accountsCustomer withdraws fiat or crypto assets
TransferFees charged when customers transfer funds between accountsCustomer transfers assets between their own accounts or to other customers

For more information about these transaction types, see the Deposits, Withdrawals, Transfers, and Exchanges guides.

Revenue Accounts Tab

Revenue accounts are the accounts where your collected fees are deposited. Before you can create fee configurations, you must have at least one revenue account set up.

Revenue Account Information

Each revenue account displays the following information:

Revenue Accounts Overview
FieldDescription
External IdThe name of the account
StatusAccount status (active, inactive)
Asset Type IdThe type of account (e.g., fiat, trading)
AssetThe asset held in this account
BalancesCurrent and available balance of collected fees

Customer Fees Tab

The Customer Fees tab is where you create, view, update, and delete fee configurations.

Viewing Fee Configurations

The Customer Fees tab displays all existing fee configurations in a table format:

GroupColumnDescription
FilterFee TypeThe transaction type (exchange, deposit, withdrawal, transfer)
FilterFee Structurebps (basis points) for percentage-based OR min/max for fixed bounds
AttributeCharge AssetThe asset in which the fee is collected
AttributeAsset TypeThe specific asset (if applicable) or "All assets"
AttributeTrade PairThe specific trade pair for exchange fees (if applicable)
AttributeCustomerThe specific customer (if applicable) or "All customers"
AttributeRailThe specific rail (if applicable) or "All rails"
Revenue Fee Configurations

Creating Fee Configurations

To create a new fee configuration:

  1. Click the Create Fee Configuration button
  2. Complete the fee configuration form
  3. Click Create

Fee Configuration Fields

When creating a fee configuration, you'll configure filters and attributes:

Filters: Which Transactions to Charge

Filters determine which transactions the fee applies to. Precedence order from most generic to most specific:

FieldRequiredPrecedenceDescriptionOptions/Format
Fee TypeYesN/AThe transaction type to charge fees onExchange, Deposit, Withdrawal, Transfer
Asset TypeNo1 (most generic)Apply this fee only to transactions with a specific assetLeave blank for all assets, or select a specific asset (e.g., BTC, ETH, USD)
Trade PairNo2For exchange fees: the specific trading pairSource and destination trade assets (e.g., BTC → USD)
Applicable to: Exchange only
CustomerNo3Apply this fee only to a specific customerLeave blank for all customers, or select a specific customer
RailNo4 (most specific)Apply this fee only to transactions using a specific railLeave blank for all rails, or select a specific rail (e.g., ACH, Wire, Bitcoin Network)
Applicable to: Deposit, Withdrawal

Attributes: How to Charge the Fee

Attributes define how the fee is calculated and where it is collected:

FieldRequiredDescriptionOptions/Format
Fee StructureYesHow the fee is calculated - either bps OR min/maxbps: Basis points (100 bps = 1%, e.g., 10 bps = 0.1%)
min: Minimum fee amount
max: Maximum fee amount
Note: Use either bps (percentage) OR min/max (fixed bounds), not both
Charge Asset TypeYesThe asset in which the fee is collectedSelect the asset for fee collection (e.g., USD, BTC)

Managing Fee Configurations

Updating Fee Configurations

To update an existing fee configuration:

  1. Click on the fee configuration you want to edit
  2. Modify the fields you want to change
  3. Click Update

You can update most fields including the fee amount, status, and targeting parameters. However, changing the fee type requires creating a new configuration.

Deleting Fee Configurations

To delete a fee configuration:

  1. Click on the fee configuration you want to delete
  2. Click the Delete button
  3. Confirm the deletion

Warning: Deleting a fee configuration is permanent and cannot be undone. The fee will no longer be applied to future transactions immediately after deletion.

Common Fee Configuration Examples

Here are some common fee configuration scenarios demonstrating both bps (percentage-based) and min/max (fixed bounds) structures:

ScenarioFee TypeFilters
Asset / Trade Pair / Customer / Rail
Attributes
Fee Structure / Charge Asset
Precedence Level
Standard Exchange FeeExchangeAll assetsbps: 100 (1%)
Charge asset: USD
Generic (no filters)
Premium Customer RateExchangeAll assets / - / Premium_Customer_123 / -bps: 50 (0.5%)
Charge asset: USD
Customer-specific (precedence 3)
BTC Deposit FeeDepositBTC / - / - / Bitcoin Networkmin: 0.0001 BTC
max: 0.001 BTC
Charge asset: BTC
Rail-specific (precedence 4 - most specific)
ACH Withdrawal FeeWithdrawalUSD / - / - / ACHmin: 5.00 USD
max: 25.00 USD
Charge asset: USD
Rail-specific (precedence 4 - most specific)
Free Transfer ProgramTransferAll assetsbps: 0
Charge asset: USD
Generic (no filters)
BTC/USD Trading FeeExchange
  • / BTC → USD / - / -
bps: 75 (0.75%)
Charge asset: USD
Trade pair-specific (precedence 2)
ETH Asset FeeExchangeETHbps: 150 (1.5%)
Charge asset: ETH
Asset-specific (precedence 1)

Key Points:

  • bps examples show percentage-based fees (100 bps = 1%)
  • min/max examples show fixed amount bounds
  • Precedence determines which fee applies when multiple match (Rail > Customer > Trade Pair > Asset Type)
  • Charge asset type specifies what asset the fee is collected in
  • Revenue Account must match the charge asset type

Fee Application and Monitoring

Automatic Fee Application

Once a fee configuration is active, fees are automatically calculated and applied when customers complete matching transactions. The fee is deducted from the transaction amount and deposited into the designated revenue account.

Fee Precedence

When multiple fee configurations could apply to a single transaction, the system uses the filter with the highest specificity. The precedence order from most generic to most specific:

  1. Asset type (most generic) - Applies to all transactions with a specific asset
  2. Trade pair - Applies to exchange transactions with specific source and destination assets
  3. Customer - Applies to transactions by a specific customer
  4. Rail (most specific) - Applies to deposit/withdrawal transactions using a specific payment rail

When multiple filters match a transaction, the most specific matching filter wins.

Best Practices

Start with Generic, Add Specific as Needed

Begin with generic fee configurations that apply to all customers or all transactions of a type. As your business grows, add specific configurations for premium customers, high-value assets, or special circumstances.

Fee Transparency

Be transparent with your customers about the fees you charge. Clearly communicate fee structures in your customer agreements and user interfaces. For guidance on fee disclosure requirements, see the Consumer Protection Guide.

Regular Review and Monitoring

Periodically review your fee configurations to ensure they align with your business model and remain competitive. Monitor revenue collection to understand which fee types generate the most revenue and which customers or transaction types are most active.

Test Fee Configurations

When creating new fee configurations, consider starting with inactive status or testing with a small group of customers before rolling out broadly. This allows you to verify the configuration works as expected before it impacts all customers.