Fee Planning Reference
Deterministic fee planning for production call surfaces.
Fee Model
| Property | Behavior |
|---|
| Pricing basis | bounded operation category |
| Congestion auction | none |
| Drift/surge pricing | none |
| Determinism | same bounded call shape => same fee envelope |
Fee Surfaces
| Surface | Endpoint / Command |
|---|
| Protocol quote | GET /v1/fee/quote |
| Contract estimate | mistc fees <file.mist> |
| Runtime realized fee | receipt (/v1/mist/receipts/:id) |
Estimation Commands
mistc fees contracts/orderbook.mist
curl "https://rpc.rivellum.network/v1/fee/quote?kind=transfer"
Implementation Pattern
- Pre-check fee ceiling client side.
- Set
max_fee at submit path.
- Persist realized receipt fees for analytics.
- Reject UI flows when envelope exceeds budget policy.
TypeScript Budget Guard
const quote = await fetch('https://rpc.rivellum.network/v1/fee/quote?kind=transfer').then(r => r.json());
if (quote.fee > userBudget.maxFeePerIntent) {
throw new Error('fee envelope exceeds budget policy');
}
Production Controls
| Control | Target |
|---|
| max fee per intent | caller policy |
| max daily spend | account/session policy |
| contract allowlist | account auth policy |
| call-shape allowlist | app-level validation |
Anti-Patterns
- assuming p95/p99 fee movement under congestion
- using latency metrics as fee proxies
- omitting
max_fee checks in submit path
Related References
/docs/dev/getting-started
/docs/dev/contract-lifecycle
/docs/dev/production-operations