Apex metering
Usage metering you can read, test and explain to a customer.
A meter is the rule that turns raw records into the number on an invoice. In Apex every meter is a definition you can read: what it counts, which records it filters, and over what period. When a customer asks why they were billed for 1,284 pallet-days, the answer is one click away.
- Source
- ERP deliveries
- Aggregate
- SUM(distance_km)
- Filter
- status = delivered
- Period
- Calendar month
Aggregations
Six ways to turn records into a quantity.
- Count
- How many records matched: deliveries made, tickets closed, API calls.
- Sum
- The total of a numeric property: kilometers driven, kilowatt-hours, tons shipped.
- Unique
- How many distinct values of a property: active users, sites served, unique SKUs.
- Max
- The peak in the period: the highest concurrent seats, the largest daily storage.
- Latest
- The last reading in the period: a meter reading, an end-of-month balance.
- Custom formula
- Arithmetic across properties, such as weight times distance, for the cases a single aggregation cannot express.
Defining a meter
Filters and periods that match how the contract is written.
Property filters
Count only refrigerated loads, only weekend hours, only one site. Filters run on any property the record carries.
Calculation periods
A meter can measure daily peaks while the invoice is monthly. The calculation period and the billing period are set separately.
Versioned definitions
A change to a meter is a new version with a start date. Past periods keep the definition they were billed under.
Test before it counts
Run a new meter against last month's records and compare the result before any invoice uses it.
Sources
Records from your product and from the ERP, metered the same way.
| Product and warehouse usage | ERP-sourced usage | |
|---|---|---|
| Examples | API calls, active users, storage | Deliveries, timesheets, equipment hours, meter readings |
| How it arrives | Events API, or imports from Snowflake, BigQuery or Postgres | Read through the ERP connection already in place |
| Duplicates | Rejected by idempotency key | Matched on the ERP's own document key |
| Late records | Re-rate the period they belong to | Re-rate the period they belong to |
Agents propose, people approve
The agent drafts. A person decides.
A usage anomaly agent watches every meter for spikes, drops and missing feeds and explains what it found. The meters themselves are deterministic definitions; no model decides a quantity.
Every agent stops at an approval gate until it has earned its way out of one. Nothing releases cash, commits spend or touches a customer without a person saying so.
Your dataModels that read your data run inside your environment, behind your firewall. No client data reaches a frontier lab.
Start here, keep the foundation
Start with usage metering. Add the rest without starting over.
Metering can be the first thing a company switches on, ahead of billing, to see what its contracts would charge. The customers and contract lines it meters against come down from the ERP into your Ferrata foundation, so turning on usage billing afterwards uses the same meters and the same records.
FAQ
Questions, answered plainly.
What is usage metering?
Usage metering is the step between raw usage records and a billable quantity. A meter defines which records count, how they are aggregated (counted, summed, the peak, the latest reading) and over what period. Billing then prices that quantity.
Which aggregations does Apex support?
Count, sum, unique, max, latest, and custom formulas that combine properties. Each meter can filter records on any property they carry, such as site, product, load type or time of day.
Can a meter use data from our ERP?
Yes. Deliveries, timesheets, service tickets, equipment hours and meter readings are read from SAP, NetSuite or Dynamics through the same connection Apex uses for customers and invoices, and metered exactly like product events.
What if we change how a meter is calculated?
The change becomes a new version of the meter with a start date. Periods already billed keep the definition they were billed under, so a past invoice can always be reproduced.
How do we know a new meter is right?
Run it against a past period and compare the result with what you billed, before any live invoice uses it. Billing runs can also be simulated against a test copy of your data.
Can customers see their metered usage?
Yes. Verified contacts can see usage by meter and by period in the customer portal, which shows the same quantities the invoice was built from.
Related in Apex
- Usage-based billingBill what customers used, rated at the price they signed, posted to your ERP.View
- InvoicingInvoices calculated in Apex, checked against the PO, posted to your ERP first.View
- Customer portalInvoices, usage, credits and contracts for your customers, behind a verified link.View
- Dynamics 365Business Central and Finance and Operations, from sales order to general journal.View
From Ferrata Labs
- The platformThe Brain: retrieval, models and audit inside your own environment.
- Ferrata in logisticsFreight, 3PL and last mile.
- Ferrata in manufacturingProduction, quality and procurement, on SAP, NetSuite or Dynamics.
- Book a discovery callThirty minutes on one workflow, and an honest answer on where to start.
Start with usage metering, or talk it through first.
Thirty minutes with Ferrata Labs on one workflow. You leave with a view of where Apex fits, and an honest answer if the sequencing is wrong and you should fix something else first.
Your pricing, approval and billing rules are your advantage, and they stay yours. Apex is configured to the way you sell and bill. You are not handing over a playbook or fitting into a template.