Every month, someone on your team sits down and creates the same invoices from scratch. Look up the customer. Type in the line items. Send the email. Hope they pay. Multiply that by 20 or 50 or 100 customers and you’re spending hours on busywork that should be automatic.

I’ve been there. I built BasicBMS because I was running my business on calendar reminders and spreadsheets. Billing was one of the first things I had to fix — because when you forget to invoice a customer, you don’t get paid. Nobody calls to remind you.

Automated recurring billing in BasicBMS solves this. Set it up once. The system handles every cycle after that.

How It Works

You start with a template invoice — a standard BasicBMS invoice with the customer, line items, and pricing already configured. This invoice is the blueprint. You don’t send it. The system clones it.

Next, attach a billing schedule. Monthly on the 1st. Quarterly. Yearly. Every 45 days. Whatever your contracts call for. BasicBMS uses standard calendar recurrence rules, so there’s no practical limit on how you structure your billing cycles.

On each billing date, the system clones the template into a new invoice with a unique invoice number. All line items, contacts, and pricing carry over automatically. If auto-charge is enabled and the customer has a card on file, Stripe charges the card and credit card processing fees are calculated and applied as a surcharge. The customer gets an email with a professional PDF invoice. The billing log records everything.
What Happens When Things Go Wrong
Cards get declined. Cards expire. Some customers don’t have a card on file at all. The system handles every scenario.

If auto-charge is on and the card fails, the invoice still gets created — it’s just flagged as “Failed” on your Billing Dashboard with the specific error message from Stripe. Your team can see exactly what happened and retry.

If there’s no card on file, the invoice is flagged as “NoCard.” Your team can send the customer a payment link or capture a card directly from the dashboard.

If auto-charge is off entirely, invoices are created and queued as “Ready” for your team to review and charge manually. Every path leads to the same place: a paid invoice, tracked and reconciled.

The Billing Dashboard

The Billing Dashboard is the command center for your entire billing operation. Three tabs give your team complete visibility and manual control.

The Upcoming tab shows projected billing dates before they fire — customer name, template invoice, and next billing date. No surprises.

The In-Process tab is the action center. Every billing item that needs attention lands here with the customer, invoice number, amount, status, and action buttons. Charge a card. Send an email. Do both, or just one. They’re independent actions, so your team works the queue however makes sense.

The Schedules tab is where you manage recurrence rules and toggle auto-charge per customer.

The smart part: once an invoice is fully paid — whether from the dashboard, the invoice screen, a checkout link the customer used, or a manual payment recorded for check, cash, or Zelle — the billing log updates automatically. The system reconciles payment status across every channel. No orphaned records. No manual status updates.

Card-on-File and Customer Self-Service

Card capture uses Stripe’s hosted checkout page. Your team sends the customer a secure link. The customer enters their card. Stripe tokenizes it. The card number never touches your server. PCI compliance is handled.

Customers also get access to a self-service portal through Stripe where they can add new cards, remove old ones, and update expiration dates — without calling your office. That’s fewer support calls for your team and more autonomy for your customers.

Multiple cards per customer are supported. The system charges the default payment method and falls back to the first available card if no default is set.
Manual Overrides and Duplicate Protection
Your team can manually trigger any billing schedule outside its normal cycle. Customer asks to be billed early? Run it. Failed attempt that needs to be re-processed? Run it again from the dashboard. Testing a new configuration? Fire it off.

The system prevents duplicate processing automatically. If a billing date has already been processed, it won’t run again. No risk of double-billing a customer.

Security and Compliance

Automated billing touches money, so security is non-negotiable. Card data is handled entirely by Stripe — tokenized, PCI-compliant, never stored on your server. Each company has isolated Stripe API keys and webhook secrets. All webhook events are cryptographically verified. Billing actions are restricted by role-based access. And every action is logged with timestamps, amounts, and error details for a complete audit trail.

Who This Is For

If you bill customers on any kind of recurring cycle — monthly service fees, quarterly maintenance contracts, annual subscriptions, utility billing — and you’re still doing it by hand, this feature is for you.

It’s another piece of BasicBMS that lets you run your entire operation from one system. No add-ons. No third-party billing platforms. No duct tape.

See it in action: Watch the full walkthrough above, or visit basicbms.com/pricing to see how it fits your business.

About BasicBMS

BasicBMS is a fully customizable Business Management System designed to streamline operations from CRM to Accounting. Whether managing sales, tracking inventory, or optimizing workflows, our platform adapts to your unique business needs—saving you time and increasing efficiency.

2026
This is your year
Built for Businesses by Businesses

Simplify, Centralize, Automate