
Starter prompt
This is Invoices, a FreshBooks-style invoicing app. I build invoices, send clients a link, and you, my agent, can create invoices and chase late ones for me. Step 1. If this is the Template, copy it for me with copy_app and work on my copy. If my copy shows a Claim button, have me click it so the app is mine. Read it with get_app_source and getDashboard. It shows a sample studio until the first change. Step 2. Ask me one at a time: my business name, address, and email; my currency, tax rate, and payment terms in days; how clients pay me (a Stripe Payment Link, PayPal.me, or bank details); and whether to keep the sample invoices for now or start clean. Step 3. Set it up. If I want it clean, call startFresh with confirm true. Save my details with saveSettings, including payment instructions, a default payment link if I have one, and appUrl set to this app's address. The sample payment link is a placeholder, so replace or clear it. Make the app Public with set_public so clients can open their invoice link. A client link shows only that one invoice. Step 4. Ask who I bill and add them with upsertClient. If I have an invoice to send now, create it with createFromAgent and show me the client and total before you send anything. Step 5. Optional, email: ask for a sending address on a domain I verified in Resend. Tell me to set RESEND_API_KEY in App settings, Secrets myself (never paste it here). Save the sender with saveSettings as emailFrom. Then create a daily Routine on remindOverdue so overdue invoices get reminders at 1, 7, and 14 days. Step 6. From now on, when I say "invoice <client> for <work>", use createFromAgent and confirm before sending. When I ask who owes me, read getDashboard. Finish with the app link.
What it replaces
FreshBooks Lite and similar invoicing subscriptions. It is for freelancers and small studios who bill a handful of clients a month and want a clean invoice, a link to send, and a nudge when someone is late.
What it does
Make an invoice the way it will look: edit the page itself, add line items, and the totals add up as you type. Send it and your client gets a link to a clean invoice they can pay online or save as a PDF.
- A dashboard with what's outstanding, what's overdue, and what you were paid in the last 30 days
- Clients, invoice numbering, tax, discounts, notes, and terms
- A "Pay online" button that opens your Stripe Payment Link, PayPal, or any payment page you use
- A Viewed status the first time your client opens the link
- Reminders at 1, 7, and 14 days overdue, sent from your own address
- A client link that shows one invoice and nothing else
How to use it
- Click Use template on this page and sign in. You get your own copy with a sample studio, Fern & Pine, so you can look around first.
- Connect your agent: click Open in Claude or Open in ChatGPT on this page, or paste the starter prompt into any agent that has the Charming connection (the Connect guides in the docs cover Claude, ChatGPT, Claude Code, Cursor, and Codex). The agent works on your copy and asks about your business name, address, currency, tax rate, and how clients pay you.
- Say "start clean" when you are ready to replace the sample invoices with your own. The agent clears them and saves your details.
- Tell your agent "invoice Acme for 12 hours of design at $120". It creates the client and a draft, and shows you the total before anything is sent.
- Open the draft in the app to adjust line items, the due date, or the payment link. Click Send, or copy the client link and send it yourself.
- Watch the dashboard. The invoice turns Viewed when your client opens the link, and you click Mark paid when the money arrives.
- Optional: add emailed invoices and automatic reminders. Create a free Resend account, verify your sending domain, and add your key as RESEND_API_KEY under App settings, Secrets. Then ask your agent to set a daily reminder.
What you need
- Nothing to make invoices and share links.
- A payment link from Stripe, PayPal, or your bank if you want the Pay online button.
- A free Resend account with a verified domain if you want Charming to email invoices and reminders. Charming does not process payments; your payment link does.
What comes next
Once your first invoice is out, ask your agent "who owes me money?" for a summary of what is outstanding and overdue. Add the daily reminder to chase late invoices without writing the emails yourself, and duplicate a paid invoice to bill a repeat client in seconds.
More from Tambo
A public status page for small teams, in place of a paid Statuspage plan. 90-day uptime bars,β¦
Status
A public status page for small teams, in place of a paid Statuspage plan. 90-day uptime bars, incident updates, and hourly checks that open an incident when a site goes down.
A to-do list you and your AI agent both work from. It replaces the markdown file, sync script, andβ¦
To-Do Board
A to-do list you and your AI agent both work from. It replaces the markdown file, sync script, and chat relay you would wire up so an agent can see and tick your list. For anyone who runs their week through an agent.
A public changelog for small product teams that ship every week, in place of a paid changelog tool.β¦
Changelog
A public changelog for small product teams that ship every week, in place of a paid changelog tool. Merged pull requests arrive as drafts, your agent writes the release notes, and you publish.


