Fees

Volume-based maker/taker tiers, in percent, straight from the fee engine — with a maker rebate at the top tier.

Trading fees are volume-based. Your tier is set by your 30-day rolling trading volume (in CAD); higher tiers pay lower fees, and the top tier earns a maker rebate (a negative maker fee — you are paid to provide liquidity). A maker adds resting liquidity to the book; a taker removes it.

Schedule

Rates are percentages of the traded notional (the engine divides by 100 internally — a 2.00 taker rate is 2%). This table is generated from FEE_TIERS in app/services/fee_service.py and drift-gated in CI.

Tier30-day volume (CAD)MakerTaker
Bronze≥ 01.00%2.00%
Silver≥ 1,0000.80%1.50%
Gold≥ 10,0000.50%1.00%
Platinum≥ 50,0000.20%0.50%
Diamond≥ 250,000−0.05% (rebate)0.30%

At the Diamond tier the maker rate is negative — a rebate credited to makers who post liquidity.

Reading your fees over the API

Two public endpoints expose the schedule and your current standing:

Public schedule (no auth)
$curl "https://staging.drazill.com/api/v1/fees/schedule"
Your tier (authenticated)
$curl -H "X-API-Key: $DRAZILL_API_KEY" \
> "https://staging.drazill.com/api/v1/fees/my-tier"

GET /fees/schedule returns all tiers plus the current withdrawal fee percentage; GET /fees/my-tier returns your tier name, maker/taker rates, 30-day volume, and progress to the next tier. Source: app/api/routes/fees.py.

Quotes are authoritative

Before placing an order you can preview a fee-inclusive quote (preview_order_quote in the SDKs). The fee shown in the quote is the fee that will be charged, and the quote token binds it when you place the order — so the disclosed fee equals the charged fee. Fees round up to the cent in the platform’s favour (How pricing works); treat the quote and the execution receipt the API returns as the source of truth rather than recomputing fees client-side.

An admin can globally override the maker/taker rates; when an override is active it applies in place of the tiered rates above. The GET /fees/* endpoints always reflect the rates actually in effect.