← All Open Collective pages

This is the shaping document, and it leads. Everything else in this folder — the design system, the pages, the module picker — is downstream of the decisions here. Generated from SHAPE.md; the source is on the machine running the fork.

What this is, who it is for, and what to build first

A shaping document. Written 9 August 2026, corrected the same day. For Shemeer. Nothing here is decided — the decisions are listed at the end.


⚠️ Correction to the earlier version of this document

An earlier version of this document recommended dropping Open Collective. Its central reason was wrong, and the verdict below is a fresh one, not a defence of the old one.

The earlier version said Open Collective could not show a donor anything — that a donor on a private collective would see nothing at all. That claim was reached by reading the code. It has since been disproved by running it, on the live fork, with a real login:

What was tried What happened
An anonymous visitor asks for a private collective Refused: "This account is private. You must be a member to view it."
An anonymous visitor asks for a collective that is still public Fully readable, balance and all
A donor asks for her own contributions — one login, three organisations, one of them private All 24 came back — amounts, who they went to, statuses, including every gift to the private one

The rule that permits it is a deliberate one, and its own note in the code says so: an order is blocked when its destination is private unless the viewer has a direct stake in it — contributor, creator, or fiscal host admin. A donor is the contributor. She keeps her own history even when the recipient has gone dark.

So: private collectives, donor accounts, contribution receipts and one login spanning several organisations all work, with no code changes. The platform is not disqualified on capability.

Three things the correction does not touch, and they still stand:

  1. The part of Open Collective that is genuinely hard and genuinely excellent is fiscal hosting — one organisation holding and disbursing money for many. This model rejects fiscal hosting outright.
  2. It is not the book of record. Each organisation's CA files from Tally or Zoho Books.
  3. Donor-only transparency is worth nothing unless donors come back. That is unchanged and it is still the hardest problem in this product.

And one true finding from the earlier version stays, demoted: donor-only updates really do die on a private collective — the code turns the Updates feature off for private accounts entirely. Shown that trade, the Builder said the smaller thing was "good enough for now", so it is a known limit rather than a blocker. It is recorded in section 5.

The old 90-day kill test is dead for a different reason than before: it required public pages, and there will not be any. A replacement is in section 7.

What being wrong cost. One shaping round, and a "drop it" recommendation that would have thrown away something usable. Caught in hours, before anything was built on it. That is the cheapest possible version of this mistake, and it is only cheap because the fix was a measurement rather than an argument. The lesson is narrow and worth keeping: reading permission code tells you what a rule says; only running it tells you which rule applies.


1. What changed this week, and what it costs

The premise that changed: transparency is no longer public. It is for donors only, permanently. In your words:

"Priya now has a login with our platform. she can go back in there and generate her donation reciepts. download them. see updates about the project she donated to. and find other projects. Only donors will have visibility. transparency is only for the donors. not for everyone at this point."

Asked whether that was a first phase, you said permanent. Three further corrections came with it: organisations get paid, never individuals; no organisation joins expecting to use FCRA here; storyboards as diagrams.

Three things this deletes outright

What it deletes Why
The public account book — the thing the first two documents said this product was There is no public. The sentence "a shared public ledger anyone can read" is now false.
Storyboard B — an individual receiving money Your instruction. Only organisations get paid.
Everything about FCRA and a second foreign-money route Your instruction. Foreign money is refused by everyone, forever, full stop.

One thing it deletes that nobody has said out loud yet

Priya can no longer show anyone what her money bought. The last frame of the old storyboard was her forwarding the page to the friend who sent her the story. Under donor-only visibility that friend sees nothing on that page. The sharing loop — the growth mechanic, and the top of the old ladder — is gone by definition.

That is not an argument against your decision. It is the price of it, and it should be paid knowingly rather than discovered in month four. What the friend can be shown is settled in section 4.

What being asked this late cost

The fork was set up, a Razorpay payment provider was built inside it, and two shaping rounds were written around a public ledger. The Razorpay week was written off by the config-only rule. The centrepiece of the last document — the public page, the forwarding loop — is written off now. Call it a fortnight of work and two rounds of thinking. Cheap, because nothing has been announced and no donor has given a rupee. It would not have been cheap in three months.


2. What Open Collective can and cannot do, now that it has been measured

