BadCop › Integrations › Stripe Invoicing
Automatic, escalating invoice reminders for Stripe Invoicing
Stripe's Invoices page exports CSV with id, customer, amount, status and due date. Payouts and balance transactions export separately for matching.
1. Export your invoices
In Stripe Invoicing, find the invoice list or the invoice report and export it as CSV (menu names move between versions; look for Export or Download). You need, at minimum, the invoice number, the customer name and email, the amount, and the issue date. Include the due date and status if the export offers them.
2. Map the columns
| BadCop column | From the Stripe Invoicing export |
|---|---|
invoice_id | Invoice number / ID |
client_name | Customer / Client name |
client_email | Customer email (add a column if the export lacks it) |
amount | Total or Amount due, excluding any fees |
issued_date | Invoice date, as YYYY-MM-DD |
due_date | Due date, or leave blank to use your net terms |
status | open for unpaid / sent / overdue, paid for paid, void for cancelled |
Rename the headers in a spreadsheet and save as invoices.csv. BadCop validates every row and tells you the line number of anything it cannot read.
3. Run the ladder
badcop init
# replace invoices.csv with your export, edit badcop.toml
badcop run --dry-run --verbose # read every email first
badcop run # schedule this daily
4. Close invoices when the money lands
Export payments or bank transactions (from Stripe Invoicing or from your bank) and run badcop match payments.csv --apply. Amounts are matched to open invoices; the matched ones are marked paid and their reminders stop. Ambiguous lines are listed for you.
Stripe Invoicing is a trademark of its owner. BadCop is an independent open-source project and is not affiliated with it.