Changelog
All notable changes to Generous.nz are recorded here, grouped by version. Every deployed build has a version number, a git tag, and an entry below.
Versioning scheme
Versions follow MAJOR.MINOR.PATCH:
- 0.x — pre-launch. Minor bumps mark a completed build phase or major feature set; patches are bug fixes on the current build.
- 1.0.0 — first public launch.
- 1.x+ — post-launch: minor = new features, patch = fixes, major = breaking changes or significant re-architecture.
Each version is tagged in git (v0.2.0) and the current version is kept in
package.json. See docs/version-control.md for how to cut a release.
[0.9.325] — 2026-09-11
Changed
- The campaign form's thank-you message is now prefilled: "Thanks so much for supporting our cause — it really means a lot to us…", so donation receipts carry a warm line instead of arriving bare. It stays optional — fundraisers can rewrite it or clear it (an empty box saves as no message, and the field is prefilled again next time the form is opened). Campaigns that already have their own message keep their own wording untouched.
[0.9.324] — 2026-09-11
Fixed
- "Please enter a URL" after a cover image upload. The uploader saves
images as site-relative paths (
/api/uploads/…), but the cover-image fields were markedtype="url", so the browser blocked the form with "Please enter a URL" even though the upload had succeeded. Those fields — the fundraiser cover image, and the organisation logo and cover image — are now plain text inputs with a URL keyboard hint, so an uploaded image or a pastedhttps://…link both work (the server-side rules already accepted both).
[0.9.323] — 2026-09-11
Fixed
- AI-written copy can no longer send supporters to another site. A generated campaign story suggested donating "via our Givealittle page". Every AI prompt now carries hard rules — this site is the only place to give, never name or link another platform, never invent links, emails, phone numbers or payment details — and a deterministic check runs over the result. If a model still names another platform the draft is regenerated once, and the built-in template (written for this site only) is used if it happens again, so off-platform copy is never shown, saved or published. The saved draft containing that Givealittle line has been corrected.
- AI moderation now treats off-platform giving as a risk factor for campaigns and listings (another site, an external link, a personal bank account or a mobile number), so anything steering supporters away from the checkout is flagged for a human reviewer.
Changed
- Help centre: the AI story generator article now explains that drafts are always written for Generous.nz and never point supporters elsewhere.
[0.9.322] — 2026-09-11
Added
- Who you are buying from is now explicit at every step of a purchase.
Stripe Checkout carries a message naming the seller and confirming the
payment goes to them (not Generous.nz); the wholesale product page says
"Sold and fulfilled by
— your purchase is with them, not with Generous.nz"; fundraiser store cards name the supplying business; the order receipt email spells out that delivery, product faults and refunds belong to the seller; and the success page explains that refunds and chargebacks come from the seller's account, with us supplying the records if a buyer takes it further. - Help centre article "Who am I buying from?" covering the seller-of-record position and what happens if a business closes or stops trading.
Changed
- Terms of Service 3.2 — wholesale items are bought from the supplying business rather than from Generous.nz, including what happens if that business stops trading or becomes insolvent, what we will still do to help, and a matching limitation-of-liability item.
- Refund Policy 3.2 — new section 2.1 covering seller insolvency, refunds from the seller's Stripe balance and the chargeback route.
- Wholesaler Agreement 3.3 and Seller Agreement 3.1 — duty to tell us promptly if the seller stops trading or becomes insolvent, and to still fulfil or refund orders already accepted.
[0.9.321] — 2026-09-11
Changed
- Finished the "fundraiser's share" sweep — the stragglers that still said "commission" or "fundraisers earn" now match: home page feature list, getting-started page, wholesale catalogue badges, wholesale product page (price line and "How it works" step 3), fundraiser referral pages (price example, feature card and FAQ), admin moderation labels and preview, wholesale catalogue cards, order/analytics CSV column headings, and the emails sent for share invoices (issued, received, failed) plus the daily reconciliation report and refund/dispute messages.
[0.9.320] — 2026-09-11
Changed
- Terminology unified to "fundraiser's share" across all customer-facing copy: business page, wholesale catalogue and product pages, referral pages, register page, help centre, dashboard billing/setup, wholesale screens and admin labels, plus the emails themselves (titles, subjects, bodies and invoice descriptions). Code identifiers, internal template keys and the legal documents still use "commission" as the contractual term.
[0.9.319] — 2026-09-11
Changed
- Business page now notes "(Stripe's card processing still applies)" wherever the fee-free first $1,000 is promoted — the hero offer box and the closing CTA — so "no platform charges" can't be read as "no fees at all".
[0.9.318] — 2026-09-11
Changed
- Business page now states payout timing: "Money lands in your Stripe account and is paid out to your bank on Stripe's normal schedule" — added to the sale example footnote and to "How it works" step 3.