- Added cross-product fallback lookup by stripeCustomerId when metadata lacks productId - Ensure invoice payments are stored under the resolved subscription productId - Normalize checkout metadata plan value before persistence/sync - Keep auth plan sync aligned with resolved product context - Verified: tsc --noEmit clean, 20 test files / 183 tests passing |
||
|---|---|---|
| .. | ||
| repository.ts | ||
| routes.ts | ||
| subscriptions.test.ts | ||
| types.ts | ||