- Metadata about you as a vendor (e.g. your logo, name, business address)
- Metadata about your customer (e.g. shipping and billing address, tax information)
- A list of line items representing accrued charges, usually for an active billing period. These line items ladder up to an amount due for the end user.
- Invoice terms, including its due date and auto-collection settings
Types of invoices
Invoices can either be associated with a recurring subscription or represent an ad hoc charge. For example, when adding pre-purchase credits to an Orb customer, Orb can issue a one-off invoice based on the cost-basis of these credits — this invoice is not associated with a subscription, and does not inherit any prices from a plan.Custom invoice grouping
It can be useful to group invoice line items in a more meaningful way for your customers than the individual prices that are configured in Orb. For example, as an infrastructure provider you might have a plan with prices corresponding to charges for storage, network traffic, and compute across each cluster that your customers operate. By default, this would generate an invoice that breaks down each of these costs aggregated across all clusters. If each of your reported events to Orb contains acluster_name
, then Orb can automatically re-organize your invoice to be grouped by the cluster’s name at the top level. Orb would then automatically split the costs of storage, network traffic, and compute for each cluster.
Custom invoice grouping is only available for non-decomposable metrics (metrics that are possible to incrementally compute, e.g.,
SUM
or COUNT
).Invoice states
Orb manages your invoice lifecycle automatically while still allowing you to use manual actions (like manually voiding, issuing, and marking invoices as paid) when you need them to maintain control. For the vast majority of workflows, Orb Invoicing’s integration with the underlying billing system and payment gateway eliminates manual process entirely.
- If your account is configured to issue invoices automatically, the invoice will immediately be issued.
- If your account is configured to require manual issuance of invoices, the invoice will transition to the action needed state. It can then be manually issued from the webapp or API.
issued
, it can:
- Transition to the
paid
state. This may happen as the result of an Orb-initiated auto-collection action, a user paying the invoice through the invoice portal, or the invoice being manually marked as paid. Note that $0 invoices are automatically marked aspaid
upon issuance and do not send email notifications. - Transition to the
synced
state. Orb supports syncing to enterprise invoicing providers, such as Bill.com and Stripe Invoicing — this is a one-way sync, and Orb will not pick up changes to the invoice once it’s synced. - Transition to the
void
state by being manually marked as void. When an invoice is voided, any balance it consumes is reversed.
Payment failed
state (representing either invoice that failed to issue due to a misconfiguration, or a failed payment), a Processing
state (representing invoices whose payment is in progress), and an Action needed
state (representing invoices that require manual issuance). The dashboard is optimized for actionability, allowing you to quickly triage invoices that require your attention and to provide an easy way to summarize the month’s invoices.
Once an invoice’s grace period has elapsed and it is eligible for auto-issue, it will be in a pending issue
state in the Orb dashboard, to signify that Orb will shortly issue the invoice. No manual action is required in this state.
Test mode vs live mode invoice deletion
Orb allows different invoice deletion behaviors depending on whether you are operating in test mode or live mode: Test mode:- Invoices can be deleted even after they have been issued
- This provides flexibility for testing and development scenarios where you may need to clean up test data
- Deletion is supported for invoices in any state (draft, issued, paid, etc.)
- Issued invoices cannot be deleted to maintain data integrity and compliance
- This restriction helps ensure accurate financial records and audit trails
- Only draft invoices can be deleted before they are issued (must be done via Orb Support)
- For issued invoices that need to be corrected, use credit notes or void the invoice instead
The test mode environment is completely isolated from live mode, so any invoice deletion in test mode will not affect your production data or financial records.
Synced invoices
If you’re migrating to Orb with an existing invoicing solution in place, Orb’s invoicing model allows you to maintain these connections via Bill.com, Stripe Invoicing, QuickBooks Invoicing, and NetSuite. With these invoicing connections in place, Orb does not handle email delivery of your invoice, and cannot track the invoice status. If the invoice is paid (or manually edited or voided), these changes do not automatically reflect on Orb’s invoice. Setup To set up these invoicing methods, two mappings need to be configured:- A mapping between Prices and Items in Orb to the corresponding Services or Products in the invoicing provider. This ensures that line items will be labeled appropriately.
- The link between an Orb customer and a customer in the invoicing provider, in order to properly attribute the invoice. Note that this also requires setting the
payment_provider
attribute on the customer to the corresponding provider.
- Individual line items, including amount, quantity, and rate information.
- Invoice due date and terms (e.g. Net 30 days)
- Line items for discounts and minimums, both for individual line-items and for the plan as a whole
- Tax rates as managed by the invoicing provider
Because Orb does not serve as your invoicing provider when an invoice is synced, actions that cause the invoice to be modified in Orb will not reflect in the third-party solution. For example, a backdated action that causes the invoice to be voided will not reflect in the invoicing provider.Be sure to test this workflow when using backdated actions in combination with third-party invoicing solutions.
- If custom transaction numbers are disabled,
- QuickBooks will use its own numbering sequence (next available number)
- The Orb invoice number gets stored in a separate custom field called “Orb Invoice Number” for reference
- If custom transaction numbers are enabled,
- Orb will push the Orb invoice number as the Quickbooks invoice number (
DocNumber
field) - Note: as long as the Orb invoice number is under 22 characters given Quickbook’s limitation of 21 characters.
- Orb will push the Orb invoice number as the Quickbooks invoice number (