Changelog

What is new in Two Minute Billing

What shipped, newest first. The same notes appear in the dashboard under What's new.

  1. FeatureDashboardAssistant

    Meet Billy, your billing assistant

    Billy is the assistant in your dashboard. Ask a question in plain words. Billy reads your data with your own access and gives you the answer, with links to the screens where you can act.

    • Ask from anywhere. Click Ask Billy at the top of the left menu, or press ⌘J. On an invoice, customer, subscription or payment, click Ask about this to start with that record. In search (⌘K), type a question and select the first row.
    • Every figure is checked. Billy compares each amount and date in the answer with your data. A green line tells you that Billy found every figure. A figure that Billy could not find has a dotted underline.
    • Records, not raw data. Invoices, customers, subscriptions and payments show as cards and small tables with links. Metric answers show a small chart.
    • Questions with options. When an answer depends on a choice, Billy asks one question at a time. Select an option or press 1–5. Your business's default is selected.
    • Tools in the input. Use + to attach a screenshot, mention a record, or start a task such as Explain an invoice. Type @ to find a customer, invoice or subscription.
    • After each answer. Copy the answer, tell us if it helped, ask again, or select a follow-up question.

    Changes that you confirm

    An owner or admin can let Billy take actions in Settings → Billy. Billy then prepares a change, shows you what will change, and does nothing until you click Confirm. Billy uses your own permissions, and the record's history shows that you made the change through Billy.

    Money actions, such as refunds and voiding an invoice, have a separate switch. Each one asks you to confirm a second time.

  2. FeatureDashboardReportsCreditsUsage

    Reports for usage, credits and one-time sales

    Business Home and Reports now show how your business earns money: subscriptions, usage, prepaid or AI credits, and one-time sales.

    • Revenue mix. The Overview shows what you invoiced in the period, by type: subscriptions, usage, one-time sales and credit packs. Each type also shows the money that you collected.
    • Credits tab. See the credit that customers hold and when it expires. See the value of paid credit that customers did not use yet. See credit granted, used and expired in the period, and the revenue that it becomes.
    • Usage tab. See usage revenue, events and customers by meter, the cost of usage, and usage revenue retention. A count shows the customers who stopped sending usage.
    • One-time sales tab. See orders, order revenue by product, average order value, returning buyers and refunds on orders.
    • New dashboards. Reports has a Credits, a Usage and a One-time sales dashboard.
    • New customer segments. Low credit balance, Credits expiring soon, Usage stopped, Repeat buyers, One-time buyers and No order in 90 days.

    Only what applies to your business

    A tab or a dashboard shows only when your business has that kind of data in the last 90 days. If your business has no subscriptions, the Overview starts with revenue of all types, and Reports opens on your own dashboard.

  3. FeaturePortalCheckoutSubscriptionsDunningInvoicingTaxPaymentsSecurity

    A self-service portal, a one-page checkout and billing rules you set

    Your customers can do more for themselves, and each business decides how billing behaves. Every new setting is off until you turn it on, so your billing does not change until you choose. Three security changes apply to every business. They are listed at the end.

    Customer portal

    • Plan, seat and add-on changes. Customers see the exact price before they confirm, and they pay that price. You set the plans they can move to, the seat limits and which add-ons they can change. Turn it on in Settings → Hosted pages.
    • Pause, resume and skip. Customers can pause and resume a subscription, skip a renewal, and undo a cancellation that is scheduled.
    • Offers before a cancel. Before a customer cancels, offer a pause, a cheaper plan, a coupon or a talk with your team. Ask for a reason. A report shows the cancellations that you saved.
    • Sign in with a code. Customers can sign in with a 6-digit code that we send by email. You set how long a portal link and a portal session stay valid.
    • Buttons that go to the task. The buttons in your emails open the task directly: pay this invoice, change the payment method, change the plan or cancel.
    • A cleaner list. You can hide cancelled subscriptions, and invoices that are zero or void.

    Checkout

    • One page. Show the details and the payment on one page, with Apple Pay and Google Pay at the top when the device supports them.
    • Consent on record. Ask the buyer to agree to the recurring charge, your terms and your privacy policy. You can also offer a marketing opt-in.
    • A bot check. After a number of failed payments from one IP address, checkout asks the buyer to show that they are a person.
    • Conversion reports. See where buyers leave checkout and why their payments fail.

    Billing rules for each business

    • Plan changes. Set the proration for upgrades and downgrades. Set when a change applies: now, at the end of the term, or as the customer selects. You can stop changes while invoices are unpaid.
    • Trials and cancellations. Set what happens when a trial ends, which cancel reasons are required, and how a refund for a downgrade is paid.
    • Dunning. Select what happens when retries end: cancel at the end of the term, pause, or stop collection. Change the retry timing, and set retry schedules for each payment method and plan.
    • Payments and credits. Combine due invoices into one charge, pay the newest or the oldest invoice first, and refund an overpayment automatically.
    • Invoices. Write off small invoices below an amount you set, charge on the due date, and send invoices and receipts to CC and BCC addresses for each customer.
    • Tax. Set tax as inclusive or exclusive for each currency and each customer. Add a seller tax ID for each country, and round tax on each line.
    • Reminders and documents. Set how many days before a payment is due the reminder goes. Show the exchange rate on documents, and add a PO number field to checkout.
    • Team alerts. Get an email for overdue invoices, for failed webhooks and as a daily summary. An address outside your team gets alerts only after it confirms them.

    Security changes for every business

    • One coupon code at checkout. A buyer can enter one coupon code. To allow up to 10, change it in Settings → Hosted pages.
    • A smaller Developer role. The Developer role cannot collect payments or cancel, pause, resume or change a subscription. Give these tasks to the Ops role or to a custom role.
    • Limits on free credit. Set the most free credit a person can give in each currency, and get an alert above an amount you set.
  4. FeaturePaymentsGatewaysDevelopersAccountsUsageDunningIntegrations

    Eleven payment gateways, roles, usage billing and more

    You can now collect through 11 payment gateways. This release also adds custom roles, a request log, more ways to price usage and more control over collections.

    • Eight more payment gateways. Square, Braintree, Checkout.com, Adyen, Mollie, Authorize.net, GoCardless and Cashfree, together with Stripe, PayPal and Razorpay. Each has a setup guide in Connect a payment gateway.
    • More ways to pay. Apple Pay, Google Pay, Venmo, Cash App Pay and PayPal through Braintree, plus direct debits such as Bacs, SEPA, ACH, BECS, PAD, Autogiro, Betalingsservice, PayTo, eNACH and UPI Autopay. Each payment shows the payment method that paid it.
    • The correct account for each payment. With more than one gateway account, pay now and save a payment method each use an account that can do that action.
    • Gateway messages are not lost. If we cannot process a message from your gateway, we try again for about four days. On Gateway Webhooks, select Replay to try again yourself.
    • Record a dispute. If your gateway cannot report a chargeback, select Record dispute on the payment. Refunds that you make in your gateway now show in Two Minute Billing too.
    • Custom roles. On Team → Roles, make a role with only the permissions that it needs. You can also limit an API key to the resources that it needs.
    • Safer API keys. Each key shows when it was last used. Set an expiry date, or select Rotate key to replace a key with an overlap of up to 7 days.
    • Request logs. Developers → Request logs shows each API request, with secrets removed. The webhook delivery log now has filters and paging.
    • Usage-based pricing. Price usage as tiered, volume, stairstep, package or percentage, and set a minimum spend. Customers see their usage so far in the customer portal.
    • Usage on yearly plans. Bill a yearly plan's usage each month, and set a minimum commitment for each term.
    • More control over collections. Select Exclude from dunning for a customer, set a minimum amount for dunning in each currency, and give a customer their own dunning policy. Set how many days before a trial end, a renewal or a scheduled cancellation the reminder goes.
    • Receipts and payment requests. Each payment gets a numbered receipt with a PDF, also in the customer portal. A payment request collects up to 50 open invoices in one charge.
    • HubSpot invoices. Send your invoices to a custom object in HubSpot Enterprise.
    • More accurate bills. Each billing period gets one invoice, credit notes reverse the correct tax, and a cancel at the end of a term bills the usage and charges of that term.
  5. FeatureDashboardSettingsTaxEmail

    Check every change before you copy your set-up

    Copy set-up (on the Transfer page) copies your configuration from one business to another. Now you see each change before you copy, and you can copy more of your set-up.

    • Check the changes first. Select Check changes to see each value that the copy changes, with its value now and its value after. Filter the list to new, replaced or left-out values. Secrets show as ••••.
    • Leave out a section that cannot be copied. If a section has a problem, the list tells you why. Select Leave out these sections to continue without it.
    • Copy your company profile. Address, tax registration number, invoice issuer, default HSN/SAC code and default tax behavior.
    • Copy email sending. Sender details and your SMTP or Amazon SES settings, with their secrets. Email templates stay with each business.
    • Keep each business's own numbers and links. The destination keeps its invoice and credit note prefixes, its checkout return and cancel URLs and its portal error text. To give it new prefixes, enter them in the copy. The copy refuses a prefix that another business uses.
    • Start clean on a test business. Select Delete its catalog, coupons and taxes first to give a test business an exact copy.
    • Copy the test businesses in the same run. When you copy one live business to another, you can also copy their test businesses. The test businesses go first. If they fail, the live business does not change.

    Past copies

    The Past copies list shows each copy for this business or for your whole organization, with what it added and updated. Select Repeat to start a new copy with the same choices.

    Update a live business, with a confirmation

    A live business takes only new records from a copy. To also change its settings, company profile, email sending, numbering or tax profiles, an owner or admin selects Also update what is there and types the business name to confirm. The audit log records each value that changed. Invoices that you already issued keep their tax details.

  6. FeatureCatalogCheckoutCustomer portal

    Show a picture of each product

    Each product can now have an image. Buyers see it next to the product on the hosted checkout, on payment links, on your pricing page and in their purchases in the customer portal.

    • Add an image. On the new or edit page of a product, select an image: PNG, JPEG, GIF or WebP, up to 5 MB. You see a preview before you save.
    • See what buyers see. On a one-time product, the summary shows the product as the checkout shows it: the image, the name, the description and the price with its tax.
    • Send buyers to your page after payment. Enter an After-payment page, for example a thank-you or download page. Checkout sends buyers there after they pay, if the checkout link or payment link has no page of its own.

    One-time products are easier to set up

    • How you sell it. One card shows the two ways to sell a one-time product: on its own with a checkout link or payment link, or with a subscription, for example as a setup fee.
    • SKU and accounting codes. Enter them with the first price.
    • Taxable. Disable it for an item that has no tax, for example a gift card.
    • Next step. After you create a one-time product, its page opens at its payment links.
    • Product ID. If you leave the ID empty, we make one from the name.
  7. FeatureCheckoutPaymentsCustomer portalReportsEmails

    Sell one-time products from the hosted checkout

    The hosted checkout now sells one-time products, not only subscriptions. When all the prices in a checkout are one-time prices, the buyer pays once and gets a paid invoice. No subscription is created. When a checkout has a recurring price, it continues to create a subscription.

    • One-time products. The catalog shows them under One-time products. On a product page, the Hosted checkout card makes a checkout link for a one-time price.
    • Payment links. Under Payment links, make one link that many buyers can use. Put it on your website or in an email. Each buyer gets their own checkout, customer record and invoice.
    • A public pricing page. Show your products and prices on one page that buyers can open without a login.
    • Quantities. On a payment link, you can let the buyer change the quantity, between the limits that you set.
    • Save the payment method. In Hosted pages → One-time purchases, select if the checkout saves the buyer's payment method: never, always, or the buyer decides.

    A faster checkout

    • One page. The buyer's details and the payment step show on one page. On a phone, the order lines fold to make the page shorter.
    • The total first. The checkout shows the amount due today, with tax, before the buyer pays.
    • Faster to open. The checkout loads the card form only when the buyer needs it.

    After the purchase

    • Purchases in the customer portal. Buyers see their one-time purchases, each with a link to its receipt.
    • Payments that the bank must still confirm. Sometimes a payment provider holds a payment to check it. We keep the payment and record it when the provider confirms it. In the customer portal, the buyer sees Payment in progress, and Pay now is not available for that invoice until the payment completes.

    Bring buyers back

    • Checkout reminders. In Emails, switch on Checkout reminder. A buyer who gives an email address and does not complete the checkout gets a reminder after 1 hour, and a second reminder after 24 hours. The link in the email opens the same checkout. This email is off until you switch it on.
    • Two new reports. In Reports → Acquisitions, Checkout Reminders shows how many buyers got a reminder and how many completed their checkout after it. Recovered Checkout Revenue shows the money from those purchases.
  8. FeatureDashboardBusinessesDevelopersPayments

    Each business has a live mode and a test mode

    When you create a business, you get two modes: live and test. Live mode bills your real customers. Use test mode to try your catalog, settings and integration before you go live.

    • One switch. Inside a business, use Mode at the bottom of the navigation. You go to the same page in the other mode.
    • A copy to start. Test mode starts with the settings of the live business. After that, the two modes are separate. A change in one mode does not change the other.
    • Move your setup. To copy the catalog and settings from one mode to the other, use Transfer & Sample Data. The other mode of the business is already selected.
    • Two business IDs. Each mode has its own business ID. A test API key gets access only to test mode, and a live API key gets access only to live mode. On the Developers page, your keys show in two groups: Live keys and Test keys.

    Safe to test

    • No real money. Test mode uses the TM Billing Test Gateway. The hosted checkout and the customer portal show a "Test mode" notice.
    • Email only to your team. In test mode, we send email only to the addresses of your team members. Other customer emails are not sent, and the email log shows why.
    • Start again. In test mode, Delete test data deletes all customers and their subscriptions, invoices and payments. The catalog and settings stay.
    • HubSpot is live only. Test data does not go into your CRM, so you connect HubSpot in live mode.

    Your existing businesses

    Your organization overview and reports show live data. A business that you created before today gets its test mode the first time that you select Mode → Test. Test businesses that you created before today continue to work. The organization overview lists them separately.

  9. FeatureDashboardAccountsCustomersSubscriptionsMetrics

    A new account page, retention for your organization, and metadata rules

    Your account shows your profile, appearance and security on one page.

    • Profile. Enter your name and upload a profile photo. The sidebar and the Team list show them. If you sign in with Google and do not upload a photo, the dashboard shows your Google photo.
    • Appearance. Select Light, Dark or System. The dashboard keeps your selection on all your browsers.
    • Active sessions. See each browser where you are signed in and its last activity. Sign out one browser or all other browsers.

    Retention for your organization

    The Performance card on the organization overview now shows the same rates as each business: Quick ratio, Gross revenue retention, Net revenue retention and Customer churn. The organization figures combine all your businesses in your reporting currency. A larger business has more effect on the result than a smaller business. Each card shows the period that it measures.

    Rules for metadata

    Set rules for the metadata on customers and subscriptions in Settings → Metadata rules.

    • Rules by path. A rule applies to a key, or to a nested key such as billing.po. It sets the type of the value, and it can set a pattern, a maximum length or a list of permitted values.
    • Optional keys. A rule examines a value only when the value is present. A missing key is always permitted.
    • On or off. Validation is off until you enable it, separately for customers and for subscriptions. When it is on, the API and the dashboard refuse a value that does not obey a rule, and the error names the key.
    • Strict mode. Enable strict mode to also refuse keys that do not have a rule.
    • Existing data stays. Rules examine new and changed values only. Stored metadata does not change.
    • Number and list rules. A number rule can permit only whole numbers and set a minimum and a maximum. A list rule can set the type of each item and the permitted item values.

    Edit metadata in a form

    On a customer and on a subscription change, metadata is now a form, not a JSON text box.

    • A field for each rule. A list of values shows as a menu or as buttons. A number shows as a number field. A nested key shows in a group. Errors show on the field before you save.
    • Key suggestions. When you add a key, the form suggests the keys that your other customers or subscriptions use, with the number of records for each key. For a key with few values, the form also suggests the values.
    • Rules from your data. In Settings → Metadata rules, the suggested keys have a Create rule button that fills in the rule for you.
    • JSON is still available. Select Edit as JSON to edit the raw text.

    Search finds all pages

    Push ⌘K (Ctrl K on Windows) and type the name of a page. All settings pages are in the search. This includes dunning, email delivery, invoice settings, payment gateways and each billing rule. You can also use common words. For example, "retries" finds dunning.

    On your phone

    The account menu at the bottom of the navigation opens correctly. The navigation stays open below the menu.

  10. SecurityAccountsSecurityTeam

    Two-factor authentication and passkeys for you and your team

    Enable two-factor authentication on Your account. Then each sign-in asks for a second proof. This applies when you sign in with a password and when you sign in with Google.

    • Passkeys. Use your fingerprint, face or screen lock as the second step. You can also sign in with only a passkey. You do not type a password.
    • Authenticator apps. Scan the QR code with an authenticator app. When you sign in, enter the 6-digit code from the app. Each code operates one time only.
    • Recovery codes. You get ten recovery codes. Each code operates one time only. Use a code if you lose your phone. You can download the codes and make a new set at any time.
    • Trusted browsers. Select "Don't ask again on this browser" to skip the code for 30 days. When you change your password or disable two-factor authentication, the dashboard forgets all trusted browsers.

    Make two-factor authentication necessary for your organization

    An admin can enable Require two-factor authentication in Settings.

    • Grace period. Each teammate has seven days to enable two-factor authentication. The dashboard and an email remind them before the deadline.
    • Status of each teammate. The Team list shows who has two-factor authentication, who must enable it, and the deadline.
    • API keys. When this setting is on, only teammates with two-factor authentication can make new API keys. Existing keys continue to operate.

    You get an email for each security change

    • Security emails. We send you an email when someone enables or disables two-factor authentication. We also send an email when you add or remove a method, use or replace recovery codes, or change your password.
    • Warning about your password. Someone can enter your password correctly and then fail the second step many times. When this occurs, we send you an email. Change your password immediately.
    • If you cannot sign in. On the code step, select "Get help signing in". Support can reset two-factor authentication after three days. We send you an email with a link. If you did not ask for the reset, use the link to cancel it.
  11. FeatureDashboardCustomersSubscriptionsInvoicingCatalogCoupons

    Every record page, redesigned around what needs you

    Every detail page now follows one layout: what needs your attention first, the key figures next, then the record itself in clear sections. It applies to customers, subscriptions, invoices, credit notes, transactions, payment intents, tax regions, products, prices, product groups, coupons and coupon sets.

    Act on what needs you

    • Needs attention sits at the top. An unpaid invoice shows how long it has been due, how many attempts were made and when the next retry is, with a timeline of every attempt and the retries still to come. Hover a step for the card and the decline reason.
    • Collect payment lets you choose. On a customer, tick the unpaid invoices to collect; on an invoice or subscription, pick the card to charge. A payment you collect by hand never uses up one of the scheduled retries.
    • Invoices within their terms stay calm. An invoice that is issued but not yet due is not flagged; Collect payment is still in More if a customer wants to pay early.

    Know your catalog

    • See what each plan earns. Products, prices and product groups show their active subscriptions and MRR, per currency.
    • See what each coupon has given. Coupons show every redemption and the total discount given; coupon sets show which subscription redeemed each code, can be renamed, and export their codes as CSV.
    • Limit redemptions per customer. A coupon can now be capped at a number of uses per customer.
    • Activity and comments on catalog records. Changes to products, prices, families, coupons and coupon sets appear in the Activity log, and your team can leave comments on them.

    Forms that preview the result

    • Create a plan with its price in one go. New plans, add-ons and charges take their first price point on the same page, and every form shows a live summary such as "Customers pay $19.80 per seat every month, with a 14-day free trial."
    • Every option on one form. Tiers, trials, billing cycles, tax behaviour and metadata are all editable where you create or edit the record. Fields that cannot change after creation say why.

    Easier to read

    • Long lists page instead of scrolling. History, activity, comments, codes and redemptions show 10 or 5 at a time, newest first, with every record reachable.
    • Tables keep their shape. Columns stay fixed as rows appear, and long text wraps instead of pushing the table sideways.
  12. FixSubscriptionsInvoicing

    Resuming a subscription bills exactly what it should

    When you resume a paused subscription, what it bills now depends on one question: has the term your customer already paid for ended?

    • Still inside the paid term: the subscription carries on to the same renewal date and nothing new is charged. Your customer keeps the time they paid for.
    • After the paid term ended: a new term starts on the day of the resume and is billed for in full, just like a renewal.

    Choose how the new term is billed

    • Invoice immediately raises and collects the new term's invoice at the moment of resume. It is the default unless you have chosen otherwise.
    • Add to unbilled charges holds the charge and bills it with the next invoice instead.
    • Set your default in Settings → Billing rules → Pause and resume. The Resume dialog preselects it, and you can still pick the other option for a single resume.
    • The same rule applies everywhere: resumes from the dashboard, the API, your customers' self-serve portal, and pauses that resume automatically after a set number of cycles.
  13. FeatureDunningPayments

    Retries timed to when the payment is likely to go through

    Turn on Adaptive retry timing in Settings → Dunning, alongside Smart decline handling. Instead of one schedule for every failure, each retry is timed by the reason the payment was declined:

    • A gateway or network hiccup is retried within hours, then after a day and after three days.
    • Insufficient funds is retried on the next likely payday: the 1st, the 15th or the last day of the month, up to four times.
    • A generic decline is retried a few days apart, then the invoice is held and your customer is asked to update their card.

    Retries land in your customer's morning

    • At 10:00 where the card was issued, or in your business's timezone when that isn't known.
    • Card networks are respected. When a card network or gateway says how long to wait before trying again, the next attempt waits at least that long.
    • Your limits still apply. No retry lands more than 30 days after the due date or past your dunning period, and mandate debits (UPI, e-NACH, card mandates) keep your retry schedule.

    These timings follow common practice rather than a guarantee, so compare your collections recovery rate before and after you turn it on. Adaptive retry timing is off until you do, and your existing schedule is unchanged.

    Also in this release, for every business

    • A card the network says not to retry is never charged again until it's replaced or updated, including when you collect by hand. Retrying those cards can bring network fees.
    • Each card stays under the card networks' attempt limits. When a card has been declined many times recently, across all its invoices, the next retry waits instead.
  14. FeatureDunningPaymentsEmails

    Dunning that reads why a payment failed

    Choose how failed payments are handled. Settings → Dunning has a new Decline handling option. Fixed follows your retry schedule for every failure. Smart reads the reason the payment was declined and acts on it:

    • Temporary problems are retried, such as insufficient funds or a bank that is briefly unavailable, on your schedule.
    • Problems only the customer can fix pause the invoice instead of retrying a card that cannot succeed, such as an expired card or a cancelled mandate. Your customer is asked to update their payment method, and the invoice can be charged the moment they do.
    • Declines that must not be retried stop straight away, such as a card reported lost or stolen.

    Customers hear from you while an invoice is paused

    • Reminders through the whole window. A paused invoice gets a series of reminders spaced by your own retry schedule, each with an Update payment method button, so a new card settles this invoice and the next renewal too.
    • One last attempt before the deadline. When the window closes, the invoice is charged once more before your final action runs.
    • Failure emails say when you will try again. The payment failed email now shows the date of the next attempt.

    Also in this release

    • A customer with no payment method on file is given time to add one instead of reaching your final action within days.
    • A problem with your own gateway account never cancels a customer. Those invoices are paused rather than run to your final action, so you can fix the connection and collect.
    • Collections recovery rate is a new measure you can add to any dashboard: of the invoices dunning finished with, the share it recovered. It counts from today.
  15. FeatureReportsAnalyticsDashboardCurrencies

    Reports you can build on, and a history you can trust

    Reports is now its own section: close to a hundred reports across recurring revenue, customers, billing, cash, receivables, tax and collections, with charts, breakdowns and CSV export.

    Boards you arrange

    • Start from a built-in board — five of them, so the section is useful on day one.
    • Build your own by adding widgets: pick a type (a single figure, a ranked breakdown or a table), the measure, and how to split it, over a preset or custom period.
    • Compare with the previous period on any figure, in every currency the business bills in.

    Segments

    • Save a group of customers as a segment and ask MRR, its movements or customer counts for just that group.
    • Split a figure by country or plan to see which part of the book moved it.

    A history you can trust

    • Past MRR is what each subscription actually earned that day. An upgrade, a discount or a reactivation lands on the day it happened, and every earlier day keeps the figure it had.
    • A trial counts once it converts, and a cancelled account keeps the rate it was paying until the day it left.
    • Movements add up. New, expansion, reactivation, contraction and churn sum exactly to the change in MRR, month after month.

    Every currency, at the rate of the day

    • Converted figures use the exchange rate that applied on the day, from the European Central Bank's daily reference rates, so a figure from two years ago is stated at that year's rate.
    • Currency moves have their own line in the MRR movement report, so a weaker or stronger currency never reads as growth or churn.

    Faster, and easier to find

    • The business home answers one period on every tab, with eight presets and a custom range.
    • Subscriptions read as Active, Paying and Renewing — everything live, what carries revenue, and what is set to renew — side by side on both homes, with a Renewing report of its own.
    • See collections at a glance: the business home shows how many invoices are in dunning, and the businesses list has a Dunning column.
    • Reports and the business home load faster on large books.
    • The organization sidebar lists your businesses, so you can jump straight to one.
  16. FeatureSubscriptionsDashboard

    Delete a subscription

    A subscription created by mistake — a duplicate, a test, an import that went wrong — can now be deleted. Open it and use Delete subscription in the actions rail, or call DELETE /v1/businesses/{business}/subscriptions/{subscription}.

    • The billing stops and the books stay. The subscription leaves your lists and its page, and nothing renews it again. Its invoices, payments and credit notes are kept exactly as they were and stay on the customer, so your revenue history reads the same after the delete as before it.
    • Anything still owed is still owed. An unpaid invoice raised by a deleted subscription remains payable and keeps running through dunning — deleting the subscription does not write off the debt.
    • Deleting is not cancelling, and the dialog says so. There is no final invoice, no credit for unused time and no cancellation on the record. If you want the term closed out properly, cancel the subscription instead; delete is for the one that should not exist at all.

    Deleting is available to managers and owners, and every delete is recorded in the audit log with who did it. Integrations can listen for the new subscription_deleted event.

  17. ImprovementPaymentsDashboard

    Open a charge in your gateway, from the transaction

    Reconciling a payment no longer means copying an id into your gateway's search box.

    • The gateway transaction id links to the charge. On a transaction, the id the provider gave the charge opens that charge on the provider's own dashboard in a new tab — Stripe, Razorpay and PayPal.
    • The transactions list carries it too. A new Gateway Charge Id column sits beside Gateway, linked the same way, so you can jump to the provider without opening each transaction first. Hide it from the column chooser if you would rather not see it.
    • It opens in the right mode. A test charge opens the provider's test dashboard or sandbox and a live one opens live, so the link never lands on an account where the charge does not exist.
    • Ids with nowhere to go stay plain text. Simulated and offline payments have no gateway page, and a refund is reached through the payment it reverses — those ids are shown as before rather than as links that would go nowhere.
  18. ImprovementPaymentsDashboardIndia

    Know the card before you charge it

    A saved payment method now tells you everything the gateway knows about it, and it tells you the same story wherever you open it.

    • Where the card was issued, and by whom. The issuing country and the issuing bank sit on the instrument. For Indian-issued cards that is what decides whether a renewal has to ask the payer to authenticate, so it is worth seeing before the renewal runs rather than after.
    • What the instrument can actually do. Funding type (credit, debit, prepaid), consumer or business, 3D Secure support, international use, and whether it can be debited off-session at all. A card that cannot take recurring debits says so next to the mandate riding on it.
    • A fingerprint, where the gateway provides one. The same underlying card can be saved twice under different tokens; the fingerprint is how you tell that a backup is really a second card.

    One card, both screens

    The payment method on a customer and the payment method on a subscription are drawn by the same component now, so they carry the same rows in the same order and read the same at a glance.

    • A subscription that charges its own card says so in words. The line under the heading tells you whether the instrument is set on this subscription or is the customer's primary, and the badge beside it keeps its plain meaning: the customer's primary card.
    • UPI Autopay looks like UPI. A mandate with no card brand now carries its own mark instead of a generic card.
    • The detail grid follows the space it is given, so a long gateway reference stays readable in a narrow column instead of breaking across half a dozen lines.

    Two roles, one word for each

    A saved card had three words — primary, backup and default — for two roles, and which word you saw depended on which screen you were on. There are two roles, and they are now called the same thing everywhere: in your dashboard, in your customer's billing portal, at checkout, and in the API.

    • The primary card is charged first. What used to read default in the portal and at checkout now reads primary, matching your dashboard and the role field on the API.
    • The backup is tried only when the primary fails, and only when it is genuinely a different card. It now pairs with a word that has an opposite.
    • The customer's payment methods panel says this once, above the cards, so the roles need no explanation — and a support conversation no longer needs translating between two screens.

    Nothing changed about how collection behaves, and the API keeps is_default and the /payment_methods/:id/default route exactly as they were, so existing integrations are unaffected.

    Instruments saved before we began asking gateways for these details will show Not reported for the issuing country — an honest blank rather than a guess.

  19. ImprovementCustomersDashboard

    A customer's whole history, on the customer

    Open a customer and you can see their whole life with you, not just the edits made to their record.

    • The Activity log covers everything the customer owns. Renewals, invoices raised and paid, payments and refunds, credit notes and payment-method changes all appear alongside the changes made to the customer itself — each row naming the record it is about, who did it, and where from.
    • The Events tab is back, scoped the same way. The developer's view of the same history: event id, type, the record it names, its source and when it happened — the list you reach for when you are matching a webhook to what the engine actually did.
    • Both read the whole footprint. Subscriptions, invoices, credit notes, transactions, payments, refunds and saved payment methods — one customer, one history.

    For API users

    GET /v1/businesses/:business/events and GET /v1/businesses/:business/audit_logs take a customer=<id> parameter that scopes either stream to everything that customer owns, so you no longer have to fan out over their records and merge the results yourself.

  20. ImprovementPaymentsIndiaPortal

    Pay another way, without the risk of paying twice

    A customer waiting on a bank approval can pay another way — where we can safely stop the first attempt.

    • "Pay now" appears only when the first attempt can be cancelled. Some banks can authorise a payment retroactively, for up to three days, with nothing for the cardholder to decline. Where that is possible, we no longer offer a second route that could take the money twice; the invoice waits instead.
    • The confirmation says what will happen. Before anything is released, your customer is told plainly that we will cancel the bank's request, and to decline it if it still reaches them.
    • Payment records carry the gateway's own answer. Whether a payment is waiting on the cardholder is taken from what the gateway states, and a later statement replaces an earlier one — so a record never keeps saying "no approval needed" after the gateway has asked for approval.
    • A quiet payment is no longer read as a stalled one. Time alone never decides that a customer has been asked to authenticate.
    • Approval is asked for on Indian cards, where the rule applies. The RBI mandate rules follow the card's issuing country, not the currency, so a foreign card paying in rupees is treated as what it is.

    Payment methods know more about themselves

    • Every saved method records its issuing country, funding type, bank and capabilities. Cards, netbanking, UPI, wallets and direct debits all carry the same facts, so routing and retries can use them. Card numbers are never stored.
    • Re-adding a card updates the one you already have. Saving the same card again keeps the existing method and its history instead of leaving a duplicate behind.
    • A backup payment method has to be a different card. If your backup turns out to be the same card as the primary, it is no longer used as a fallback — retrying the same card against the same decline never helped anyone.
  21. ImprovementDashboardInvoicingPaymentsSubscriptions

    Refresh a screen without losing your place

    Billing moves while you are looking at it: the clock issues invoices, gateways answer minutes later, and payers act in their own portal. Every screen that shows that kind of state now has a Refresh control that fetches the current answer on the spot.

    • Your view survives a refresh. Refresh re-runs the search, filters, segment and sort you already have applied, so a narrowed list comes back narrowed. It reloads the rows and nothing else — the page does not reload and you do not return to the top.
    • On a list, one control covers everything you monitor. Invoices, Transactions, Subscriptions, Customers, Credit notes, Payment intents, Events, Retries, Emails, Gateway requests, Gateway webhooks, the Audit log and Ops due-work all carry it.
    • On a record, only what moves gets fetched. Open an invoice and Refresh brings its status, amount due, payments, credits and retry schedule up to date; the line items, addresses and tax stay put. Subscriptions refresh their status, term and next billing; transactions their settlement and refunds; customers their balance, credits and payment methods.
    • On a transaction, Refresh and Sync are different questions. Refresh shows what we already know. Sync goes and asks the gateway. Both are available and neither pretends to be the other.
    • The business dashboard says when it last synced, and lets you do something about it. The freshness of the figures is now next to the control that updates them.
  22. FixPaymentsIndiaSubscriptions

    India auto-debits ask only when the bank asks

    An India e-mandate payment now says exactly what it is waiting for.

    Under RBI rules every e-mandate debit pauses briefly while the pre-debit notification goes out to the cardholder. Most of those debits need nothing from anyone — the notification is served, the charge presents itself, and the money arrives. Some genuinely do need the cardholder to authenticate. Your customers now only hear from us about the second kind.

    • The portal asks for approval only when approval is actually required. A payment waiting on nothing but its notification window shows as in progress, so nobody is prompted to act on a charge that will complete on its own.
    • Payment records name the kind of wait. Whether an attempt is waiting on the bank's notification or on the cardholder is taken from what the gateway states, not inferred from the amount — so the Retries and payment screens agree with the gateway.
    • Every amount is treated the same way. An auto-debit is not assumed to be unattended just because it is small, and not assumed to need authentication just because it is large.
    • A charge above the approved limit can now be authorised in one step. When a renewal exceeds the per-charge limit on an Indian card mandate, the bank offers the cardholder a link to approve that single payment. They now get it, instead of being asked to set up their auto-debit again from scratch.
    • When a bank asks us to wait, we wait. A decline that comes back with "try again in 24 hours" no longer spends a retry the same night on an attempt the network has already said it will refuse.
  23. ImprovementPaymentsOps

    A transaction says where it came from

    A transaction now names the authorization behind it, and carries the gateway's own fraud verdict — both on the page you were already looking at.

    • Follow a charge back to its payment intent. Where a customer authenticated — a checkout, a portal payment, an operator collecting an invoice — the transaction links straight to that intent and its attempts. You could always walk from the intent to the charge; now it goes both ways. Renewals show no link, and that is the honest answer: nobody is present to authenticate an automatic renewal, so no intent is ever created for one.
    • See a fraud warning where the money is. If the card network flags a charge as probably fraudulent, or the gateway puts it under manual review, the transaction says so and when it was reported. It sits alongside the charge's own status rather than replacing it, so you can always still tell whether the money settled.

    Developers

    payment_intent and fraud_signal are new on the transaction object. Both are nullable, fraud_signal is served on the single-transaction read, and both are in the OpenAPI spec and the generated SDK.

  24. ImprovementDashboardDunningPayments

    Retries and Disputes sit with your work, not your logs

    The two screens that track money you can still lose now sit in the sidebar alongside Customers and Subscriptions.

    • Retries carries a live count. The number of invoices the billing clock is still working on shows on the sidebar from every page, so revenue in dunning is something you see rather than something you go looking for.
    • Disputes has its own place. A chargeback runs against an evidence deadline, so it is no longer filed with webhook payloads.
    • Every dispute is reachable. The disputes API now reports how many there are and pages through all of them, and the screen says so plainly when it is showing only the most recent ones.
    • "Billing LogIQ" is now "Billing rules." The same nine settings — billing mode, payment terms, proration, round-off and the subscription-change rules — under a name that says what they do. Existing links and bookmarks redirect on their own.
    • A payment intent links to the money it moved. Open an intent and jump straight to its transactions, so an authentication step and the charge that followed read as one story.
  25. FeatureSettingsPortalAccounts

    Choose what customers can do in the portal

    Settings → Hosted pages has a new section: What customers can do in the portal. Three switches, all on unless you turn them off, so nothing changes until you decide it should.

    • Let customers download their invoices. Turning it off keeps the invoice visible — a customer still sees what they were billed — but removes the PDF download.
    • Let customers pay an unpaid invoice. This removes the customer's own Pay now only. We still collect on your schedule and dunning still runs, so turning it off does not stop the money arriving. Useful if you collect strictly by mandate or bank transfer and a second, manual path would muddle your reconciliation.
    • Let customers remove a payment method. Adding one is always allowed; this governs removal. Worth turning off where a live subscription depends on the card or mandate on file — nothing else prevents a customer removing it.
    • Let customers pause or resume their own subscription. Turning it off keeps the subscription active even if the customer would like to cancel. Worth turning off where a live subscription depends on the customer's subscription — nothing else prevents a customer canceling it.
    • Let customers cancel their own subscription. Turning it off keeps the subscription active even if the customer would like to cancel. Worth turning off where a live subscription depends on the customer's subscription — nothing else prevents a customer canceling it.

    Each switch applies to the self-serve portal only, and takes effect immediately for every customer of that business.

  26. FeatureDashboardInvoicingAccounts

    Upload your logo instead of hosting it

    Your logo, icon, favicon and invoice signature can now be uploaded straight from settings. Choose a file and it is stored and served for you, so branding your invoices, checkout, portal and email no longer waits on somewhere to host an image.

    • Upload or paste — both still work. The URL field stays exactly where it was, so an image you already host anywhere public needs no change.
    • PNG or JPEG for anything that prints, up to 5 MB. Your logo and signature are embedded in invoice PDFs, so those two take PNG or JPEG; icons and favicons also take GIF and WebP. We read the file itself to decide what it is rather than trusting its name, so a mislabelled file is caught before it reaches your customers.
    • Two places to do it. Your logo, icon and favicon live on Settings → Brand styles; the signature that prints on invoices and credit notes lives on Settings → Documents.
    • Using an SVG today? Upload a PNG or JPEG to see it on your invoices. Invoice PDFs carry PNG and JPEG; an SVG still shows on your portal, checkout and email, but the PDF prints your business name in place of the mark. Uploading takes a few seconds and fixes it everywhere.

    Every surface that shows your brand — the self-serve portal, hosted checkout, invoice PDFs and billing email — picks up the new image as soon as you save.

  27. FeatureInvoicesCredit notesSettings

    Decide what goes on your invoices

    Your invoices and credit notes now follow your rules. Pick what they're called, how they're numbered, which fields they carry, and sign them off.

    • Call it what your tax authority expects. Invoices can print as INVOICE or TAX INVOICE; credit notes as CREDIT NOTE or REFUND. Settings → Invoices, and Settings → Credit notes.
    • Number them your way. Add a date stamp to the number — the year, the fiscal year, a month or a full date, in thirteen formats — choose the separators, and set how far the counter steps. The screen shows you the actual next number as you type, so you can see the result before you save. The counter always moves forward, so changing the format is safe.
    • Show only the fields you want. Customer ID, subscription ID, billing address and tax number, invoice status, billing period, next billing date. Plus three you can now switch on: the shipping address, the credit notes raised against an invoice, and up to three of your own custom fields.
    • Lay out your address to suit your letterhead. Expanded over several lines, collapsed to one, or a template you write yourself — previewed with your own address in it.
    • Sign your documents. Add a signature line and an image, and choose which bottom corner they sit in — bottom right or bottom left. The block is pinned to the foot of the page, so it lands in the same place whether the invoice has two lines or twenty. Settings → Documents.
    • Tell offline payers where to send the money. Build bank transfer or PayPal blocks with your own labels and values, and print them on your invoices. You can match them to the invoice currency or the customer's country, so a customer paying in euros isn't shown your rupee account. Settings → Payment instructions.

    Your line items now show their maths. Every invoice gains a Units and a Unit price column, so a line reads 5 × ₹940.00 = ₹4,700.00 instead of just the total. Nothing to switch on — it is on every invoice and credit note from now on.

    Everything else about your existing documents is untouched until you change something. Every setting starts at exactly what your invoices already do, so nothing shifts under you the day this arrives.

    One correction worth calling out: a tax registration number was previously labelled "GSTIN" on every invoice, whichever country you sell from. It now says GSTIN in India, VAT across the EU and the UK, and "Tax ID" elsewhere — so if you sell outside India, that caption on your documents is now the right one.

  28. FixDashboardAccountsInvoicing

    ⌘K finds a customer by phone or company

    Press ⌘K inside a business, type whatever you remember about a record, and it comes back.

    • Phone and company find a customer. Quick search matches the same fields the customer list does — id, email, first and last name, company and phone — so the thing you happen to have in front of you is enough to find the account.
    • Subscriptions and invoices search the whole list, however long it has grown, and return the closest five of each alongside the customers.
    • A search in progress says so. The palette reads "Searching…" while it is looking, and only reports nothing found once it knows.
  29. FixPaymentsReliability

    Every payment attempt is on the record

    Every charge now leaves a trail you can read, whichever way it was started — the billing clock renewing, an operator pressing Collect now, or the payer pressing Pay now in the portal.

    • A charge the gateway turns down writes a payment attempt carrying the gateway's own wording, so the reason an invoice is still unpaid is on the screen next to it.
    • Attempts appear in the customer's Transactions and on the invoice itself.
    • Charges the gateway accepts but that never complete are picked up by the sweep, across every gateway you have connected.
    • An instrument that is not authorised for the amount is caught before the charge goes out, so the payer gets a clear answer instead of a gateway error.

    Your gateway statement says which flow charged

    A renewal, an operator collecting early, and a payer paying themselves all reach the gateway the same way. Every charge tmbilling sends now carries a description naming the flow it came from, so a line in your Stripe or RazorPay dashboard can be explained without opening tmbilling beside it.

  30. FeatureDunningInvoicing

    Two dunning settings, and open checkouts on the invoice

    Dunning is two settings now. What happens while an invoice is being retried and what happens when retries run out are separate choices, so you can keep collecting without committing to what happens at the end — and change one without disturbing the other.

    An invoice shows the checkout that is open at the gateway. When a payer has a hosted checkout session waiting, the invoice says so, so you can tell "nobody has tried" apart from "somebody is part-way through". A payment intent that is no longer wanted can be voided from the same place.

    The dunning card names the final attempt. Before it happens, the screen tells you what the last attempt will do, so the end of a dunning cycle holds no surprises.

  31. FixDashboard

    Forms, search and loading states

    • A saved form shows the saved values. Save a form and what you see is what was written, straight away.
    • Search keeps up. Typing in a list filter now only re-renders what actually changed, so long tables stay responsive as you type.
    • Loading states match their page. Each screen's placeholder now has the shape of the screen that is coming — a table where a table is coming, sections where sections are coming — so it tells you where to look.
    • Organization screens follow your time zone. System, Audit Log and Developers render timestamps in the display time zone you set, alongside every other date.
    • Reason codes, custom fields and error handling read cleanly, and the decline-rules table now matches the density of every other list.
  32. ImprovementDashboard

    A new look for the dashboard

    The dashboard has a visual direction of its own.

    • Cards sit on a tinted ground. Every panel, table and form reads as a distinct surface, which makes a long page much easier to scan.
    • One accent colour carries both links and the primary action on a screen, so what to do next is always obvious.
    • Colour means something. A state that needs a human — payment due, failed — keeps a filled badge. Healthy and finished states render quiet, so a list of mostly-cancelled subscriptions reads calm rather than alarming.
    • Softer corners, roomier rows, and a 12px floor on type, so nothing on a screen you read all day is smaller than that.
    • Charts follow the theme, in light and dark.

    The sidebar collapses

    The navigation rail shrinks to an icon strip and remembers your choice, giving wide tables back around 240px. Press the handle on its edge to switch.

  33. ImprovementInvoicingOps

    The Retries screen shows what will actually be retried

    The Retries screen lists the invoices the billing clock is genuinely still working on, so its count is a number you can act on rather than a backlog to interpret.

    Alongside it, a new invariant watches for the opposite case — an invoice that will never be collected by anyone — and surfaces it rather than leaving it to be discovered.

    Both feed the same goal: the screens that say "money is still coming" should only ever list money that is still coming.

  34. ImprovementInvoicing

    The invoice document, rebuilt

    The invoice PDF and its on-screen version were rebuilt: clearer hierarchy, a readable line-item table, totals that add up in front of you, and tax presented the way the place of supply requires.

    • Every invoice states the period it covers, read from the lines it was billed for — so a historical invoice reads as a record of its own period.
    • An invoice can be issued by the organization rather than a single business, for merchants who bill under one legal entity.
    • Countries print as names, and the document offers what a finance team expects to find on it.
    • Logos reach the PDF, including SVG.
  35. FeaturePaymentsDunning

    Decide how each gateway decline behaves

    Gateways speak in error codes, and each one deserves a different answer: retry this one tomorrow, never retry that one, tell the payer to call their bank. Error handling is a screen for exactly that.

    • Every code we recognise is listed, not only the ones you have already seen, so you can decide in advance rather than after a failed renewal.
    • Codes are grouped, with the wording the payer will read shown beside each.
    • A business can override any rule — set an error code's behaviour once and it applies to every future decline of that code.
    • RazorPay merchants see RazorPay's codes, and the network's own do-not-retry instruction is respected where the network sends one.
    • The same rules are available on the API: list them, and change how one decline behaves for a business.
  36. ImprovementPaymentsDashboard

    Payment methods show their own card marks

    A payer finds their card by its logo, not by re-reading four digits. Operator screens now do the same: a Visa, a RuPay card, a UPI Autopay mandate and a bank debit are each recognisable at a glance — which is exactly what you want on the screens where a failed payment gets triaged.

    The mark comes from the same place the storefront uses, so the payer and the operator are always looking at the same thing.

    Pay now works for cards vaulted on any gateway. Routing follows the instrument that will actually be charged, so a customer paying in INR with a card vaulted on Stripe pays without a detour.

  37. FeaturePaymentsOps

    Ask the gateway about a stuck payment

    When a payment has been sitting in an unclear state, you can now ask the gateway directly. The transaction shows a check now control that fetches the gateway's current view and displays it beside ours.

    • It is a read. Checking never moves money and never spends a retry.
    • The panel names the actual gateway, and says plainly when nothing has changed yet rather than implying a result.
    • The gateway's answer is shown as the gateway gave it, so there is nothing to take on trust.
  38. FeatureSubscriptions

    Reactivation rules, and a mandate warning before you commit

    Reactivation is configurable. Whether bringing a cancelled subscription back requires a successful payment first is now a setting, so the rule can match how you actually sell.

    A mandate limit is flagged at create time. When a subscription's amount would exceed what the customer's mandate is authorised to carry, the create screen says so — while it is still a decision, rather than at the first renewal.

    The reactivation preview also shows the same totals the invoice will carry, so the number you approve is the number that gets billed.

  39. FixPaymentsReliability

    Pending debits stay pending, and mandates travel with the card

    • An off-session debit that is still in flight is reported as pending, not as a failure — so it is left to settle, and the payer is charged exactly once.
    • A stored mandate is sent with the charge. Where the gateway issued one, tmbilling presents it, which is what keeps recurring debits authorised.
    • Voiding an invoice returns its credit, and a parked invoice can close, so nothing stays reserved against a bill that no longer exists.
    • Cancellation credit is calculated from the current term, so the amount you are shown at cancel time is the amount that is issued.
  40. FeaturePayments

    Direct debit and wallets on Stripe

    Stripe direct debit and wallet payments are now reachable from checkout and the portal, so buyers who do not want to hand over a card have a route that works.

    • Direct-debit rails have their own failure and recovery handling, because a bank debit fails differently from a card and deserves a different answer.
    • A paused mandate is re-asked. When a mandate can no longer carry a charge, the payer is invited to re-authorise rather than the payment simply not happening.
    • A vaulted method's mandate can be recovered from the gateway, so a method that arrived through a migration is as usable as one created here.
  41. FixPaymentsIndiaCustomers

    India mandate ceilings, and credit that stays visible

    • The India card-mandate ceiling is set on the intent, which is where the gateway reads it — so the amount a mandate is authorised for is the amount that gets registered, and the same card gets the same answer every time.
    • Credit stays visible after a cancellation. Money you owe a customer remains on their page whatever happened to the subscription that produced it.
    • PayPal refunds are tagged, so a refund can be traced back to the payment it reverses.
    • Holds that never captured no longer book a reversal, keeping the ledger a record of money that actually moved.
  42. ImprovementOps

    Alerts that name the rows they counted

    An alert that says "37" and stops there costs you the next ten minutes. Every alert now names the rows it counted and links straight to them, with the filters already applied.

    • Operations and correctness are separate. Something slow or retrying is a different kind of news from something that does not add up, and they no longer share a list.
    • A warning that will not clear escalates. A condition that persists gets louder instead of staying at the same level indefinitely.
    • Gateway money is legible. The screens that reconcile what the gateway holds against what we booked now show which captures are ours and what each one belongs to.
    • A possible double charge is called what it is, so the most expensive thing to miss is the clearest thing on the screen.
  43. ImprovementAccountsDevelopers

    Simpler sign-in, and a webhook resend that shows its exchange

    Signing in

    • Fewer password re-prompts. Being signed in is enough for the things that only needed proof you were signed in.
    • Google sign-in works from an invite, so a new teammate can accept and be working in one step.
    • A signed-in visitor who lands on the sign-in page is sent onward, and signing in returns you to the page you were heading for rather than the home page.

    Webhooks

    Resend calls your endpoint immediately and shows the exchange — the request we sent and the response you returned, on screen, while you watch. Endpoints can be named when you create them, and the delivery log groups one card per endpoint so a noisy endpoint is easy to find.

  44. PerformanceOpsPayments

    The billing clock got faster

    Settlement sweeps accounted for the overwhelming majority of each billing tick. They have been scoped to the work that actually needs doing, which gives every cycle back to the work you care about — renewals, retries and invoicing.

    The practical effect: the clock keeps up comfortably at your current book size, with room as it grows.

  45. FeatureInvoicingCurrenciesSubscriptions

    Exchange rates refresh themselves

    Rates refresh daily from the European Central Bank, so a multi-currency book converts at something current without anyone maintaining a table.

    Each invoice stamps the rate it was issued at. A converted amount on an invoice stays the amount that was invoiced, whatever rates do afterwards — which is what makes the document a record rather than a live calculation.

    The subscription page shows next renewal's tax, so the amount the customer will be charged is visible before it happens rather than after.

  46. FeatureOps

    The billing clock has a diary

    /ops/due-work is the billing clock's diary. Everything the clock is going to do, when it is going to do it, and what is overdue — on one screen, readable at a glance.

    • The diary is maintained as work is written, so it is accurate the moment you open it rather than as of the last sweep.
    • The tick's pass list is declared and enforced, so what the clock does each cycle is a stated contract rather than an emergent one.
    • No tenant can starve another. Work is scheduled fairly across businesses, so one large book does not delay everyone else's renewals.
    • A healthy tick is reported as healthy, so the alerts that fire are the ones worth reading.