REST, webhooks, idempotent everything. SDKs for Node, Python, Ruby, PHP, Go, and Swift. The whole platform behind one key.
Authenticate with your key, post the gift, listen for the webhook. That's the loop.
Every request carries a bearer token. Test keys are free and unlimited — they just don't move real money.
One POST /v1/gifts with sender, recipient, and amount. Idempotency key recommended.
Subscribe to gift.settled. Receipts and ledger updates land in your webhook.
const bq = new Bequest(process.env.BQ_KEY);
const gift = await bq.gifts.create({ from, to, amount_cents: 2500 });
bq.on('gift.settled', receipt => ledger.write(receipt));
Direct gifts, campaigns, pools. Same auth, same pagination, same idempotency. Plus webhooks for everything they emit.
POST, GET /:id, GET ?from=&to=. Move money person-to-person or person-to-mission.
Create, fund, list contributors, manage peer pages. Recurring giving lives under /v1/subscriptions.
Commit, disburse, vote, list balances. Annual commitments via the prepayment batch (Addendum 001).
Subscribe to events. Signed payloads, replay protection, retries with exponential backoff.
KYC, KYB, sanctions screening. Tier 1, 2, 3 supported. Document collection on hosted pages.
Render or fetch tax receipts. PDF, HTML, or JSON. Re-issuable for the lifetime of the gift.