Skip to content

Changelog

Every change to the public API is recorded here, dated, whether or not it breaks anything. Deprecations and sunsets are announced here in addition to the Deprecation and Sunset headers — see Versioning & deprecation.

Dates are the date of the change, in YYYY-MM-DD.

The first public version of the Vaki API.

Added

  • POST /v1/checkout_links — mint a hosted checkout URL for a cause. Accepts vaki, amount, currency as required fields, plus email, external_reference, callback_url, success_url, cancel_url, anonymous and metadata. Returns url, which you redirect the donor to.
  • GET /v1/checkout_links/{id} — read a link’s status: open, completed, expired or cancelled. This is how a donation is confirmed until webhook delivery ships.
  • POST /v1/vakis — create a cause in draft. The owner must already be a registered Vaki account.
  • GET /v1/vakis/{key} — read a cause.
  • Idempotency-Key on both POST routes, with replay semantics documented in Idempotency.
  • RFC 9457 problem documents with stable machine codes on every error, a full code table in Errors, and a page per code at developers.vaki.co/errors/{code} — the type member of an error response is a URL you can open.
  • A second server in the OpenAPI document: a sandbox base URL, public-api-staging.vaki.co, running the same /v1 code on Vaki’s staging deployment with its own keys and its own data. Read Sandbox before you rely on it — it is shared infrastructure we deploy to constantly, so its data may be reset and it can be briefly unavailable. Test-mode keys (vk_test_) against production uptime remain the durable plan.
  • The published intent for US giving through the Vaki USA Foundation, an IRS-approved 501(c)(3): an entity-scoped API key, where a Foundation key mints checkout links that collect into the Foundation’s own Stripe account and the entity is recorded on the link and the payment. Being built, not issuable yet, and there is a governance constraint that matters more than the plumbing — see US giving via the Vaki USA Foundation and Known limitations.
  • This documentation site, with the API reference generated from the service’s own route definitions rather than maintained by hand, and an Examples switcher in the header that flips every code block — and the copy button’s clipboard text — between the production and sandbox base URLs.

Policy

  • 5% flat on collected donations, with Vaki absorbing the gateway’s own cost. The donor is never charged a separate processing fee. See Fees.
  • URL major versioning, additive changes without a version bump, a 12-month support window on a superseded prefix, and a 90-day minimum notice before any removal. See Versioning & deprecation.
  • Cause state is exposed as stable English snake_case on this API, independently of how Vaki stores it internally.

Not included, deliberately

  • Webhook delivery. callback_url is accepted, validated and stored, but nothing is delivered to it yet. Set the field now — your code will not change when delivery ships — and poll GET /v1/checkout_links/{id} meanwhile.
  • Test mode. There is no vk_test_ key and no sandbox. Keys are live.
  • List endpoints. Retrieval by id only. Persist the chl_… you get back.
  • The other eight endpoints — webhook subscriptions, cause updates, finances, verification, bank accounts, provider and creator onboarding, withdrawals. Their intended contracts are published under Coming soon so you can design against them. They are not callable.

All of the above is spelled out in Known limitations.

Known issue

  • A donor whose email already belongs to a registered Vaki account is asked to log in at checkout instead of paying as a guest. Test with fresh addresses. A fix is in flight.