This is the whole factual basis for the verdict. Two columns, and the second one is what decides it.

It can do these, today, with no code written

How it was established
Keep an organisation's whole book private — invisible to the internet Run, on the fork
Give a donor a login of her own Run
Show her her own giving across several organisations in one place, including private ones Run — 24 contributions, three organisations, one login
Issue her a contribution receipt for each gift Its standard receipt, unchanged
Give admins a ledger that balances, and an expense flow with a bill attached and approvals Its core, and the thing it is best at

It cannot do these, and no setting reaches them

Why
Show a stranger anything at all — not the name, not the story, not a progress bar, not a donate button Measured. An anonymous request for a private collective is refused outright. Section 4.
Show a donor the bill her money paid A donor has a stake in her own gift. She has no stake in an expense. The private gate lets her through the first door and not the second.
Donor-only updates The Updates feature is switched off entirely for private accounts. This is the true finding from the earlier version, and it survives.
An 80G certificate, or the Form 10BD file the CA needs by 31 May Indian statutory paperwork. Never was, never will be.
Send an email because something happened It has notifications, not this.

One thing that is read but not run, and it decides everything

Under this model no money ever passes through Open Collective — it lands in the organisation's own Razorpay and its own bank. So the helper app has to tell Open Collective a gift happened.

Reading the code, there are two doors for that, and they do not agree:

That has not been run, and after this week's correction I will not treat reading as knowing. It is the single test that settles the platform question, and it is an afternoon:

The test. As an ordinary donor account that administers nothing, get one ₹500 contribution recorded against a private collective through the API, then read it back as that donor. If the write is refused on every route, Open Collective has nothing left to do here and drops. If it works, the shape in section 3 stands. Owner: builder.


3. Does Open Collective survive? Yes — behind the wall, not in front of it. Needs your yes.

Recommend: keep it, as the organisation's own book that Devi and her colleagues keep. Do not make it Priya's product. Conditional on the test above.

This is not the old verdict flipped. It is a smaller claim in a different place.

Here is the argument in five lines.

  1. Everything a donor meets has to be built in the helper app anyway. The stranger's giving page, because Open Collective will not serve an anonymous visitor a single byte of a private account. The "what your money bought" page, because a donor cannot see a bill. The 80G certificate and the 10BD file, because they are Indian law. The email that fires when something is bought, because nothing in the platform fires on that event.
  2. But the admin side is a genuinely good fit, and that is new. An expense with the shop's bill attached, two people approving it, and a ledger that balances afterwards is roadmap item 8 — above the release line — and it is precisely what this software already does well, on a private account, with configuration only.
  3. Fiscal hosting is still rejected, so the ceiling is low. The thing Open Collective is famous for — one body holding money for many — is the thing this model refuses. You are keeping the filing cabinet and declining the safe. That caps how much value it can ever add here.
  4. It is still not the book of record. Each organisation's CA files from Tally or Zoho Books. This is a second set of books that no filing comes from, and a second set of books that nobody is required to keep correct is a set of books that eventually is not.
  5. It costs four services on a box that cannot comfortably take them, from a codebase nobody here wrote, with no supported install path, and stock secrets published in its own public repository that must be regenerated per instance.

So: keep, narrowly. Lines 1 and 3 are why it must not become the donor's product. Line 2 is why dropping it outright would throw away real work. Lines 4 and 5 are why it must never grow past the back office.

Cost of my being wrong in the keeping direction. You carry four services and an unowned codebase for an expense screen six people open, and Devi has a second login on her Tuesday — which makes the most fragile frame in the whole storyboard slightly worse. Recoverable: the helper app talks to it through one narrow seam, and replacing that seam with its own tables is days, not weeks.

Cost of my being wrong in the dropping direction. Roadmap item 8 — the approval flow, the attachment, the ledger that balances — gets built by hand, badly, in the middle of the release. That is the more expensive mistake, and it is the one the earlier version of this document was about to make.

The line that protects you either way

One seam, named now: the helper app writes contributions in, and reads expenses back out. Nothing else. No donor ever holds an Open Collective login. No page of it is ever shown to anyone outside the organisation. If that seam ever needs to widen, the answer is to drop the platform, not to widen the seam.

