IntegrationsPayments
Stripe
Payment processing, invoicing, and subscription management
Overview
Stripe integration enables MemberPulse to process payments, manage subscriptions, and handle invoicing for membership plans and event tickets.
Features
| Feature | Description |
|---|---|
| Payment Processing | Accept credit cards, bank transfers, and digital wallets |
| Subscription Billing | Automated recurring payments for membership plans |
| Invoicing | Generate and send professional invoices |
| Refunds | Process refunds directly from MemberPulse |
| Payment Methods | Save cards for future payments |
| Webhooks | Real-time payment event notifications |
Configuration
Prerequisites
- Create a Stripe account at stripe.com
- Obtain your API keys from the Stripe Dashboard
- Configure webhook endpoints
Acceptance Criteria
Frontend
- Prerequisites workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Prerequisites as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Environment Variables
STRIPE_PUBLISHABLE_KEY=pk_live_xxxxxxxxxxxx
STRIPE_SECRET_KEY=sk_live_xxxxxxxxxxxx
STRIPE_WEBHOOK_SECRET=whsec_xxxxxxxxxxxx
Acceptance Criteria
Frontend
- Environment Variables workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Environment Variables as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Platform Settings
Navigate to Client Portal > Settings > Integrations > Stripe
| Setting | Type | Required | Description |
|---|---|---|---|
| Mode | Toggle | Yes | Live or Test mode |
| Publishable Key | Text | Yes | Public API key |
| Secret Key | Secret | Yes | Private API key |
| Webhook Secret | Secret | Yes | Webhook signing secret |
Acceptance Criteria
Frontend
- Platform Settings workflow is implemented in the UI as described.
Backend / API
- Backend behavior supports Platform Settings as documented.
Permissions
- Access is restricted per the Capabilities matrix on this page (or equivalent role rules).
Business Rules
- All business rules for this feature are enforced.
Error Handling
- Error states return clear messages and appropriate HTTP status codes.
Webhook Events
| Event | Description |
|---|---|
payment_intent.succeeded | Payment completed successfully |
payment_intent.failed | Payment failed |
invoice.paid | Invoice was paid |
invoice.payment_failed | Invoice payment failed |
customer.subscription.created | New subscription created |
customer.subscription.updated | Subscription changed |
customer.subscription.deleted | Subscription cancelled |
API Endpoints
POST /api/payments/create-intent # Create payment intent
POST /api/payments/confirm # Confirm payment
GET /api/payments/{id} # Get payment details
POST /api/subscriptions/create # Create subscription
PUT /api/subscriptions/{id} # Update subscription
DELETE /api/subscriptions/{id} # Cancel subscription
Troubleshooting
For Stripe integration issues, see the Admin Troubleshooting Guide.
Acceptance Criteria
Frontend
- UI provides configuration controls and status/health indicators for this integration.
Backend / API
- Integration can be connected, configured, and exercised end-to-end (auth + sync/webhooks).
Permissions
- Only
ROLE_CLIENT_ADMIN(or equivalent) can configure the integration.
Business Rules
- Data sync respects tenant isolation and mapping rules.
Error Handling
- Auth and sync failures are surfaced with actionable messages and retry behavior.