Overview
Telcos are still shipping products like it’s 2009: hard-coded catalogs, promo spaghetti, and pricing taped to spreadsheets. We bring Modern Retailing discipline to telecom — the same Offer & Order rigor airlines used to break out of legacy. Configure plans on the fly, compose bundles across mobile/fixed/TV/IoT, and price using formulas or ML with guardrails. All explainable.



High-impact use cases
Plan configurators
Build-your-own data/voice/SMS with eligibility, device financing, and instant ARPU checks.
Converged bundles
Mobile + fiber + TV + cloud gaming — composed per household, priced by segment and capacity.
Roaming & travel passes
Dynamic zonal pricing with partner rates, FX, usage forecasts, and fraud guardrails.
Device financing
Subsidy recovery over term with churn risk & credit score inputs. Explainable, regulator-friendly.
Network-aware promos
Throttle offers by cell/region when utilization spikes. Sell responsibly, protect QoS.
SMB & enterprise quotes
Multi-site fiber + mobile fleets with approval flows, discount guardrails, and audit trails.
How our modules fit
- Dynamic Validation — eligibility (coverage map, credit checks, device compatibility), FUP, and policy rules.
- Offer Engine — compose plans, add-ons, devices, rebates, and converged bundles with reasons.
- Dynamic Pricing — formulas or ML for plans, add-ons, devices, and promos with floors/ceilings.
- Stock Keeper — treat inventory & capacity as first-class: IMEI/device stock, install slots, cell/OLT capacity.
- Order Store — quote → order → activation with append-only audit for compliance and support.
Plan & add-on pricing (illustrative)
// Monthly plan price with ARPU/elasticity guardrails
let p = basePlanPrice(tier, region)
+ addOns(dataGB, intlMinutes, 5GBoost);
p *= (1 + alpha * competitorDelta(market)) // benchmarking
* (1 + beta * utilization(cellId, timeBand)) // network load awareness
* (1 - gamma * tenureDiscount(months)); // loyalty
p = recoverSubsidy(p, deviceSubsidy, termMonths); // device financing recovery
p = clamp(p, floorByTier(region), ceilingByTier(region));
assert(ARPU(p, expectedUsage) >= targetARPU(segment));Device financing example
// Effective monthly fee including device
monthly = planPrice + (devicePrice - upfront - tradeIn) / termMonths
+ riskAdj(creditScore, churnProb);
assert(margin(monthly, costToServe) >= minMargin);

Reference architecture
Each engine deploys independently with clean APIs and strong observability. We sit neatly alongside BSS/OSS, CRM, catalog, billing/mediation, and network policy. Cloud-hosted or your VPC — your call.

Key design choices
- Offer → Order separation: configure first, bind later; every decision is versioned and explainable.
- Rules as data: JSON rules with type-safe validators, hot-swap, A/B, and staged rollout.
- Pricing plug-ins: expressions, GLM/ML runners, or bridges to your catalog/billing rating.
- Capacity Keeper: counters on device stock (IMEI/SKU), cell/OLT utilization, and install calendars.
- Observability: inputs → decisions → outputs traced per quote; audit packs for compliance.
FAQs
Do we replace our catalog/billing?
No. We front them with a composable offer/pricing layer and write orders back cleanly.
Can we launch BYO plan configurators without breaking everything?
Yes — start in a single channel, shadow existing logic, then graduate with guardrails.
How do you handle network capacity?
Capacity Keeper tracks counters by cell/region/time and can throttle offers or deflect gracefully.
Regulatory & pricing transparency?
Every price carries inputs, rule version, and reasons. Floors/ceilings, fair-usage, and consumer-law disclosures are enforced in rules.
Performance?
Airline-grade SLOs: sub-100ms median for rule paths; scalable ML with caches and warm pools.