⛔ And the standing rule is unchanged and not up for discussion: no new features in Open Collective's code, ever. Settings and configuration only; everything else is the helper app beside it, talking to its API. That rule already cost a week of Razorpay work; it does not get re-litigated because a measurement went our way.

What is still adopted rather than built

Not a decision I take — architect runs the alignment gate. Naming candidates so it is not re-derived from nothing:

Job Open source first Recommendation
Donor sign-in Supabase Auth (Apache-2.0, already runs five projects here, emailed-link sign-in native) · Keycloak (Apache-2.0, far heavier) · WorkOS (proprietary, credentials on file) Supabase Auth, in the helper app. Open Collective has a perfectly good passwordless login, but using it would put the donor inside a product she must never see.
The organisation's internal book, approvals and attachments Open Collective (already running) · Firefly III (AGPL) · the organisation's own Zoho or Tally (proprietary, and legally the book of record) Open Collective, configured, conditional on the test in section 2.

4. What a stranger sees before she has an account

This was the sharpest open question, and the measurement answers most of it.

An anonymous visitor asking Open Collective about a private organisation is refused outright — not a stub, not a name, not a progress bar. Nothing. Therefore:

The giving page cannot live in Open Collective. It is a page the helper app serves, on our own address, that a stranger opens with no account and no login.

That is not a compromise; it is what the config-not-fork rule already assigns to the helper app — the country's payment rail, and the checkout itself. It simply is not optional any more.

Recommend for what that page shows: the story, the ask, and the progress — "₹23,400 of ₹40,000 raised". Everything else is behind a login: the ledger, the bills, the names, the updates.

Two details that follow, and both matter:

A progress bar reveals nothing about any individual and is the single strongest reason a stranger gives. If you mean that even the total is private, say so — and the giving page loses its best device. This is decision 3.


5. What this is now, in one sentence

The product changed category this week. It is not a transparency platform any more. It is a donor account.

Give to one of these Indian organisations, and you get a permanent account that shows you exactly what your money bought — with the bill.

Who it is not for. The general public, journalists, funders doing diligence. Individuals who want to be paid. Donors outside India. Organisations that want somebody else to hold their money. Anyone looking for a payment gateway.

The thing that is structurally different, and it matters more than anything else here

Public transparency works even if nobody looks. It is a signal. It sits there being checkable, and that is most of its value.

Donor-only transparency is worth exactly nothing unless donors come back. It is a locked room. If Priya never returns, the entire justification for this product is a room nobody enters.

So the whole thing rests on one behaviour: the return visit. That is a harder product problem than a public page, and it is what the build has to be aimed at. The correction does not soften this one bit — it only means the room now has a working door.

The known limit, recorded plainly

Donor-only updates die on a private collective. The platform switches its Updates feature off for private accounts entirely, so "a post only my backers can read" cannot come from it. Shown the trade, the Builder said the smaller version — she sees her own donations and her receipts — is "good enough for now." So this is a limit, not a blocker. If donor-only updates are ever wanted, they are a helper-app page (roadmap item 12), never a change to the platform.

What you gain by donor-only, which is real

The second organisation's first objection was never "how much work" — it was who gets to see my numbers. Donor-only makes that a much easier yes. And "you can see this because you gave" is a genuine reason to give, which a public page can never be. Transparency stops being marketing and becomes membership. Better product for organisations, worse one for growth.


6. Three storyboards

Everyone here is invented. Priya, Devi, Nusrat, Rahitha and Chalanam Foundation are illustrative characters written to test the product, not real people or real organisations, and nothing said about them — including any registration or tax status — describes anybody actual.

The low scores in these tables are the point. Where the feeling drops is where the product fails.

A — Priya, and the year after her ₹500

Priya — her ₹500, and the year after it

