{"registry_version":"2026.1025.387","generated_at":"2026-10-25T06:27:00Z","content_sha256":"089d16f627d9365e3d0663cc8069203706d7cb23a76c332226e29686968811a5","signed":true,"signature":{"key_id":"ed25519:74ca19268e364242","algorithm":"ed25519","expires_at":"2026-11-24T06:27:09Z","expired":false,"manifest":"/registry/manifest.json"},"id":"stripe/account-and-billing","name":"Stripe (account activation, API keys and webhooks)","vendor":"Stripe","status":"verified","last_verified":"2026-10-24","last_researched":"2026-10-24","summary":"Test-mode keys are quick; live payments need \"Verify your business\" (activation). Check whether Stripe Managed Payments is on, use restricted keys for live, and capture the webhook signing secret when the endpoint is created.","account_model":{"summary":"One Stripe account per business, with separate test and live modes.","accounts":[{"name":"Stripe account","kind":"organisation","owned_by":"the business (or sole trader)","required":true}]},"prerequisites":[],"identity_requires":[],"have_ready":[{"kind":"company_documents","description":"Company or sole-trader details (legal name, address, registration number) [to verify exact list]","why":null,"needed_for":["verify-business"],"auto_check":"name_consistency","source_url":null},{"kind":"government_id","description":"Identity details for the business representative [to verify]","why":null,"needed_for":["verify-business"],"auto_check":"none","source_url":null},{"kind":"bank_account","description":"Bank account for payouts [to verify]","why":null,"needed_for":["verify-business"],"auto_check":"none","source_url":null},{"kind":"live_website","description":"A live website describing what you sell [to verify]","why":null,"needed_for":["verify-business"],"auto_check":"website_live","source_url":null}],"steps":[{"id":"sign-in","title":"Sign in to the Stripe Dashboard","summary":"You sign in, or create the account yourself.","route":"guided","gate":"human_login","human_only":true,"gate_label":"You sign in","depends_on":[],"optional":false,"url":"https://dashboard.stripe.com/","lead_time":null,"preflight":[],"captures":null},{"id":"test-keys","title":"Copy the test-mode keys","summary":"Test and live modes have separate keys. Start with the test-mode publishable and secret keys from Developers, API keys.","route":"guided","gate":"none","human_only":false,"gate_label":null,"depends_on":["sign-in"],"optional":false,"url":"https://dashboard.stripe.com/test/apikeys","lead_time":null,"preflight":[],"captures":null},{"id":"verify-business","title":"Verify your business (activate live payments)","summary":"Live payments stay off until you complete \"Verify your business\" in the Dashboard. You enter the business and representative details yourself.","route":"guided","gate":"human_identity","human_only":true,"gate_label":"You prove your identity","depends_on":["sign-in"],"optional":false,"url":"https://dashboard.stripe.com/","lead_time":null,"preflight":["legal_name_matches_documents","website_live"],"captures":null},{"id":"managed-payments","title":"Decide on Stripe Managed Payments","summary":"Some accounts have Stripe Managed Payments switched on by default. It makes Stripe the merchant of record (a legal and tax choice), and Checkout then rejects custom_text. Decide whether you want it before you build Checkout.","route":"guided","gate":"none","human_only":false,"gate_label":null,"depends_on":["sign-in"],"optional":false,"url":null,"lead_time":null,"preflight":[],"captures":null},{"id":"live-restricted-key","title":"Create a restricted key for live mode","summary":"For live mode, create a restricted key with only the permissions your app needs instead of using the full secret key. verapli captures it and writes it to your env file.","route":"guided","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["verify-business"],"optional":false,"url":"https://dashboard.stripe.com/apikeys","lead_time":null,"preflight":[],"captures":"STRIPE_SECRET_KEY"},{"id":"webhook","title":"Create the webhook endpoint and capture its signing secret","summary":"Create the webhook endpoint for your app's URL. The signing secret is shown only when the endpoint is created, so capture it at that moment.","route":"guided","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["sign-in"],"optional":false,"url":"https://dashboard.stripe.com/webhooks","lead_time":null,"preflight":[],"captures":"STRIPE_WEBHOOK_SECRET"}],"gates":[{"step":"sign-in","gate":"human_login","label":"You sign in"},{"step":"verify-business","gate":"human_identity","label":"You prove your identity"},{"step":"live-restricted-key","gate":"human_submit","label":"You press submit"},{"step":"webhook","gate":"human_submit","label":"You press submit"}],"lead_times":[],"outputs":[{"name":"STRIPE_SECRET_KEY","description":"Secret or restricted API key (test or live); server-side only","secret":true,"example_format":"sk_test_… / rk_live_…","environments":null},{"name":"STRIPE_WEBHOOK_SECRET","description":"Webhook endpoint signing secret","secret":true,"example_format":"whsec_…","environments":null},{"name":"STRIPE_PUBLISHABLE_KEY","description":"Publishable key for the browser (not a secret)","secret":false,"example_format":"pk_test_… / pk_live_…","environments":null}],"renewals":[],"estimated_minutes":null,"guide_url":"https://verapli.com/guides/stripe/account-and-billing"}