Client billing runs periodically SQL query for live channels, send payments and creates jobs.
Billing responsible for:
Send payments. It compares actual usage (converted to tokens) to last sent payment amount and sends payments, if necessary.
Payment frequency is controlled by offering billingFrequency (aka BillingInterval) parameter.
Termination of services, that was suspended longer that maxSuspendTime for corresponding offering. It prevents client from occupating service without using it for indefinite time. Same operation is performed on Agent side. Thus it is done to keep service state synchronized between Agent and Client.