Releases: the-foundation-stack/Foundation
Releases · the-foundation-stack/Foundation
OCAS v0.1.0 — initial draft release
First project published under The Foundation — a home for open standards, protocols and shared infrastructure for socially-beneficial software.
OCAS (the Open Charity API Standard) is a vendor-neutral OpenAPI 3.1 specification any charity can adopt to expose donations, subscriptions, campaigns, receipts and tax-relief declarations in a standard shape.
What's included
Core spec
- OpenAPI 3.1 specification covering 22 endpoints across 40 schemas
- Three discoverable authentication modes:
public,api_key,oauth2(with PKCE) Idempotency-Keyheader support on donation and subscription creation- HMAC-SHA256 webhook signing with
OCAS-Signatureheader and 5-minute replay window - Money represented as integer minor units throughout
Tax-relief schemes (10 international)
Polymorphic tax_relief_declarations[] with discriminator-based support for:
UK Gift Aid · US 501(c)(3) · Canadian CRA · Australian DGR · Irish CHY · German Spendenbescheinigung · French réduction d'impôt · Dutch ANBI · Singaporean IPC · Malaysian §44(6)
Islamic giving (first-class)
zakatwith the 8 canonical Asnaf categories from Qur'an 9:60sadaqah,sadaqah_jariyah,waqf,lillah,fidya,kaffarahqurbani/udhiyyahwith full animal-share metadataaqiqahwith birth-celebration metadatainterest_purification(explicitly disallowed as Zakat)- Optional
/zakat/calculatorendpoint for Nisab values
Developer experience
- Postman collection with worked examples (Gift Aid, Zakat with Asnaf, Qurbani, refunds, daily Ramadan subscription)
- READMEs translated into Arabic, Urdu, French, Spanish, Turkish, Bahasa Indonesia, Bahasa Melayu
- Six example JSON payloads under
examples/ - CI validates spec, examples, and Postman collection on every PR
Known limitations
- Draft status - breaking changes possible until v1.0.0
- No reference implementation yet (planned for v0.2)
- DAFs, stocks/crypto-specific flows, legacies, in-kind donations, and grant disbursement are intentionally out of scope for v0.1
- Country profiles beyond the 10 listed schemes will be added via PR as adopters need them
Get involved
- Adopt the spec and tell us what broke - open a Discussion
- Add a country profile - see the country-profile issue template
- Propose an RFC - see the RFC issue template
- Translate the README into your language - see
docs/i18n/
Apache 2.0 licensed. Vendor-neutral. Self-hostable. No proselytising in any direction.