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.

87

1.22x
Quality

85%

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

67%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 skill: decisive integration recommendations, concrete CLI commands, explicit critical rules with a validation checkpoint, and an appropriately disclosed reference bundle. Main weaknesses are time-sensitive version data inlined at the top (hurting maintainability and conciseness), fragmented sandbox/MCP setup guidance, and inconsistent reference link formatting.

Suggestions

Move the SDK version table and pinned API version (2026-09-30.endive) into a clearly labeled section or reference file so time-sensitive data doesn't clutter the always-loaded body and go stale in place.

Consolidate the sandbox setup guidance (lines 35-39) into one sequenced mini-workflow: create sandbox → claim if using MCP → verify auth with `stripe whoami --format json`, instead of three fragmented conditionals.

Use consistent clickable markdown links in the routing table's Details column (e.g., [payments.md](references/payments.md)) instead of the angle-bracket `<references/payments.md>` notation.

DimensionReasoningScore

Conciseness

Mostly efficient tables and imperative rules, but the SDK version table (Ruby 20.0.0 … .NET 53.0.0) and pinned API version "2026-09-30.endive" are time-sensitive version data presented outside any old-patterns/deprecated section, which the rubric explicitly penalizes. The sandbox/MCP rules ("If `stripe sandbox create` is used, don't use MCP") also fragment one flow with slight redundancy.

3 / 5

Actionability

Concrete, executable commands (`npm i -g @stripe/cli`, `stripe sandbox create`, `stripe sandbox claim`, `stripe whoami --format json`) and exact parameter guidance (`payment_method_types: ['card_present']`, `allowed_payment_method_types`, `integration_identifier`) with a decisive routing table. Falls short of 5 because no copy-paste-ready code examples cover the common creation flows; exceeds 3 since guidance is concrete rather than pseudocode.

4 / 5

Workflow Clarity

The routing table plus "Read the relevant reference file before answering any integration question or writing code" gives an unambiguous decision flow, and the automatic_tax rule embeds an explicit checkpoint ("read the tax reference and confirm the user has an active registration"). Not 5 because the sandbox/CLI/MCP setup steps are scattered across separate paragraphs rather than clearly sequenced.

4 / 5

Progressive Disclosure

Appropriately split overview: the body stays lean and points to six one-level-deep reference files, all of which exist in references/ (payments, connect, billing, tax, treasury, security), each mapped by task in the routing table. Minor gap: the table uses non-clickable angle-bracket paths (`<references/payments.md>`) inconsistently with the real markdown link `[tax reference](references/tax.md)`, so navigation signaling is not fully uniform.

4 / 5

Total

15

/

20

Passed

Description

96%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.

A strong description: specific, third-person, dense with concrete Stripe API names, and with an explicit Use-when clause containing natural trigger phrases and synonyms. Its only weaknesses are mild redundancy ("API key management, API key permissions"; integration options restated after API selection) and trigger breadth that slightly overlaps related payment/tax domains.

DimensionReasoningScore

Specificity

Enumerates many concrete decision domains with specific API names — "Checkout Sessions vs PaymentIntents", "Accounts v2, controller properties", "automatic_tax, product tax codes", "Treasury financial accounts" — with comprehensive coverage and no notable gaps. Not 4 because the 4 anchor requires "minor gaps in coverage," which this description does not have.

5 / 5

Completeness

Explicitly answers both questions: the what ("Guides Stripe integration decisions across development and test environment planning, API selection, Connect platform setup, …") and the when ("Use when planning, building, modifying, testing, or reviewing any Stripe integration, including …") with concrete trigger phrases — the exact pattern of the 5 anchor. Also correctly third person.

5 / 5

Trigger Term Quality

The when-clause covers natural user phrasings with synonyms: "accepting payments", "building marketplaces", "setting up subscriptions", "collecting sales tax, VAT, or GST", "creating connected accounts", "implementing secure key handling". This matches the 5 anchor's comprehensive synonym coverage (e.g., sales tax/VAT/GST), well above the 4 anchor's "a few natural terms missing".

5 / 5

Distinctiveness Conflict Risk

Everything is anchored to "any Stripe integration," giving a clear niche and minimal conflict with unrelated skills. However, several trigger phrases — "accepting payments", "setting up subscriptions", "collecting sales tax, VAT, or GST" — are not Stripe-specific on their own, creating minor overlap risk with closely related payments/tax skills, which fits the 4 anchor better than 5's "minimal conflict risk".

4 / 5

Total

19

/

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/agent-plugins/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.