Skip to main content

How invoicing works

You've learned about pricing and packaging and how Metronome computes a customer's spending. Now learn how Metronome produces invoices for your customer and the configuration options for managing those invoices.

Invoice components

For each billing period, Metronome generates an invoice for each of your customers. An invoice describes how much a customer spent during a billing period.

An invoice has two types of financial elements:

  • individual line items, derived from usage, flat fees, and so on
  • adjustments (optional), apply to an invoice as a whole, like enforcing minimum and maximum spending limits

Lifecycle of an invoice

Invoices are created with the status DRAFT at the beginning of each billing period. Draft invoices are continuously updated to show the spending in the current billing period.

When the billing period ends, the invoice becomes FINALIZED and is ready for collection. No further changes can happen to an invoice once it's reached the FINALIZED state, even if additional usage events are ingested. This guarantees that the finalized invoice you see in Metronome is exactly what your customer sees.

Grace period

By default, invoices aren't finalized until a 24-hour grace period has elapsed beyond the end of the billing period. This allows for lag in usage reporting. When you design usage events, your system may send hourly usage summaries to Metronome. If the billing period ends right before one of those hourly summaries comes in, the grace period includes that usage.

Contact your Metronome representative to help you configure the grace period. If your system doesn't require extra time to send in usage events, you can disable the grace period and a draft invoice becomes finalized as soon as the billing period ends.

Access Metronome invoices

Access a customer's Metronome invoices in the Metronome app by selecting the customer and clicking Invoices.

Access invoices through the API with the /customers/{customer_id}/invoices endpoint to list invoices within a given date range.

Collect payment

When an invoice is finalized, it's ready for collection. The billing configuration for each customer dictates what happens next. Configure billing when creating a customer in Metronome, and adjust it through the Metronome app or the /customers/{customer_id}/billing-config/{billing_provider_type} endpoint.

If a customer is configured for external billing, then payment is collected through the external billing provider, such as Stripe or AWS Marketplace.

If a customer is not configured for external billing, it is up to you to send the invoice to your customer.

Backdate an invoice

You can backdate an invoice as far back as needed, commonly used for correcting or amending contracts. If there is a delay in creating the subscription (for example, due to a mistake, normal processing time, or sales deals) you can still create an invoice for that entire period.

Metronome generates plans for each service period with the correct dates on each invoice. Usage collected during that time is applied to the plan, ensuring that there is no leakage during contract renewal talks.

Metronome logoMetronome logo