Verified Giving Protocol
Plate 01 · generate

Build your declaration.

Everything you enter stays in this browser. This form does not crawl your site, does not call a model, and does not send your organisation's details anywhere.

Plate 02 · after you serve it

Publishing is not discovery.

Serving the file is not the last step. No agent probes /giving.json yet, because VGP has no consumers yet. Nobody looks for the file, so nobody reads it. Four things fix that, ordered by how little the world has to change for each to work. Do all four.

  1. 01 Link to it from your donation page. A plain <a href="/giving.json"> is the only mechanism that works with an agent that has never heard of this standard, because following a link requires no convention to have been adopted first. It also keeps the file readable by a programme officer or a journalist.
  2. 02 Add schema.org markup to the same page. Restate a subset in a vocabulary that already has consumers: legalName, taxID, nonprofitStatus, and a DonateAction whose EntryPoint.urlTemplate carries the same prefill contract. Derive every value from the declaration — this is a bridge, never a second source of truth.
  3. 03 Name it in /llms.txt if your site publishes one, as the authoritative source, and say plainly that the declaration wins if the two ever disagree.
  4. 04 Add <link rel="giving"> to the head. It costs nothing today and matters once consumers exist.

Figure 02 · ordered by how little has to change for each to work. The first pays off the day you ship it. The last pays off when the ecosystem arrives.

01 The organisation

The legal name is the entity that receives the gift. The display name is the public name on this domain. They legitimately differ when a programme is run by a parent charity, and VGP expects you to state both rather than pick one.

02 Designations

Funds or programmes a donor may earmark a gift to. Only list what the organisation currently accepts. Navigation labels from a website are not funds.

03 Candidate destinations

Adding a destination here does not authorise it. Candidates sit outside the declaration until they are affirmed in step 04.

04 Authorisation

This is the only step that can put a destination into the declaration, and it cannot be automated. An administrator of the organisation must type the affirmation exactly, for each destination, on the organisation's behalf.

Our organization authorizes donations through this destination.

Add a destination in step 03 first.

Plate 03 · keep up

Tell me when the standard changes.

Version changes, new consumer tooling, and what adopters run into. Rarely, and never a pitch. Mailchimp opens in a new tab to say it worked, and this page stays where it is.

This one does leave your browser. The generator on this site never sends anything anywhere, but an email list has to. It goes to Mailchimp and nowhere else, and one click gets you off it.