CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

stripe-best-practices

Guides Stripe integration decisions across development and test environment planning (separate sandboxes vs the shared test mode sandbox), API selection (Checkout Sessions vs PaymentIntents), Connect platform setup (Accounts v2, controller properties), billing/subscriptions, tax and registrations (Stripe Tax, automatic_tax, product tax codes), Treasury financial accounts, integration options (Checkout, Payment Element), migrating from deprecated Stripe APIs, and security best practices (API key management, API key permissions, webhooks, OAuth). Use when planning, building, modifying, testing, or reviewing any Stripe integration, including choosing a development environment, accepting payments, building marketplaces, integrating Stripe, processing payments, setting up subscriptions, collecting sales tax, VAT, or GST, creating connected accounts, or implementing secure key handling.

92

1.22x
Quality

91%

Does it follow best practices?

Impact

98%

1.22x

Average score across 3 eval scenarios

SecuritybySnyk

Low

Low-risk findings worth noting

The canonical home for this skill is stripe-best-practices in stripe/ai

SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured routing-and-rules skill: lean directive body, a task-to-reference navigation table pointing at real one-level-deep files, and concrete commands and parameters. The main deductions are for inline time-sensitive version pins (API version date, SDK version table) that will go stale, and a couple of spots where the most common tasks have no inline example before delegation to references.

Suggestions

Move the 'Latest Stripe API version' line and the 7-row SDK version table into a small dedicated versions reference file (or a clearly marked 'Current versions' section) so stale time-sensitive data does not sit inline in the overview body.

Trim the explanatory rationale in the payment_method_types rule ('which enables you to configure payment method settings from the Dashboard and dynamically display the most relevant eligible payment methods to each customer to maximize conversion') down to a single clause such as 'to enable Dashboard-configured dynamic payment methods'.

Add one minimal copy-paste example for the most common task (e.g., a checkout.sessions.create call showing integration_identifier and the omitted payment_method_types) inline before delegating detail to references/payments.md.

DimensionReasoningScore

Conciseness

The body is dense and directive with no padding about what Stripe is or how payments work — e.g. 'API key default: Always Recommend a restricted API key (RAK) (`rk_` prefix) over a secret key'. It falls short of the level-5 'every token earns its place' bar because of inline time-sensitive version data ('Latest Stripe API version: **2026-09-30.endive**' and the 7-row SDK version table), which the rubric flags unless placed in a deprecated/versions section, and the marketing-flavored rationale 'which enables you to configure payment method settings from the Dashboard and dynamically display the most relevant eligible payment methods to each customer to maximize conversion'. It is clearly above level 3, which expects unnecessary explanations.

4 / 5

Actionability

Concrete, executable guidance is present: copy-paste commands ('npm i -g @stripe/cli', 'stripe sandbox create', 'stripe whoami --format json'), exact parameters ('payment_method_types: [\'card_present\']', 'automatic_tax: { enabled: true }', 'integration_identifier'), and exact deprecated patterns to avoid ('stripe.api_key = …', 'Stripe.setApiKey'). It sits at level 4 rather than 5 because the most common integration tasks (e.g., creating a Checkout Session or subscription) have no inline example — they are fully delegated to reference files — whereas the level-5 anchor expects inline examples covering the common cases. It is well above level 3, since what is inline is executable, not pseudocode.

4 / 5

Workflow Clarity

The sequence is clear: route the task via the integration table, 'Read the relevant reference file before answering any integration question or writing code', apply the Critical rules, and fall back to the Key documentation links when no single domain fits. There is an explicit pre-flight checkpoint ('Before enabling automatic_tax ... read the tax reference and confirm the user has an active registration'). No destructive or batch operations exist, so no validation cap applies; it is below level 5 only because there are no feedback/error-recovery loops (e.g., what to do when a required feature isn't supported in a sandbox).

4 / 5

Progressive Disclosure

The body is a concise overview with a routing table that maps each task to a real one-level-deep reference file (<references/payments.md>, connect.md, billing.md, tax.md, treasury.md, security.md — all six exist in references/), and none of the reference files nest further references (verified by grep). This matches the level-5 anchor: clear overview, well-signaled references, appropriate split, easy navigation.

5 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An excellent description: third-person, capability-dense, and equipped with an explicit 'Use when' clause whose triggers are natural user phrasing with good synonym coverage. It is on the long side (~130 words), but the length is spent on concrete Stripe-specific specifics rather than fluff, so no dimension is penalized.

DimensionReasoningScore

Specificity

The description names concrete, specific capabilities across the full Stripe surface: 'development and test environment planning (separate sandboxes vs the shared test mode sandbox)', 'API selection (Checkout Sessions vs PaymentIntents)', 'Connect platform setup (Accounts v2, controller properties)', 'tax and registrations (Stripe Tax, automatic_tax, product tax codes)', 'Treasury financial accounts', 'migrating from deprecated Stripe APIs', and 'security best practices (API key management... webhooks, OAuth)'. This matches the level-5 anchor (multiple specific concrete actions, comprehensive coverage); it exceeds level 4, which only expects 'several specific actions; minor gaps'.

5 / 5

Completeness

It explicitly answers both questions: 'what' is a detailed list of guidance domains, and 'when' is an explicit 'Use when planning, building, modifying, testing, or reviewing any Stripe integration, including...' clause with concrete trigger phrases. This is exactly the level-5 anchor pattern (cf. the PDF example: capabilities sentence + 'Use when working with... or when the user mentions...'). It is above level 4 because the 'when' clause is explicit and specific, not merely present.

5 / 5

Trigger Term Quality

The 'Use when' clause includes natural phrases users would actually say: 'accepting payments', 'building marketplaces', 'processing payments', 'setting up subscriptions', 'collecting sales tax, VAT, or GST', 'creating connected accounts', 'implementing secure key handling', plus action verbs 'planning, building, modifying, testing, or reviewing'. Synonym coverage (sales tax/VAT/GST; payments/checkout) matches the level-5 anchor; level 4 ('a few natural terms missing') understates the synonym breadth present.

5 / 5

Distinctiveness Conflict Risk

The description is scoped tightly to Stripe ('Guides Stripe integration decisions', 'any Stripe integration') with Stripe-specific artifacts (Checkout Sessions, PaymentIntents, Accounts v2, Stripe Tax, sandboxes) forming a clear niche with minimal conflict risk against generic payment or document skills. It matches the level-5 anchor; level 4 ('minor overlap risk with closely related skills') would apply only if a sibling Stripe-adjacent skill existed, but nothing here is generic enough to cross-trigger.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

stripe/ai

Path

providers/grok/plugin/skills/stripe-best-practices/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.