Stage What happens How it feels
She has never heard of us Friend sends a WhatsApp link ●●●○○ 3
Reads a story about a chenda class on the bus ●●●●● 5
Reaches the end and there is finally something to do ●●●●○ 4
She gives One screen, three amounts, she picks ₹500 ●●●●○ 4
Ticks a box saying she is an Indian citizen ●●●○○ 3
UPI, thumbprint, nine seconds ●●●●● 5
Money lands in the organisation's own bank, we never touch it ●●●●● 5
She gets an account she never asked for Email arrives before her bus stop ●●●●● 5
Thank you, a receipt, and one link to see her giving ●●●●○ 4
Taps the link, no password, she is in ●●●●● 5
Weeks later — the reason this exists Email says the drums arrived on Tuesday ●●●●● 5
Page opens on the exact thing her ₹500 was part of ●●●●● 5
The shop's bill sits directly above the gifts that paid it ●●●●● 5
She forwards it and her friend lands on the ask, not the bill ●●●○○ 3
She comes back on her own Adds her PAN to unlock her 80G certificate ●●●○○ 3
Downloads a year of receipts in one go ●●●●● 5
Sees all three organisations she has given to on one page ●●●●● 5
One line at the bottom says two more things need money ●●●●○ 4

The forwarding frame is no longer a 1, and that is the correction's only real effect on Priya. The friend still cannot see the bill. She can see the thing that needs money, which is the part worth forwarding anyway. The reason to exist is the fourth section. Anyone can build the second section in an afternoon with Razorpay. Almost nobody builds the fourth.

B — Devi at Aikyam, who is the whole product's weakest link

Devi at Aikyam — the person everything quietly depends on

Stage What happens How it feels
Money comes in without her Contributions record themselves the moment they arrive ●●●●● 5
She does nothing and nothing is wrong ●●●●● 5
Money goes out with her Rahitha sends the shop's quotation on WhatsApp ●●●●○ 4
Two people approve it on their phones ●●●●○ 4
Devi pays the shop from Aikyam's own bank by UPI ●●●●○ 4
Rahitha never has to spend her own money and wait ●●●●● 5
The part that quietly fails Devi must type what was bought and attach the bill ●●○○○ 2
A second login, on a system built for somebody else ●○○○○ 1
A busy fortnight comes and she does not ●○○○○ 1
No donor email goes out, because nothing was recorded ●○○○○ 1
Nobody outside notices, because nobody outside can look ●○○○○ 1
What keeps it honest One named person owns this record, not a rota ●●●●○ 4
A monthly check that the record matches the bank ●●●●○ 4
A nudge when nothing has been recorded for 60 days ●●●●○ 4

Read the third section twice, and note the frame the correction adds. Keeping Open Collective means Devi has a second login, in a dashboard designed for open-source collectives on the other side of the world. That is the honest cost of the recommendation in section 3, and it lands on exactly the person the product can least afford to lose. Under a public ledger a stale record is embarrassing and somebody complains. Under donor-only it is invisible, and the only symptom is that Priya's email never arrives — which looks like nothing at all.

Note also that Rahitha never receives money. Aikyam buys drums for its own programme, from its own bank, and Rahitha never floats a rupee. That is the whole of what survives of the old storyboard B.

C — Nusrat, deciding whether to bring the second organisation

Nusrat at Chalanam Foundation — deciding whether to join

Stage What happens How it feels
The objection Sees Aikyam's donor page over someone's shoulder ●●●○○ 3
First thought is how much work is that ●●○○○ 2
Second thought is who gets to see my numbers ●○○○○ 1
The answer that wins her Your money stays in your bank and your own Razorpay ●●●●● 5
Nothing is public, only the people who gave can look ●●●●● 5
You choose what each funder is shown ●●●●○ 4
Getting live Opens Chalanam's own Razorpay account, KYC takes eleven days ●●○○○ 2
Aikyam fills in her 80G number, bank and keys in half an hour ●●●●○ 4
Her first ₹1000 lands in Chalanam's own bank forty minutes later ●●●●● 5
Foreign money, said plainly She has always taken some money from abroad ●●●○○ 3
She is told no, not through this, not any organisation, not ever ●●○○○ 2
She keeps taking it the way she always has, entirely outside this ●●●○○ 3
31 May, with her CA He asks for every donor's name and PAN ●●●○○ 3
She downloads one file in four minutes ●●●●● 5
Donors who never came back to add a PAN are missing ●●○○○ 2
Their 80G certificates cannot be issued at all ●○○○○ 1

The second section is much easier to say than it was last week, and that is the one clear win from your change. The last two frames are the new cost of collecting PAN from her profile rather than at checkout — see decision 6.

Where the money and the information actually go

