@nexo-labs/payload-betterauth-stripe
v1.14.8
Published
Better-Auth Stripe subscription plugin for Payload CMS
Maintainers
Readme
@nexo-labs/payload-betterauth-stripe
Better-Auth + Stripe subscription management plugin for Payload CMS. Handles plans, roles, subscriptions, webhook processing, and provides server/client/RSC components.
Installation
pnpm add @nexo-labs/payload-betterauth-stripeUsage
// payload.config.ts
import { createPayloadBetterAuthStripePlugin } from '@nexo-labs/payload-betterauth-stripe/server'
export default buildConfig({
plugins: [
createPayloadBetterAuthStripePlugin({
stripeSecretKey: process.env.STRIPE_SECRET_KEY,
}),
],
})Exports
Main (.)
createFreePlan/getPlanById- Plan type utilities
Server (./server)
createPayloadBetterAuthStripePlugin- Main plugin factorycreateStripePlansCollection/createRolesCollection- Collection builderscreateSubscriptionAccessHelpers- Access control helperscreatePermissionUtils- Permission utilitiescreateStripeWebhookHandlers- Stripe webhook handlerscreateSyncFromStripeEndpoint- Stripe sync endpoint
Client (./client)
PlanSubscribersClient- Plan subscribers componentSyncStripeButton- Stripe sync buttonUserSubscriptions- User subscriptions component
RSC (./rsc)
PlanSubscribers- React Server Component for plan subscribers
Features
- Stripe integration with plan, subscription, and customer sync
- Better-Auth authentication with subscription-based roles
- Pre-built
stripe-plansandrolescollections - Webhook handlers for Stripe events (customer, subscription, checkout)
- Subscription-based access control with permission utilities
- Separate server/client/RSC bundles for optimal tree-shaking
Peer Dependencies
payload^3.75.0@payloadcms/ui^3.75.0react^19.0.0stripe>=17.0.0
License
MIT
