BillingWindow & BillingGroup - more documentation


Current documentation is:

Parametric based type for all C3 Obj types that can be persisted in either the relational or KV datastore.

Contains all of the system fields and base functions relevant to persisting and retrieving data.

Is that correct?
Can you provide use cases to illustrate the role of those types.




The docs i see for BillingWindow are: “Interval in time for which a bill would be generated”

Basically, some customers don’t get bills for a month, they get bills for some arbitrary start/end time. The BillingWindow defines that time range. It is associated to a BillingGroup. A BillingGroup is just an association of one or several ServicePoints (locations at which resources are delivered) to one or several BillingWindow.

So, a ServicePoint is associated with a BillingWindow through a BillingGroup



Generally correct, although at least in base code BillingGroup is an attribute of BillingAccount, not ServicePoint.

Also, The business reason for “arbitrary start/end time” is to implement rolling billing throughout the month. Every business day, a fraction of customers gets billed, thus spreading the workload on billing-related processes (i.e. sending out paper bills, etc).