Customers and Plans
Once your first invoice is out, Autessa Payments makes the next one take seconds. Customers are saved automatically, templates and recurring invoices handle repeat billing, reminders chase late payments for you, and plans let people subscribe to the apps you build on Autessa.
What it's for
- Repeat billing without retyping. Pick a saved customer, start from a template, or set up a recurring invoice once and let Autessa send it every month.
- Getting paid on time. Automatic reminders go out before and after the due date, so you don't have to chase anyone.
- Looking like your business. Your logo, color, and terms appear on every invoice, payment page, and email.
- Selling subscriptions. Define plans once and offer them in any app you build. Customers subscribe, pay, and manage their subscription on Autessa-hosted pages, and your app knows who is paying.
Navigating here
Everything lives under Payments in the sidebar. The Payments page links to each list: Customers, Invoice templates, Recurring invoices, Plans, and Subscriptions. Branding is a section on the Payments page itself.
Customers
Customers appear automatically. Every invoice you send adds or updates its customer, matched by email address, and so does anyone who subscribes or pays inside one of your apps. Customers from invoices you sent before the list existed are added the first time you open it.
The list shows each customer's name and email, the app they signed up in (if any), how many invoices they have, what they've paid, what's outstanding, their active subscriptions, and their last activity. Use the search box to find someone by name or email.
How to add a customer yourself
- On Customers, click Add customer.
- Enter a name and email, plus a phone number and address if you have them. The address is used for sales tax.
- Save. Each email address can belong to only one customer.
How to work with a customer
Click a customer to open their page. It shows their contact details, totals for Paid, Outstanding, and Invoices, their subscriptions, and every invoice. From here you can:
- New invoice opens the invoice form with this customer filled in.
- Send subscription link emails them a link to subscribe to one of your plans. See How to send a subscription link.
- Edit changes their name, email, phone, or address.
- Archive hides the customer from the list. You can't archive a customer who has an active subscription; cancel it first. Sending them a new invoice brings an archived customer back.
On the invoice form, start typing in the Customer section to pick a saved customer. Changing the email on the form starts a new customer instead.
Invoice templates
A template holds the lines, default payment terms, and note for an invoice you send often.
How to create a template
- On Invoice templates, click New template. Or open any invoice and choose Save as template.
- Give it a name. Names must be unique.
- Add the line items, the default terms (or No default), and an optional note.
- Save.
How to use a template
- On Invoice templates, click Use next to a template, or
- on a new invoice, choose Start from a template.
The invoice form fills in the lines, terms, and note. Pick the customer and send. Editing or deleting a template never changes invoices you already made from it.
Recurring invoices
A recurring invoice bills a customer on a schedule. Autessa creates each invoice on the day it's due to go out and either emails it for you or saves it as a draft for you to review.
How to set up a recurring invoice
- On Recurring invoices, click New recurring invoice. Or open an invoice and choose Make it recurring to start from it.
- Choose the Customer and add line items, or start from a template.
- Set the Schedule:
- Repeats every some number of weeks, months, or years.
- First invoice on a date between today and a year from now.
- Ends never, on a date, or after a number of invoices.
- Choose the payment terms and an optional note.
- Under Delivery, choose Email it to my customer automatically or Create a draft for me to review first. With drafts, you get an email each time one is ready to review.
- Check the Summary, which shows the amount and the next three invoice dates, then save.
Monthly schedules keep to the original day where they can: a schedule that starts on January 31 bills on February 28, then March 31.
How to pause, resume, or end one
Open the recurring invoice and use the buttons at the top:
- Pause stops new invoices until you resume.
- Resume picks up at the next scheduled date. It doesn't create invoices for the time it was paused.
- End stops it for good. Invoices already sent aren't affected.
The page also lists every invoice the schedule has created. Edit changes the customer, lines, schedule, or delivery; invoices it already created don't change.
If an invoice is due to be emailed automatically while your Payments account can't take payments (for example, while verification needs attention), Autessa skips it, emails you, and moves on to the next date. Finish verification, then create the skipped invoice by hand.
Automatic reminders
Autessa can email your customer about an unpaid invoice three times:
- 3 days before it's due,
- on the due date,
- 7 days after it's due.
Reminders are on for new invoices. To turn them off for one invoice, clear Email automatic reminders on the invoice form, or use the Automatic reminders card on the invoice page. The card also shows which reminders were sent and when the next is scheduled.
Each reminder is branded like your invoice, includes the PDF, and has a Pay invoice button. Reminders stop as soon as the invoice is paid or voided, and Autessa never sends one within two days of another email about the same invoice. Invoices sent before automatic reminders were available have them off; turn them on from the invoice's Automatic reminders card.
Branding
Branding applies to your invoices and PDFs, the pay page, every email your customers get, and the checkout and subscription pages.
How to set your branding
- On the Payments page, go to Branding.
- Under Logo, click Upload and choose a PNG, JPG, or WEBP image under 1 MB.
- Under Accent color, pick a color. The sample Pay invoice button shows how it looks. Choose a color dark enough for white text to stay readable; Autessa asks for a darker one if it isn't.
- Under Terms and notes, add anything you want printed on every invoice, such as payment terms or a thank-you note (up to 1,000 characters).
- Click Save.
Plans
A plan is something people can subscribe to: a name, a price, how often it renews, and an optional free trial.
How to create a plan
- On Plans, click New plan.
- Enter a name, a price (at least $0.50), and how often it renews: every so many days, weeks, months, or years.
- Optionally add free trial days, a description, and up to ten features. Features show as a list wherever the plan is offered.
- Under Offer in, choose All apps or one app.
- Save.
How to change or archive a plan
Open the plan and click Edit. You can change anything. If you change the price or how often it renews, current subscribers keep their price; only new subscribers pay the new one.
Archive a plan to stop offering it. Archived plans no longer appear in your apps and are listed separately on the Plans page.
Subscriptions
The Subscriptions list shows every subscription with its customer, plan, status, price, next charge, the app it came from, and when it started. When a charge has failed, the row also shows the retry in progress (for example, Retry 2 of 4 on Nov 14, 2026) and why the last charge didn't go through. Filter by status at the top. Click a row to open the subscription.
| Status | What it means |
|---|---|
| Active | Paid up. The next charge happens automatically on the date shown. |
| Free trial | In the free trial. The first charge comes when the trial ends; the customer gets an email 3 days before. |
| Payment overdue | The latest charge didn't go through. The customer keeps access while Autessa retries, and gets an email with a link to pay or update their card. |
| Ended | The subscription is over and the customer no longer has access. It ended because someone canceled it or because the card was declined on every retry. |
| Waiting for payment | The customer started checkout but didn't finish. |
How renewals work
Autessa runs each subscription for you. There's no extra subscription fee: card processing and sales tax work the same as on any invoice.
- Renewal. On the renewal date, Autessa creates the invoice for the next period, adds sales tax, and charges the card the customer saved at checkout. The customer gets a receipt, and the invoice appears in the subscription's Cycle history.
- If a charge fails. The subscription shows Payment overdue and the customer gets an email with a link to pay the invoice or update their card. Autessa tries the card again 1, 3, and 7 days later. If the customer pays the invoice or updates their card in the meantime, the subscription is active again and the next period starts.
- If every retry fails. After the fourth declined charge (the first try plus three retries), the subscription ends and the invoice is voided. You and the customer both get an email, and the customer can subscribe again from their billing page.
- Free trials. The customer adds a card at checkout and isn't charged until the trial ends. They get a reminder 3 days before the first charge.
Subscription invoices are ordinary invoices: they show up on the customer's page with a receipt. You can't edit, resend, or void them; the subscription manages them.
How to view a subscription
Open a subscription from the Subscriptions list or from the customer's page. It shows the status, plan, price, next charge, payment method, any credit carried to the next charge, and the app it came from. If the last charge failed, a notice says why and when Autessa tries again. Ended subscriptions show when and why they ended.
Cycle history lists every invoice the subscription created: the invoice number, the period it covers, the amount, its status, and when it was paid. Click one to open the invoice.
How to switch a customer's plan
- Open the subscription and click Switch plan.
- Choose the new plan. Autessa shows what it costs before anything changes: the credit for unused time on the current plan, the amount due today, and the new price from the next charge date.
- Click Switch plan.
Switching starts a new billing period today. The customer is charged the new plan's price minus the credit for the unused days of the current period, on the card on file. If the credit is larger than the new price, nothing is charged today and the rest of the credit comes off the next charge. If that charge fails, it's retried like a renewal. A customer on a free trial keeps their trial and isn't charged when they switch.
Customers can switch plans themselves from their billing page and see the same preview first.
How to cancel or resume a subscription
- Open the subscription (or find it on the customer's page).
- Click Cancel and choose:
- At period end: the customer keeps access until the end of the period they paid for, then the subscription ends and they aren't charged again.
- Immediately: the subscription ends now. There's no refund for the rest of the period.
- To undo a cancellation at period end before it takes effect, click Resume.
Customers can also cancel (at period end), resume, switch plans, and update their card themselves from their billing page.
How to send a subscription link
Use this to sign up a customer outside your apps, for example after a sales call.
- Open the customer and click Send subscription link.
- Choose the plan.
- Choose Email it to them, or copy the link and send it yourself.
The customer opens the link, enters their details and card, and the subscription starts.
Billing inside your apps
Apps you build with the App Builder can sell your plans, take one-time payments, and check whether the signed-in person is paying. Card details never touch your app: customers pay on an Autessa-hosted checkout page with your branding, then return to the app.
How to turn on Payments for an app
- Set up Autessa Payments and create at least one plan offered in All apps or in this app.
- Open the app in the App Builder, then Settings → Permissions.
- In the Payments card, turn on Let people pay and subscribe in this app. The card lists the plans offered in this app, with Manage plans to change them.
The setting saves automatically. If Payments isn't set up yet, the card shows Set up Payments instead.
Who can subscribe
Subscriptions belong to a signed-in person, so the app must use Visitor accounts (Custom Auth) or Personal access links sign-in. See End-user sign-in.
| How the app is hosted | What works |
|---|---|
| Visitor accounts or Personal access links | Plans, subscriptions, one-time payments, checking who is paying, managing a subscription |
| Public or access code | Showing plans and one-time payments; subscribing asks people to sign in |
| Team only (inside Autessa) | Billing is off: it works in apps your customers sign in to |
The components
Every app includes the Autessa library under src/autessa. Four ready-made components cover most apps:
| Component | What it does |
|---|---|
PaywallGate | Shows its children only to people with an active subscription (optionally to one plan with requirePlanId). Everyone else sees the fallback, which defaults to a PlanPicker. |
UpgradeButton | A button that sends the person to checkout for a plan (planId). With one plan offered, planId is optional. |
ManageBillingButton | A button that opens the person's Manage subscription page. |
PlanPicker | Cards for every plan offered in the app, with price, features, trial, and a subscribe button. |
import { PaywallGate, ManageBillingButton } from '../autessa';
export default function Reports() {
return (
<PaywallGate>
<h1>Reports</h1>
{/* paid content */}
<ManageBillingButton />
</PaywallGate>
);
}
Ask AutoBot for it in plain words, such as "put the reports page behind the Pro plan." It knows which plans are offered in the app and uses these components. If Payments is off for the app, it tells you to turn it on in Settings → Permissions.
The Payments service
For anything the components don't cover, use the Payments service from the same library:
| Method | What it does |
|---|---|
Payments.plans() | The plans offered in this app. Returns available: false with a plain reason when Payments is off for the app or not ready, so the app can hide billing cleanly. |
Payments.entitlement() | Whether the signed-in person is paying: isPaying, status, plan, currentPeriodEnd, trialEnd, and cancelAtPeriodEnd. Pass { refresh: true } to check again. |
Payments.checkout({ planId }) | Sends the person to checkout for a plan. For a one-time payment, pass amountCents and a description instead of planId. |
Payments.manageBilling() | Opens the person's Manage subscription page. |
Payments.onEntitlementChange(callback) | Calls callback when the person's subscription changes, for example after they return from checkout. Returns a function that stops listening. |
import { Payments } from '../autessa';
async function upgradeToPro() {
const billing = await Payments.entitlement();
if (billing.isPaying) return;
const { available, reason, plans } = await Payments.plans();
if (!available) {
alert(reason);
return;
}
const pro = plans.find((plan) => plan.name === 'Pro');
if (pro) await Payments.checkout({ planId: pro.id });
}
isPaying is true for Active, Free trial, and Payment overdue subscriptions. Check Payments.entitlement() instead of storing a "paid" flag in your own tables; it's always current.
What your customers see
- Checkout. An Autessa-hosted page with your business name, logo, and color. The left side summarizes the plan or payment; the right side asks for their name, email, and billing address (for sales tax), then their card, Apple Pay, or Google Pay. The button reads Start free trial, Subscribe, or Pay with the amount. When they're done they see You're all set and return to your app.
- Manage subscription. A page where they see their subscription and its next charge, update their card, cancel (keeping access until the end of the period), resume, switch plans, and download their invoices. If a charge failed, it shows a link to pay the invoice. Before they switch plans, they see the credit for unused time, what's due today, and the new price.
- Emails. A receipt for every payment, a note when a free trial starts and a heads-up before it ends, a link to pay or update their card when a charge fails, and a confirmation when they cancel or the subscription ends. All are sent in your business's name.
Paying customers show up on your Customers list with the app they signed up in.
From the CLI
Every task on this page can also be done from the terminal with autessa payments. See Payments from the CLI.