Billing
Bulk-load your customers' invoices from a spreadsheet, and use their payment history as a health signal.
LealUp does not invoice for you: it records what you already invoiced. With that payment history it can spot the risk product usage does not show, which is the customer who uses everything and does not pay.
Bulk invoice import
This is the main way to get your billing history in, and it is built so you can load years at once.
The recommended flow
- Download the template. It carries the exact columns the system expects, so you are not guessing names.
- Fill it in with your invoices.
- Run the dry run. There is a mode that processes the file without saving anything and tells you what would have happened. Always use it the first time.
- Fix whatever the dry run flagged.
- Import for real.
The dry run is the difference between finding a formatting error in 30 seconds and finding it with 4,000 invoices loaded wrong.
How the import behaves
Three rules worth knowing before you upload a large file:
- Up to 1,000 invoices per import. If you have more, split them across files.
- Each row lands on its own. A bad row does not sink the file: the rest imports and you only fix what failed.
- Re-importing the same invoice updates it, it does not duplicate. The system identifies it by invoice number. This is what makes it safe to retry an import that was cut short.
Nothing is saved unless at least one row succeeded.
Billing events
Beyond invoices, LealUp records collection facts: failed payments, disputes, dunning attempts, refunds. These can be bulk-loaded too.
Those events are what feed the payment-risk signal. An account with three failed charges in a row is an account at risk, even if its product usage looks perfect.
What all of this is for
- Payment risk in the Command Center. Accounts with overdue invoices or partial payments show up in your prioritized feed, alongside every other signal.
- Context on the customer record. Before a renewal, seeing the payment history changes the conversation.
- Health signal. Payment behaviour feeds into the account's health evaluation.
If you would rather not load by hand
There is also the Ingestion API, which lets you send billing events from your own system or your payment gateway, no spreadsheets involved.
Common problems
"I uploaded the file and nothing showed up"
If no row was valid, nothing is saved. Run the dry run: it will tell you exactly what is wrong.
"My import was cut short, will retrying duplicate?"
No. Re-importing the same invoice updates it. Retry with the full file.
"I have more than 1,000 invoices"
Split them into files of up to 1,000. Since re-importing does not duplicate, overlapping ranges are harmless.
"Can I delete a wrongly imported invoice?"
Correct it by re-importing with the same invoice number and the right data. That is the safest route.