stripe-best-practices

Guides Stripe integration decisions across payments, Connect, billing, tax, and security.

Updated Jul 30, 2026
One-click install
npx skills add https://github.com/PhongCT1105/okta_stripe_hack --skill stripe-best-practices-phongct1105
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: stripe-best-practices
Source: https://github.com/PhongCT1105/okta_stripe_hack/tree/main/.agents/skills/stripe-best-practices
Command: npx skills add https://github.com/PhongCT1105/okta_stripe_hack --skill stripe-best-practices-phongct1105

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Stripe integrations involve many API choices and common pitfalls, such as picking Checkout Sessions versus PaymentIntents, configuring Connect accounts, or enabling automatic tax without an active registration. This Skill routes each integration question to the correct current Stripe API and flags deprecated patterns and security mistakes before they ship. ## Core Features & Use Cases - Integration Routing: Maps your use case (one-time payments, subscriptions, marketplaces, tax, Treasury) to the recommended Stripe API and a detailed reference file. - Deprecated API Guardrails: Blocks legacy patterns like the Charges API, Sources API, v1 Connect account types, and hardcoded payment_method_types, with migration paths to modern equivalents. - Security Best Practices: Covers restricted API keys, secrets vaults, webhook signature verification, CSP headers, OAuth state parameters, and incident response for compromised keys. - Use Case: You are building a SaaS app with subscriptions and need to collect sales tax. The Skill directs you to Billing APIs with Checkout Sessions, confirms your tax registration is active before enabling automatic_tax, and ensures you omit payment_method_types for dynamic payment methods. ## Quick Start Ask how to set up Stripe Checkout for a subscription with automatic tax collection and secure webhook handling.

Frequently Asked Questions about stripe-best-practices

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Should I use Checkout Sessions or PaymentIntents for Stripe payments?

Use Checkout Sessions for on-session payments, including one-time payments and subscriptions, since it handles discounts, shipping, and tax automatically. Use PaymentIntents for off-session payments or when you need to model checkout state independently.

How do I set up Stripe Connect for a marketplace?

Use the Accounts v2 API at /v2/core/accounts with configuration.recipient requesting stripe_transfers capability, dashboard set to express, and destination charges. Never use deprecated v1 account types like express, custom, or standard in account creation.

Why is Stripe Tax collecting zero tax on my transactions?

Zero tax usually means automatic_tax is not enabled or there is no active registration in the customer's jurisdiction. Check the line item's taxability_reason and verify registrations with the Tax Registrations API, since Stripe collects nothing without an active registration and returns no error.

Should I use restricted API keys or secret keys for Stripe?

Use restricted API keys with the rk_ prefix wherever possible, granting only the minimum permissions each service needs. Store keys in a secrets vault rather than source code, and migrate from secret keys by testing a RAK in test mode before replacing the live key.

Can I pass payment_method_types to limit Stripe payment methods?

No, omit payment_method_types from all API calls except Terminal in-person payments. Omitting it enables dynamic payment methods, where Stripe shows the most relevant methods per customer; use payment_method_configurations or excluded_payment_method_types to customize instead.