nozle
    nozle

    Billing & invoicing | Nozle

    Invoices show revenue. Nozle shows the margin.

    Revenue on the invoice. Cost and margin per customer, from the same events.

    Five steps every billing system runs. Ours runs all five on one engine.

    From rated event to paid invoice, in one system.

    Cyclerate → roll up → issue → recover → close
    1. 01
      Rate with cost
      Each event is priced against the customer's plan — standard, graduated, volume, package, percentage or custom charge models.
    2. 02
      Roll up cleanly
      Lines aggregate by meter and plan version. Mid-cycle changes split at the boundary. Credits apply at the line.
    3. 03
      Issue, signed
      Signed at ship. Every line links back to its events and plan version. The PDF is just a view of the row.
    4. 04
      Recover, in sync
      Retries, dunning, and entitlement gates read one payment state. No mid-grace cutoffs. No phantom AR.
    5. 05
      Close in one push
      Sync invoices to NetSuite or Xero, with tax from Anrok or Avalara.

    The invoice isn't the whole story. Margin is the other half.

    Without cost data, margin is a guess from three exports. With Nozle, margin per customer, plan and metric comes from the same usage events.

    Invoice as billrevenue today · margin next quarter
    Cycle
    issued
    +30 days
    exports
    Margin
    ?
    MONTH → +30d
    Stripe export · ops cost CSV · joined in a sheet · margin estimated
    —
    What you can't tell
    which lines, products, or customers lost you money.
    Invoice + live marginmargin per customer from the same events
    Rated
    live
    Issued
    with margin
    Closed
    first try
    ACME · SEPT
    rev $2,418 · cost $1,062 · margin 56.1%
    62.0%
    What you ship
    an invoice the customer trusts, a P&L the CFO reads.
    INV-4421

    Four parts. One invoice your customer trusts and your CFO closes on.

    The invoice built from usage, the fees behind every line, the dunning that recovers failed payments, and the sync that pushes invoices to your accounting system.

    Prefer the schema?Read the invoice docs
    Invoice · INV-4421 · acme corp
    issued · sept
    Invoice total · sept
    $18,420$21,860+19%
    Lines
    14 (3 meters · 2 plan versions)
    Revenue
    $21,860
    Cost basis
    $8,310 (38.0%)
    Gross margin
    $13,550 (62.0%) ▲

    Customer, support and finance read the same invoice. Credit notes attach to it; margin per customer comes from the same events.

    Step 01 of 04

    Between your processor and your GL — the row they share.

    Keep your processor and your accounting system. Nozle is the ledger underneath both.

    01 · Processors they move money

    Stripe is a rail. The record is yours.

    We issue. They move money. Results land back on the line that produced them.

    Stripe
    Adyen (coming soon)
    Razorpay
    • One retry schedule. One payment state.
    • Stripe for cards worldwide, Razorpay for INR.
    02 · Accounting GL coding on the row

    Invoices arrive mapped.

    Items and tax mapped once in Settings. Invoices and credit notes sync as they finalize.

    gl_mapping.live
    inference_tokens: → item 4010
    storage_gb: → item 4030
    seats: → item 4100
    credits_issued: → credit note · 4900
    • NetSuite and Xero.
    • Tax from Anrok or Avalara.
    03 · Everything downstream same row

    One row. Every team reads it.

    Portal, support, entitlements — same line. No tiebreakers.

    fanout.live
    portal: line-level drill-down
    support: one-click credit on source
    entitlements: payment state → wallet
    accounting: netsuite · xero
    • Webhook every state change.
    • Audit trail on every cent.
    Every change ·invoice_idfees[]boundariesplan_version_at_issuepayment_statuscredits[]

    Stop billing blind. See margin per customer.

    Invoices, credit notes and dunning in Nozle. Margin per customer from the same events.

    Charge models
    8
    Dunning
    built in
    Credit notes
    built in
    Processors
    Stripe · Razorpay