From What moves To
Priya, on her phone ₹500 by UPI The organisation's own Razorpay
The organisation's own Razorpay settles overnight The organisation's own bank account
The organisation's own Razorpay tells us it succeeded The helper app — everything Priya ever sees
The helper app — everything Priya ever sees receipt now, the real news later Priya, on her phone
Priya, on her phone signs in by emailed link Priya's own page
The helper app — everything Priya ever sees Priya's own page
The helper app — everything Priya ever sees records the gift — the one write Open Collective, private, staff only
The organisation's own bank account pays the shop, by a human The shop
The shop gives a bill Devi records it, two people approve
Devi records it, two people approve Open Collective, private, staff only
Open Collective, private, staff only the helper app reads it back — the one read The helper app — everything Priya ever sees

Open Collective now appears, and it appears exactly twice. One write in, one read out, and no line from it to Priya. That picture is the recommendation. If either of those two lines turns out to be impossible, the box comes out and the helper app grows two tables.


7. The eleven-star ladder

The moment: Priya coming back, and finding out what her ₹500 did.

Why this moment and not the gift. Giving is a commodity — every Indian platform has had a UPI button for a decade, and we will never be better at it, only adequate. And now that nothing is public, the old moment — a stranger reading the ledger — cannot happen at all. What is left is the return visit, and it is the only thing that makes donor-only transparency worth anything.

Stars What happens
3 She can log in, if she remembers she has an account. She sees a list of what she gave, to whom, and can download each receipt. Nothing ever reminds her to look.
4 A quarterly newsletter with a login link. She skims it.
5 Three weeks later, one email: a photo of six drums in a rented room, and the line "they arrived Tuesday".
6 The link logs her straight in — no password — onto the exact thing she funded, where the ₹38,200 bill sits directly above the ₹23,900 from twelve people that paid it, and one of those lines is hers.
7 The page has done the arithmetic she would have had to do: "Your ₹500 was part of the ₹23,900 that bought six chenda from Peruvanam Music House on 4 September." Everything else she has ever given is on the same page, each with a plain status, and her receipts are there to download without asking anyone.
8 The email arrived because something happened, not because a month passed. The trigger is Devi recording the purchase. A donor who funds something slow hears nothing and is not lied to.
9 Twenty seconds of phone video from the first class, on her page, before it is anywhere else. She saw it first because she paid for it.
10 A year on, one page: everything she gave across three organisations, what each became, a single 80G summary her employer would accept, and one honest line — "you have not been asked for anything since March."
11 The fourteen girls record a voice note using her name, and there is a seat with her name on it at the performance.

What the correction did to this ladder: it raised the floor, not the ceiling. Three stars is now free out of the box — a login, a list of her giving across every organisation, receipts to download. That is real and it should be said. But the platform's contribution stops at three, and every rung from five upward is a page and an email the helper app has to write. The product still lives between six and eight, and nothing there got cheaper this week.

Six is the build. Seven is nearly free once six exists — the helper app already knows which gifts paid for which bill, so the sentence is a sentence, not a system.

Eight is the one to fight for, and it is cheap: it is the difference between a newsletter and a product, and it costs nothing extra because the app already knows the moment Devi records something.

Nine, ten and eleven are why you would keep going.

What this ladder rules out. No rung is improved by a shared ledger, a public page, a directory, a platform balance, or by putting Priya inside Open Collective. Every rung above five is one person being told, precisely, what her own money became. That is the product.


8. What to cut

The constraint, so this is a real choice: one build effort, eight weeks, two organisations live before anything is announced. Change the constraint if it is wrong; do not remove it.

Every item is labelled Setting (a switch that already exists), Configuration (information typed in, or an existing screen set up by hand), or Helper app (the separate program beside everything else, which is where all the building happens). Nothing anywhere is labelled "change the platform", because that is not a thing that happens here.

Cut because the premise changed

