Connecting Stripe
Maven uses Stripe Connect to process payments on your Stripe account. The setup uses OAuth — you authorize Maven to create charges on your behalf.Running a multi-merchant platform with many connected accounts under your own Stripe key? Skip the OAuth flow and use Platform Mode instead.
Prerequisites
- A Stripe account (test or live)
- A Maven app
Setup Steps
1
Go to Payments
In the Maven Dashboard, navigate to your app and click the Payments tab.
2
Click Connect Stripe
Click the Connect Stripe button. You’ll be redirected to Stripe’s OAuth authorization page.
3
Authorize Maven
On the Stripe page, review the permissions and click Connect. Maven requests the ability to create charges and customers on your account.
4
Return to Dashboard
After authorization, you’ll be redirected back to the Maven Dashboard. Your Stripe account will show as connected.
Test vs Live
Maven stores separate credentials for test and live modes:- Test mode (
mvn_test_keys): Uses your Stripe test mode. No real charges. - Live mode (
mvn_live_keys): Uses your Stripe live mode. Real charges.
Processor Response Fields
When a payment succeeds via Stripe, theprocessor object in the GET session response includes:
Charge Mode
Tokenize Mode
Both
stripe_customer_id and payment_method_id live on your own connected Stripe account — not on Maven’s platform account. Query and charge them with your own Stripe secret key (no stripe_account header needed, because they’re already on your account). Each tokenize creates a dedicated customer with exactly one saved card, so the customer + payment_method pair uniquely identifies the card — you never have to guess among multiple payment methods.Using Tokenized Cards
After tokenizing, use the returnedstripe_customer_id and payment_method_id to create charges via the Stripe API. Run this with your own Stripe secret key — the customer and payment method are on your account:
Disconnecting
To disconnect Stripe, go to the Payments tab in your app and click Disconnect. Existing sessions won’t be affected, but new sessions using thestripe gateway will fail.
Platform Mode (Multi-Merchant Platforms)
If you are yourself a Stripe Connect platform — many connected accounts under your own platform API key — connecting each merchant to Maven individually doesn’t scale. Platform Mode inverts the relationship: Maven calls Stripe with your platform key and routes each payment to the connected account you name per session.This is different from the standard connection above. Standard mode links one Stripe account to Maven’s platform via OAuth. Platform Mode uses your own platform key and never touches Maven’s Stripe platform — charges, tokens, and customers are created entirely under your accounts, and Maven takes no Stripe application fee.
Setup
- In your app’s Payments tab, expand the Stripe card and find the Platform Mode section.
- Add your platform API key per environment (test / live). A restricted key is recommended — scope it to write access for PaymentIntents, PaymentMethods, and Customers, with connected-account access enabled.
- That’s it — no per-merchant onboarding, no OAuth links.
Creating sessions
Pass the target connected account on every session:stripe_accountis required on every session when Platform Mode is configured (the API returnsstripe_account_requiredotherwise).- In
tokenizemode, the card is vaulted as a Customer + PaymentMethod on that connected account — the token is yours on your platform, permanently, independent of Maven. - Test-mode API keys use your test platform key; live keys use your live platform key.
Notes
- The
motoflag is set on PaymentIntents (phone payments are MOTO transactions) — ask Stripe support to enable MOTO on your platform if it isn’t already. - Maven never takes an
application_feein Platform Mode.
