stripe_sync
4 sites
No security coverage
A lightweight Stripe ↔ Drupal bridge for memberships and payments. It auto-syncs customers, subscriptions, and one-time purchases to Drupal users, assigns roles based on status and product tier, and provides self-service billing plus admin tools — all configurable, no code required.
- Webhook sync for subscriptions, invoices, checkout sessions, and payment intents
- Auto-link Stripe ↔ Drupal users (Checkout UID; smart email fallbacks)
- Auto-provisions the required user fields on install (no manual field setup)
- Configurable role automation: Active / Past-due / Inactive
- Per-product role assignment via a
drupal_rolemetadata key on the Stripe Price or Product — map Gold, Silver, Diamond tiers to different Drupal roles - Managed-roles set with single-active-role or allow-multiple behavior
- Map user fields: customer_id, subscription_id, status, expires, checkout_mode
- Supports subscriptions and one-time access (via
access_days; optional invoice) - Duplicate-subscription guard: none / same product / any
- Checkout launcher (accepts
prod_*orprice_*), success/cancel pages - Stripe Billing Portal links (self-service & admin)
- Membership status block (active / expiring-soon with renew link / join CTA), configurable reminder window
- Admin user search page — find users by Stripe Customer ID, Subscription ID, status, and more
- “Re-sync from Stripe” button on user profiles and the search page
- Dedicated permission to gate visibility of the Stripe user fields
- Keep Stripe API keys in settings.php (out of the database) — with an in-app setup guide and override detection
- Daily reconciliation (cron + queue) with “Run now” option