Lucas Smith
3887aa67c8
fix: rework stripe webhooks into idempotent subscription sync ( #2977 )
...
Replace per-event webhook handlers with a single sync function that
fetches the current state from Stripe and converges the local
subscription, claim, and organisation type.
- Create organisations upfront before checkout, restricted as
"pending payment" until the first payment syncs
- Add rate-limited subscription sync route, triggered on checkout
success so the UI doesn't wait on webhooks
- Surface pending payment state in banner, billing table, and limits
2026-06-12 16:01:03 +10:00
..
2026-06-08 14:14:22 +10:00
2026-06-08 14:14:22 +10:00
2026-06-09 15:51:25 +10:00
2026-06-08 14:14:22 +10:00
2026-06-09 13:48:40 +10:00
2026-06-09 15:51:25 +10:00
2026-05-08 16:04:22 +10:00
2026-06-12 16:01:03 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-29 01:12:55 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-29 01:12:55 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2025-02-13 14:10:38 +11:00
2026-06-05 17:55:10 +10:00
2025-10-24 16:22:06 +11:00
2025-02-13 14:10:38 +11:00
2026-05-25 19:56:24 +07:00
2026-05-31 00:34:28 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-19 14:19:31 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-06-03 16:05:39 +10:00
2026-06-01 18:17:16 +10:00
2026-05-08 16:04:22 +10:00
2025-02-17 22:46:36 +11:00
2026-05-31 00:34:28 +10:00
2026-05-11 13:03:02 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00
2026-05-08 16:04:22 +10:00