CtrlK
BlogDocsLog inGet started
Tessl Logo

paddle-subscription-update

Change a Paddle subscription's plan from a Next.js Server Action — auth, ownership check, `prorationBillingMode`, items-array replace semantics, preview-before-commit, and `on_payment_failure` handling.

86

1.35x
Quality

80%

Does it follow best practices?

Impact

96%

1.35x

Average score across 3 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/subscription-update/SKILL.md
SKILL.md
Quality
Evals
Security

Evaluation results

100%

8%

Billing Plan Upgrade Action

Self-serve plan upgrade Server Action

Criteria
Without context
With context

Auth check first

100%

100%

Ownership check present

100%

100%

Email-bridge ownership pattern

100%

100%

Correct proration mode for upgrade

100%

100%

do_not_bill not used

100%

100%

Items as replacement

100%

100%

No fetch-then-concat

100%

100%

revalidatePath called

0%

100%

Slim DTO returned

100%

100%

Notes justify proration choice

100%

100%

92%

3%

Annual Plan Switch with Charge Preview

Term-switch preview with addon interval rule

Criteria
Without context
With context

previewUpdate called

100%

100%

Preview used as source of truth

100%

100%

Preview response fields surfaced

100%

100%

Correct proration for term upgrade

100%

100%

Add-on prices updated with base plan

100%

100%

No mixed billing intervals

100%

100%

Same body for preview and commit

100%

100%

No manual proration math

100%

100%

notes.md explains interval constraint

70%

100%

revalidatePath in commit action

0%

0%

96%

62%

Admin Subscription Management Panel

Admin CS upgrade with payment failure mode

Criteria
Without context
With context

onPaymentFailure: apply_change in upgrade

0%

100%

camelCase SDK parameter

0%

100%

Upgrade uses immediate proration

0%

100%

Downgrade uses next-period proration

33%

100%

Auth check in both actions

100%

100%

Ownership/customer verification

62%

50%

Slim DTO returned

100%

100%

notes.md: apply_change rationale

20%

100%

notes.md: downgrade proration rationale

70%

100%

do_not_bill not used

0%

100%

Repository
PaddleHQ/paddle-agent-skills
Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

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.