Cut Kind The frame that proves nobody needs it
Open Collective as anything a donor touches Do not build Frame A: everything she meets is a helper-app page. She never has a second login, never sees a dashboard, never lands on it from an email.
Donor-only updates from the platform Cannot be configured The feature is off for private accounts. Frame A5's update is a helper-app page — roadmap item 12 — or it does not exist.
The public page, public totals of who gave, public bills Deleted by premise There is no public. Frame A: the friend sees the ask, and nothing else.
Anything an individual receives Deleted by instruction Storyboard B is gone. Rahitha never touches money.
A second payment route for foreign money Deleted by instruction Frame C4: she is told no, and keeps doing it outside. Nothing to build, ever.
A directory of participating organisations Do not build With two organisations it is a list of two. Frame A: one line at the bottom of her page — "two more things need money" — does the whole job.
The old 90-day kill test Rewritten It required public pages. See below.

Cut because no frame needs it, unchanged from before

Events and ticketing · tiers with physical rewards · ring-fenced sub-budgets · discussion threads · automatic bank feeds · multi-currency · cards and Stripe and PayPal · any platform-level payment account including RazorpayX · reimbursing people who had to spend their own money first.

Each of these is a "do not build". None appears in any frame.

What the change adds, which must be said plainly

This is not a simplification. It removes a public page and adds a login product.

New Kind Why it is unavoidable
Donor accounts and sign-in Helper app She cannot see anything without one, and it cannot be the platform's, because she must never be sent there.
A page that is hers, not the project's Helper app Her gifts, their statuses, her receipts.
The public giving page Helper app Section 4. A stranger cannot reach a private account at all.
Donor-scoped updates Helper app Who funded what, and therefore who may read what.

Net: the change costs more work than it saves, and it weakens the growth loop. Keeping Open Collective narrowly — for item 8 only — pays back some of it, not all.


9. One roadmap, in order

One list. Helper app unless labelled otherwise.

# What Lives in Frame Waits on
0 The test in section 2 — record one donor's gift against a private collective through the API and read it back Configuration nothing. Items 8 and 8a depend on the answer
1 The per-organisation record — 80G number and validity, its own Razorpay keys, its own bank, whether it can issue a receipt at all Helper app C3 nothing. Everything below reads it
2 International payments confirmed off on every Razorpay account, plus a citizenship tick at checkout and a line on the page saying so Setting + Helper app C4 item 1
3 The giving page — the story, the ask, the progress, one screen, three amounts, UPI, rupees, on a phone, openable by a stranger with no account Helper app A1–A3 items 1, 2
4 Payment succeeds, contribution recorded, and her account is created from her email whether she asked for one or not Helper app A3 item 3
5 The immediate email — thank you, payment receipt, and one link to see her giving Helper app A3 item 4
6 Sign-in by emailed link only. No passwords, ever Helper app A3 item 4
7 Her page — everything she has given across every organisation, each with a plain status, receipts downloadable without asking Helper app A5, 3★–7★ item 6
8 Devi's record: what was bought, how much, when, the shop's bill attached, two people approve — Open Collective's existing expense flow on a private account, set up by hand Configuration B2–B3 item 0
8a The one seam — the helper app writes each contribution in, and reads each approved expense back out Helper app B3 items 0, 4, 8
9 "What your money became" — the email that fires when item 8 is used, and the page it opens, with the arithmetic sentence and the bill above the gifts Helper app A4, 6★+8★ items 7, 8a
10 PAN taken from her own profile, once, reused for every future gift — forced by "your 80G certificate is ready" Helper app A5, C5 item 7
11 The 80G certificate, per organisation, carrying that organisation's own registration number Helper app A5, C5 items 1, 10
12 Updates visible only to the people who funded that particular thing Helper app A5 items 7, 8a
13 The Form 10BD file the CA opens by 31 May, generated per organisation by that organisation Helper app C5 item 10
14 One line on her page — "two more things need money now" Helper app A5 item 7
15 The written checklist that puts a second organisation live in half an hour, including its private book Configuration C3 items 1–14

——— THE RELEASE LINE ———

# What Lives in Why it waits
16 Monthly recurring giving by UPI Autopay Helper app + external approval Needs a separate approval per organisation, measured in weeks. Apply now, build after. A monthly donor is by definition a returning donor, so this is worth more than it was last week — but it cannot block a release, because the waiting is outside our hands.
17 The year-end page across every organisation she gave to Helper app 10★. Needs a year.
18 Video and photographs on her page before they are anywhere else Helper app 9★. Needs someone whose job it is to shoot them.
19 A nudge to Devi when nothing has been recorded for 60 days Helper app B4. Nothing can go stale until something exists.
20 Tax deducted at source; a third organisation's special case; anything else Each waits for someone to ask twice.

