ghostguild-org/server/api/helcim
Jennie Robinson Faber 101d6a231b feat(billing): add update-card API route with rollback + status gate
POST /api/helcim/update-card updates the customer's default card, then
best-effort patches the active subscription payment method. Status-gated
to {active, pending_payment}; verifies the submitted cardToken is
attached to the member's helcimCustomerId via listHelcimCustomerCards.
On subscription PATCH 5xx we revert the customer default to the prior
card token; 4xx (schema rejection — cardToken is not a documented
subscription PATCH field) is tolerated since the customer default is
the authoritative billing driver.
2026-04-19 16:29:23 +01:00
..
create-plan.post.js refactor(helcim): use helper in unused admin endpoints 2026-04-08 22:11:25 +01:00
customer-code.get.js refactor(helcim): use centralized helper in 5 simple endpoints 2026-04-08 21:44:18 +01:00
customer.post.js feat(signup): community guidelines agreement and policies routes 2026-04-18 17:06:10 +01:00
get-or-create-customer.post.js refactor(helcim): wrapped PATCH body, first-activation welcome email guard 2026-04-18 17:06:30 +01:00
initialize-payment.post.js refactor(helcim): use centralized helper in 5 simple endpoints 2026-04-08 21:44:18 +01:00
payment-history.get.js feat(billing): add payment history API route 2026-04-19 16:26:19 +01:00
plans.get.js refactor(helcim): use helper in unused admin endpoints 2026-04-08 22:11:25 +01:00
subscription.post.js fix(helcim): restore subscriptionStartDate on paid-tier activation 2026-04-18 17:28:05 +01:00
subscriptions.get.js refactor(helcim): use helper in unused admin endpoints 2026-04-08 22:11:25 +01:00
update-billing.post.js refactor(helcim): use helper in unused admin endpoints 2026-04-08 22:11:25 +01:00
update-card.post.js feat(billing): add update-card API route with rollback + status gate 2026-04-19 16:29:23 +01:00
verify-payment.post.js refactor(helcim): use centralized helper in 5 simple endpoints 2026-04-08 21:44:18 +01:00