Changelog · internal.raklet.com

Product Releases

What we shipped to production, one entry per Test → Prod promotion, grouped by customer impact. This is the source for our monthly product-update emails — newest release on top.

Deploy path: master → test → prod Latest: #14184 · 22 Jun 2026 Maintained by: Engineering
How to read this

Each release is one prod promotion. Within it, impact tiers: Headline new capabilities, Billing & payments revenue-affecting, Improvements fixes & polish, and Behind the scenes (no customer impact — usually trimmed from the customer email). PR links point to the GitHub change.

Where this fits — our goals

These releases ladder up to the themes the team is driving in the RakletV3 push (target 30 Jun 2026):

Release #14184 · 22 June 2026

Prod promotion #14184 (27 PRs). Dominated by the zero-error production hardening initiative (ENG-161), with a new member messaging flow, billing-safety guards, and a developer Action Log API.

🚀Headline — new customer-facing capabilities

WhatsApp-style new-chat modal with inline contact picker #14155

Starting a conversation in the member portal is now a single, familiar flow: a new-chat modal with an inline, searchable contact picker — pick one or more members (chips show who is selected), then move straight to a compose step. No more leaving the inbox to find someone.

New-chat modal with contact picker
New-chat modal + picker
Searching the contact picker
Inline search
Compose step after selecting a contact
Compose step
Action Log API for integrations #14073

A new read-only, API-token-authenticated GET /app/actionlogs endpoint lets external systems reliably ingest an organisation action log — paginated and filterable by action key, member, or date range — for server-to-server integrations, without screen-scraping the admin.

💳Billing & payments

Deleting a referenced payment account is now blocked #14067

A payment account that is still attached to an active membership plan or a scheduled payment can no longer be deleted — the delete is blocked with a clear message naming the plan to fix first. This stops later approvals and recurring charges from targeting a deleted sub-merchant.

Delete blocked with referencing-plan message
Delete blocked — names the plan
Past-due banner now links to invoices #14157

The billing past-due banner now routes straight to the invoices page, so admins can act on an overdue balance in one click.

Past-due banner routing to invoices
Past-due banner → invoices
QuickBooks payment sync carries source context #13928

Payments synced to QuickBooks now include a descriptive memo (event / donation / membership + Raklet ref + processor txn), the correct currency, and the customer phone — so accountants can reconcile in QBO without guesswork.

Payment hardening: Connect webhook + MRR sync + imported dates #14129 #14127 #14146

Guards a missing Stripe key on the Connect checkout webhook, repairs orphaned Stripe references in the MRR sync, and correctly handles imported subscription payment dates.

Improvements & fixes

Fundraising campaign create page
Campaign create — reachable again

🛠️Behind the scenes no customer impact

Trimmed from the customer email — kept here for the team record.

Release #14109 · 18 June 2026

Prod promotion #14109 (55 PRs). Headlined by the new fundraising campaigns experience in the admin SPA, Events V3 ticketing in the SPA, and a big mobile portal step. Plus a full observability overhaul behind the scenes.

🚀Headline — new customer-facing capabilities

Fundraising campaigns in the new admin SPA (ENG-87) #14035 #14039 #14040 #14037 #14056

Fundraising moves into the modern SPA: a create/edit campaign builder, a campaign cockpit with inline payment buttons, a campaigns list with live progress cards, surfacing of failed recurring donations/payments, and a redesigned member donation detail page. See the cockpit and builder wireframes.

Fundraising campaign cockpit
Campaign cockpit
Campaigns list with progress cards
Campaigns list — progress cards
Redesigned member donation detail
Member donation detail
Events V3 ticketing in the SPA (ENG-87) #14034 #14032 #14086

Event ticketing moves into the SPA: manual ticket registration and per-ticket payment details, with legacy MVC event/fundraising URLs now redirecting to their SPA routes so old links keep working.

Mobile portal modernization (ENG-119 / ENG-125) #14105 #14083 #14080 #14112 #14118 #14154

The member portal keeps marching toward mobile-first: a reactive bottom bar with search recents + a notifications modal, content-scoped loading states, mobile chrome polish (search keyboard, close buttons, nav animation, notification prefetch), a payments Actions menu with QR-first tickets and donation cards on mobile, and 9 UI polish fixes from the demo.raklet.net review. See the mobile chrome spec.

Mobile home feed
Mobile home feed
Mobile navigation drawer
Navigation drawer
Mobile fees and payments
Fees & payments

💳Billing & payments

Failed recurring donations & payments surfaced in the SPA #14037

Admins can now see failed recurring donations/payments directly in the new SPA, so dunning and follow-up don't depend on the old screens.

Mobile payments: Actions menu, QR-first tickets, donation cards #14118

On mobile, payments get an Actions menu, event tickets lead with the QR code, and donations render as cards — making the on-the-go payment/ticket experience first-class.

Improvements & fixes

Apply form clean validation messages
Apply form — clean validation (RAK-349)

🛠️Behind the scenes no customer impact

Trimmed from the customer email — kept here for the team record.

Earlier releases

Prior prod promotions, to be expanded into full entries as the changelog backfills: