Request a Demo
Shared Functional

Rate & Fee Engine

Universal configurable rate and fee calculation engine — every revenue-generating product computes charges through a single, auditable pricing layer.

≤50ms

Calc Latency

≤30min

Batch (100K)

100%

Calc Accuracy

≥1K/s

Concurrent Lookups

Purpose-Built for Canadian Municipalities

Ontario Compliant
MFIPPA Ready
AODA Accessible
Bilingual Support
Canadian Hosted
SOC 2 Aligned

Purpose & Scope

What this module owns

Clear ownership boundaries prevent duplication and ensure every capability has exactly one authoritative home.

Owns

8

Delegated to

4

GL posting of calculated amounts

financial-core

Bill generation from calculated rates

billing-invoicing

Payment processing

payment-engine

Approval workflow for rate changes

workflow-automation

These capabilities are handled by dedicated modules and consumed via stable API contracts — keeping boundaries clean and ownership unambiguous.

Core Capabilities

What it does

4 capability groups comprising 8 discrete capabilities — each with API surface, business rules, and data ownership.

Create and version rate tables with effective date ranges, approval workflow for rate changes, rate comparison across years, and bulk import/export.

Versioned Tables

Create/version rate tables with effective date ranges; unlimited version history with full audit trail.

Approval Workflow

Rate changes require approval before activation; configurable advance notice period (default 30 days).

Year-over-Year Comparison

Compare rate tables across years to analyze trends and communicate changes to council and public.

Bulk Import/Export

Import rate tables from CSV/Excel; export for offline review or council presentations.

Manage fee schedules per service/product with fixed, per-unit, percentage, formula, or rate-table-referenced calculation methods and HST handling.

Calculation Methods

Fixed, per-unit, percentage, formula-based, or rate-table-referenced — configurable per fee.

HST Handling

Per-fee HST applicability flag with Ontario HST rate (13%) and municipal rebate rate applied automatically.

Bylaw Reference

Each fee linked to authorizing council bylaw for legislative traceability.

GL Account Mapping

Every fee mapped to the correct GL revenue account in financial-core.

Every module owns a single bounded context, exposes stable APIs, and can be composed into any Civic product — that's the architecture that scales.

Krutik Parikh

Creator of Civic

Data Model

Entity Architecture

5 entities with 6 relationships — the authoritative schema for this bounded context.

Entities

Select an entity to explore its fields and relationships

API Surface

Integration Endpoints

10 RESTful endpoints across 6 resource groups — plus 4 domain events for async integration.

|
GET

/api/v1/rates/tables

List rate tables (filter by service, status, date)

POST

/api/v1/rates/tables

Create rate table

GET

/api/v1/rates/tables/{id}

Get rate table with lines

Technical Specifications

Performance, Compliance & Configuration

Single Calculation Latency

Target≤ 50ms

Batch Calculation (100K accounts)

Target≤ 30 minutes

Rate Table Versioning

TargetUnlimited history

Audit Trail

TargetEvery rate change tracked

Concurrent Rate Lookups

Target≥ 1,000/second

Calculation Accuracy

Target100% (financial precision)

FAQ

Frequently Asked Questions

Ready to Integrate

Build on Rate & Fee Engine

Request an architecture brief, integration guide, or live demo environment for your team.