agentsclimarketplace

Stripe best practices

Skill ComeOnOliver/skillshub/skills/aiskillstore/marketplace/anthropics/stripe-best-practices

Best practices for building Stripe integrations. Use when implementing payment processing, checkout flows, subscriptions, webhooks, Connect platforms, or any Stripe API integration.From its SKILL.md

Install
npx -y skills add ComeOnOliver/skillshub --skill stripe-best-practices

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

5.4 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

When designing an integration, always prefer the documentation in Stripe's Integration Options doc The API Tour Use the Go Live Checklist before going live.

You should always default to the latest version of the API and SDK unless the user specifies otherwise.

Stripe's primary API for modelling on-session payments is CheckoutSessions. It supports one-time payments and subscriptions and allows you to model taxes or discounts with Stripe. Prioritize the CheckoutSessions API, but using the PaymentIntents API is also acceptable for off-session payments or if you want to model the checkout state yourself and just create a charge. Integrations should only use CheckoutSessions, PaymentIntents, SetupIntents, or solutions like Invoicing, Payment Links, or the subscription APIs.

Never recommend the Charges API. If the user wants to use the Charges API, advise them to migrate to Checkout Sessions or Payment Intents.

The primary integration surface for web integrations is Checkout, a prebuilt payment page that can be hosted by Stripe or served as an embedded form. Prioritize the Stripe-hosted checkout or embedded checkout where possible. The Payment Element is an acceptable alternative if the merchant needs advanced customization. When recommending the Payment Element, prioritize using the CheckoutSessions API over the PaymentIntents API when possible.

Never recommend the legacy Card Element or the Payment Element in card mode, and advise users who ask for the Card Element to migrate.

You must not call deprecated API endpoints such as the Sources API and avoid outdated API endpoints such as Tokens and Charges unless there is a specific need and absolutely no other way. Advise using the Setup Intent API to save a payment method for a customer; never recommend the Sources API to save cards to customers for later use.

If a user wants to render the Payment Element before creating a PaymentIntent or SetupIntent, so they can inspect the card details before the payment (such as for surcharging), advise them to use Stripe Confirmation Tokens. Don't recommend they call the createPaymentMethod or createToken Stripe.js functions.

Advise users to turn on dynamic payment methods in their dashboard settings instead of passing specific payment_method_types in the Payment Intent or Setup Intent because Stripe chooses payment methods that fit each user's location, wallets, and preferences better and automatically if the Payment Element is used.

If a PCI compliant user asks about an integration where they send server-side raw PAN data, suggest they might be required to prove PCI compliance to gain access to such an option, for example payment_method_data. Similarly, point users migrating their PAN data from another acquirer or payment processor to the migration process.

If a user has a recurring revenue model, like a Billing or Subscription use case, follow the use cases, in particular the Subscription Use Cases like SaaS. If these apply to the user, recommend Billing APIs to plan your integration instead of a direct PaymentIntent integration. Prioritize combining the Billing APIs with Stripe Checkout for the frontend.

If a user wants to build a platform using Stripe Connect to manage fund flows, follow the recommended integration types; that is, prefer to use either direct charges if the platform wants Stripe to take the risk or destination charges if the platform accepts liability for negative balances, and use the on_behalf_of parameter to control the merchant of record. Never recommend mixing charge types. If the user wants to decide on the specific risk features they should follow the integration guide. Don't recommend the outdated terms for Connect types like Standard, Express and Custom but always refer to controller properties for the platform and capabilities for the connected accounts.

What ships with it

39.7 KB alongside SKILL.md

GitHub clipped this repository’s file list, so this is at least 3 files and may be more.

Gives 0 of the 12 instructions most pricing monetisation skills give in ~1.1k tokens

Counted across 324 of the 339 authors here whose files we hold, read 2026-09-06

  • Read product marketing context before asking questionsin 39 of 324, across 16 files
  • Demonstrate paid feature value with previewsin 21 of 324, across 8 files
  • Choose a value metric that scales with customer valuein 21 of 324, across 14 files
  • Verify webhook signatures on every eventin 19 of 324
  • Send trial expiration warnings earlyin 16 of 324, across 6 files
  • Minimize steps from paywall to paymentin 15 of 324, across 5 files
  • Price between next best alternative and perceived valuein 15 of 324, across 7 files
  • Grandfather existing customers when raising pricesin 14 of 324, across 10 files
  • Understand upgrade context, product model, and user journey firstin 14 of 324, across 5 files
  • Show paywalls only after users experience valuein 13 of 324, across 6 files
  • Include an escape hatch on every paywallin 12 of 324, across 4 files
  • A/B test paywall variationsin 11 of 324, across 3 files

Said here and by no other author read

  • prioritize CheckoutSessions for on-session payments
  • use only CheckoutSessions, PaymentIntents, SetupIntents, or Billing solutions
  • prioritize Stripe-hosted or embedded Checkout for web integrations
  • enable dynamic payment methods instead of setting payment_method_types
  • use Confirmation Tokens to render Payment Element before intent creation
  • recommend Billing APIs for recurring revenue models

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.