Where the line sits, and why there

Above the line: a stranger can give in under a minute, the organisation banks the rupee itself, she gets a receipt that is legal, she can come back without a password, she can see what her money bought with the bill next to it, the tax filing is possible, and a second organisation can go live in half an hour.

Item 9 is the one I would defend hardest. Without it this is a donate button with a login, and it has no reason to exist. Note honestly that item 9 ships silent — on launch day nothing has been spent yet, so the first of those emails goes out weeks later. Expected, not a fault.

Item 0 is first for a reason. It is half a day, and it decides whether items 8 and 8a are configuration or three weeks of building.

What someone can do the day it ships

What it cannot

The way this fails, and the new kill test

Two failure modes, and the second is the one that closes the product.

One: nobody records what was spent. Money never passes through the software, so nothing forces the record to match the bank. Contributions are safe — they write themselves. Spending is not. And now nobody outside can notice, because nobody outside can look. The only symptom is that Priya's email never arrives, which looks exactly like nothing. There is no clever fix; there is a small one: one named person owns that record, and a monthly check that the two totals agree. Write the name down before launch.

Two: she never comes back. Donor-only transparency is a locked room. The measurement this week proved the door works. It proved nothing about whether anyone walks through it.

The old kill test required public pages and cannot be run. This one can:

By 90 days after the first "what your money became" email goes out:

  1. At least half the donors who received one opened it and clicked through.
  2. At least one donor came back a second time without being emailed first.
  3. Every month in that period had at least one purchase recorded with its bill attached.

Any one of those failing is a finding, not a footnote. If under a quarter clicked, donor-only transparency is a room nobody enters — and the honest response is to make it public, or to stop giving transparency as the reason this exists, not to build more of it. If the third fails, the problem is Devi's Tuesday, and no amount of donor-facing work will fix it.


10. PAN, receipts, and foreign money

Nothing here can be a global rule, because organisations differ. Each gets a record, and the giving page reads that record and behaves accordingly.

Aikyam Chalanam Foundation A third, smaller organisation
80G registration Yes — current, on file Yes No
FCRA No Yes — and irrelevant here No
Its own Razorpay account Yes To be created, ~11 days Must exist first
International payments on it Off Off Off
PAN Asked from her profile, once Same Never asked
What the page promises "You will get an 80G tax receipt" Same "This organisation cannot issue a tax receipt"
Who files on 31 May Aikyam's CA, from Aikyam's own file Chalanam's CA, from theirs Nobody

A page that promises a receipt an organisation cannot issue is worse than a page that promises nothing.

Two different receipts, and they are not the same document

Worth separating, because the measurement this week made one of them free and left the other exactly where it was.

How PAN works now, and the hole in it

Under your decision, checkout asks for a citizenship tick only. PAN comes later, from her own profile, once, reused forever. The change makes this genuinely better than the old plan — the old document called PAN-at-checkout "the only thing that cannot be added later", and now it can be, because she has an account.

The forcing mechanism is the certificate: "Your 80G certificate for last year is ready. Add your PAN to download it." People will do that, because it is worth money to them.

The hole: a donor who gives in March and never returns cannot be filed for. Not "is hard" — cannot. Form 10BD needs an identifier by 31 May and she is gone. She loses her deduction; the organisation files without her. That is a real cost of collecting PAN later rather than at checkout, it is visible in the last frames of Nusrat's storyboard, and it needs your yes as decision 6.

How foreign money is blocked

Layer Where What it stops
International payments left off on each organisation's Razorpay Setting Every foreign card. This is the strong one, and it is already the default.
A citizenship tick, and a plain line on the page Helper app Establishes intent, and deters.
Anything flagged international is refused and refunded, not banked Helper app Whatever got past the first two.

Every organisation refuses foreign money, including one holding FCRA. Permanently, not just in release one — that is your instruction and it removes a whole below-the-line item. Cost of being wrong: Chalanam loses some foreign giving and takes it the way it always has. The reverse error is criminal. Not a close call.


11. The decisions that are yours

