payment-integrator

Implements payment and subscription systems with Stripe, PortOne, and RevenueCat integrations.

Updated Apr 5, 2026
One-click install
npx skills add https://github.com/Simon-YHKim/eject-button --skill payment-integrator-simon-yhkim
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: payment-integrator
Source: https://github.com/Simon-YHKim/eject-button/tree/main/.claude/skills/payment-integrator
Command: npx skills add https://github.com/Simon-YHKim/eject-button --skill payment-integrator-simon-yhkim

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building payment and subscription systems from scratch involves complex decisions across providers, webhook security, subscription state management, and regional legal compliance. This Skill generates production-oriented payment integration code so you avoid common pitfalls like missing signature verification, non-idempotent webhooks, and broken subscription state transitions. ## Core Features & Use Cases - Provider Selection Guidance: A decision tree routes you to the right provider—RevenueCat for mobile subscriptions, Stripe for global web payments, PortOne for Korean 간편결제 (Toss/Kakao/Naver), or Paddle/Lemon Squeezy for merchant-of-record simplicity. - Complete Implementation Artifacts: Produces SQL schemas for subscriptions and payments, webhook handlers with HMAC signature verification and idempotency, a full subscription state machine (trialing → active → past_due → canceled), and sandbox test configurations. - Korea-Specific Compliance: Covers auto-renewal advance notice requirements, cash receipts/tax invoices, and the 7-day withdrawal rules under Korean e-commerce law. - Use Case: You are adding a paid tier to your SaaS. Ask for a Stripe subscription integration and receive the database schema, webhook handler with signature verification, dunning logic for failed payments, and a sandbox test checklist. ## Quick Start Ask the AI to implement a Stripe subscription system with webhook handling and a subscription state machine for your web app.

Frequently Asked Questions about payment-integrator

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

FAQPage Schema
How do I implement a subscription system with Stripe?

Create a subscriptions table with a status state machine (trialing, active, past_due, canceled), then build webhook handlers for customer.subscription and invoice events. Always verify webhook signatures with HMAC and enforce idempotency using event keys.

Stripe vs PortOne vs RevenueCat for payments?

Use RevenueCat for iOS/Android in-app subscriptions, Stripe for global web card payments, and PortOne when targeting Korean users who expect Toss, Kakao, or Naver 간편결제. Solo developers avoiding tax complexity can use Paddle or Lemon Squeezy as merchant of record.

How do I handle failed subscription payments and dunning?

Transition the subscription from active to past_due on invoice.payment_failed, then retry the charge on a schedule. After maximum retries, transition to canceled and notify the user before access is revoked.

Why must Stripe webhooks use raw body for signature verification?

HMAC signature verification is computed over the exact raw request body, so parsing or re-serializing the JSON before verification changes the bytes and invalidates the signature. Always verify before parsing the payload.

What Korean legal requirements apply to auto-renewing subscriptions?

Korean regulations require advance notice by email or SMS at least 7 days before auto-renewal, plus cash receipt or tax invoice issuance. The e-commerce law grants a 7-day withdrawal right, with specific exceptions for digital content that must be stated explicitly.