2026-07-28
Refunds, credit notes, and webhook reliability
Order refunds API & credit notes — Merchants can now issue refunds via thePOST /v0/orders/:id/refunds API endpoint. For invoice-backed orders, a credit note is automatically generated and emailed to the buyer, keeping your accounting records accurate.Cancel pending payments — A new POST /v0/payments/:id/cancel endpoint lets you programmatically cancel any pending payment, including automatic subscription plan-change rollback when applicable.Subscription confirmation emails now show renewal details — Confirmation emails for new subscriptions include the next renewal date and the amount that will be charged, so customers always know what to expect.Webhook auto-disable with notifications — Endpoints that repeatedly fail or are blocked (e.g. by SSRF protection) are now automatically disabled after a configurable threshold. You’ll receive an email notification when a webhook is blocked, failing, recovering, or disabled, and the Dashboard shows the block reason on each attempt.Faster embedded checkout — The embedded checkout element loads noticeably faster thanks to middleware pre-warming and font-loading optimisations.2026-07-20
Webhook Management API, Subscription Filters & Upcoming Payment Preview
Webhook Management via API You can now manage your webhook endpoints and inspect delivery history entirely through the v0 API. New endpoints let you create, update, and delete webhook configurations, and query per-event delivery attempts — making it straightforward to automate webhook lifecycle management and debug delivery failures programmatically. Full reference is available in the Webhooks section of the API docs.Subscription Date Filters & Upcoming Payment PreviewGET /subscriptions now accepts createdFrom and createdTo query parameters for date-range filtering. A new GET /subscriptions/{id}/upcoming-payment endpoint returns a preview of the next charge amount, date, and tax breakdown — useful for surfacing renewal details in customer-facing UIs.Bug Fixes- Fixed an invoice tax breakdown that was showing the gross line amount instead of the net (pre-tax) amount.
- Fixed a duplicate-invoice issue that could occur when a
subscription_cycleinvoice.paidevent was delivered more than once. - Fixed a stuck “domain removal in progress” banner that persisted after domain teardown completed.
- Trial orders no longer incur a platform fee.
2026-07-16
End trials early, tax calculation API, and business buyer support at checkout
End subscription trials via API Sellers and integrators can now end a subscription’s trial period immediately using the newPOST /api/v0/subscriptions/{id}/end-trial endpoint, without waiting for the trial to expire naturally.Tax calculation endpoint
A new POST /api/v0/tax/calculate endpoint lets integrators fetch the applicable tax for a product before a purchase is initiated, making it easier to display accurate pricing to buyers.“I’m a business” at checkout
Buyers can now identify themselves as a business entity directly on the minimal checkout form. This enables B2B purchase flows and ensures the correct tax treatment is applied at the time of purchase.Custom subscription management links in emails
Sellers can now configure a custom subscription management URL in Store Settings. When set, this URL will be used in customer notification emails instead of the default Fungies-hosted portal link.2026-07-13
customFields validation on Checkout Element
Passing customFields when creating a Checkout Element via the API now returns a clear 400 error instead of silently ignoring the field. If your integration sends this parameter, please remove it before upgrading to avoid unexpected rejections. The API reference has been updated to reflect this behaviour.Custom-data webhook docs corrected
The developer documentation forcustomFields in webhook payloads has been corrected to accurately describe the payload shape and clarify key-matching requirements.2026-07-10
Multi-item subscriptions
The subscription create/update/charge API now accepts multiple line items — invoices and webhooks show the full itemized breakdown instead of one summed line. We also fixed a dashboard crash when selecting an offer whose name contains a quote character.2026-07-09
Account deactivation, and storefronts publish by default
- Admins can now deactivate (reversible) or permanently erase a member account, with a confirmation email and a login banner shown after deactivation.
- New workspaces now publish their storefront by default instead of starting unpublished.
- Fixed the “Stripe not connected” banner showing incorrectly, and workspace metadata not updating right after connecting a Stripe account.
- Fixed a subscription item not reflecting an upgraded offer after a failed payment.
2026-07-06
Workspace bans and a new subscription webhook
- Admins can now ban a workspace for abuse or ToS violations — the store goes offline immediately and the owner loses dashboard access, with an email notification.
- Added a
subscription_updatedwebhook that fires on subscription status transitions, with guidance for reconciling out-of-order webhook delivery. - Fixed a crash in the dashboard and store caused by third-party browser extensions (e.g. translators) mutating the page.
- Fixed the embedded checkout element rendering an opaque background instead of a transparent one.
2026-07-04
Workspace lifecycle emails and webhook reliability
- Admins can now connect a new Stripe account to a workspace that hasn’t taken a sale yet.
- Added progressive lifecycle emails (suspension, archived, purge-scheduled) that warn sellers before each step.
- Fixed subscription creation failing when Stripe settled the payment server-side without returning a client secret.
- Fixed outgoing webhook deliveries erroring when the target event or webhook no longer exists — those deliveries are now dropped cleanly instead of failing.
2026-07-03
Workspace archiving and checkout fixes
- Admins can now archive any workspace to take it out of circulation regardless of payment history, permanently protecting it from the automated inactivity sweep.
- Fixed
fngs-discount-codeandfngs-quantityURL parameters not being applied when opening a checkout-element link. - Fixed Apple Pay and Google Pay showing the pre-tax amount instead of the tax-inclusive total.
2026-07-02
Paid workspaces are now permanently protected from cleanup
The inactive-workspace sweep now permanently protects any workspace that has ever taken a paid order — it stays active as the system of record for its transaction data and is never warned, suspended, archived, or purged.2026-07-02
Safer inactive-workspace handling
Reworked the inactive-workspace sweep into a recoverable lifecycle (active → suspended → archived → purge), fixing a bug where inactive workspaces could be permanently deleted at suspension instead of being given a recovery window. Also fixed a checkout billing-country mismatch between server and client render.2026-07-01
New API filters and email fixes
- Added
checkoutIdand custom-field filters to the orders and payments list endpoints. - Fixed the store name and BCC address in transactional emails falling back incorrectly when not explicitly configured.
- Fixed a crash when retrieving offer information for a missing offer.