Eight. Each with a recommendation and what it costs if I am wrong. The first one is new, it is the biggest, and I am deliberately not taking it.

1. Which product is this — the donor account with the bill, or a receipts-and-history login? The measurement opened a genuine fork, and it is yours.

Recommend: A. B is a donate button with a history page, and the ladder says the reason to exist starts at six. But B is real, and if the eight weeks are not there, B in three weeks beats A in never — provided you say out loud that it is a stepping stone, because B's donor lives inside Open Collective and moving her out later is a migration. Cost of being wrong: choosing A when the time is not there means shipping nothing; choosing B and liking it means the product quietly becomes something with no reason to exist.

2. Open Collective: keep it as the organisation's private book, or drop it? Recommend: keep, narrowly — Devi's book and the approval flow, roadmap item 8, and nothing else. Conditional on the test in section 2, which builder can run in an afternoon. It is genuinely good at an expense with a bill attached and two approvals, and that is above the release line. Cost of being wrong: four services and an unowned codebase carried for a screen six people open, plus a second login on Devi's Tuesday — the most fragile frame in the storyboard. Recoverable in days, because the seam is one write and one read. Cost of the reverse: item 8 gets hand-built, badly, mid-release. That is the more expensive error, and it is the one the earlier version of this document was about to make. Either way: the donor never touches it, and no feature is ever added to its code.

3. What does a stranger see before she has an account? Recommend: a helper-app page she can open with no login, carrying the story, the ask and the progress — "₹23,400 of ₹40,000 raised" — with the progress number published from our own record, not read live from the platform. Everything else is behind a login. Cost of being wrong: if you meant even the total is private, the giving page loses its strongest device and conversion drops. Visible in the numbers within a fortnight, reversible in an hour. Not optional: the page itself must be ours. Open Collective refuses anonymous visitors outright, so there is no version of this where the stranger lands on the platform.

4. Is her account created automatically at the first gift, with no signup step? Recommend: yes. Nine seconds of UPI at 9pm on a bus does not survive a registration form, and if she has no account she can never come back — which is the entire product. Cost of being wrong: some people dislike being given an account they did not ask for. Mitigated by saying so in the receipt email and offering one-tap deletion. The reverse error is fatal.

5. Sign-in by emailed link only, no passwords? Recommend: yes. She visits three times a year. She will never remember a password, and a forgotten password is a donor who never comes back. Cost of being wrong: almost none. Passwords can be added later; taking them away later is harder.

6. PAN from her profile rather than at checkout — accepting that some donors are never filed? Recommend: yes, as you decided, with the 80G certificate as the forcing mechanism and a plain sentence on her page telling her what she loses by not adding it. Cost of being wrong: every donor who never returns before 31 May loses her tax deduction and the organisation files a short list. You will see the size of that hole in the first year, and if it is large the fix is to ask at checkout after all. Say now that you accept this, because it will land on a real person in May.

7. The friend Priya forwards to — the ask, and nothing else. Confirm? Recommend: she lands on the giving page, sees the story, the ask and the progress, and can give without an account. She never sees the bill or the ledger. Cost of being wrong: the sharing loop is weaker than a public ledger either way. This is only about whether a forwarded link lands somewhere useful or on a locked door. A locked door loses the gift.

8. "Find other projects" — a directory, or one line? Recommend: one line at the bottom of her page. With two organisations, a directory is a list of two, and it is the kind of thing that quietly grows into a marketplace. Cost of being wrong: trivially reversible. Nobody has ever been lost by not having a directory.

Unchanged, and still standing

RazorpayX cancelled. UPI Autopay applied for now, Aikyam only, on its own account. Foreign money refused everywhere. No individual ever receives money. Two organisations live before anything is announced. Aikyam checks each organisation's book monthly against that organisation's bank statement. No feature is ever added to Open Collective's code.


12. The sentence to keep testing

Give to one of these Indian organisations, and you get a permanent account that shows you exactly what your money bought — with the bill.

Every time something is proposed, ask whether that sentence survives it. It survives receipts, updates, a second organisation and monthly giving. It does not survive a directory, a marketplace, a payment product, holding anybody else's money, a page nobody can get into, or a donor being sent to log in somewhere else.

And when the sentence stops being true, it is not the sentence that is wrong.