Changelog

Changelog

API changes worth knowing about. Newest first.

We follow semver at the API level. Breaking changes only ship behind a new major version (/v2), never on the current one.


Unreleased

  • Full OpenAPI 3.1 spec at https://api.soxara.com/openapi.yaml — coming next

v1 (current)

  • Recurring billing — payment mandates + charges. Card (hosted card-save) and wallet (in-app PIN) rails: POST /v1/api/mandates, POST /v1/api/charges, DELETE /v1/api/mandates/{id}. See the reference.
  • Transaction history + metricsGET /v1/api/payments (paged list) and GET /v1/api/payments/summary (per-currency roll-up). GET /v1/api/payments/{id} now resolves recurring charges too, not just link payments.
  • Self-serve webhook registration on the key surfacePOST /v1/api/webhook-endpoints (previously dashboard-only).
  • Sandbox simulatePOST /v1/api/payment-links/{id}/simulate settles a test payment through the real webhook fan-out, no real money.
  • sxm_live_* / sxm_test_* API key prefixes. One base URL; the key sets the environment.
  • Idempotency-Key header on all mutations.
  • Standard { success, data } / { success: false, error } envelope; snake_case bodies.
  • Webhook signature: Soxara-Signature: t=<unix>,v1=<hmac-sha256> — Stripe wire format.
  • Webhook events today: payment.completed, payment.failed.

Have you noticed a behavior change in the API that isn’t documented here? Tell us — we’d rather hear from you than have you debug it.