home / skills / samhvw8 / dotfiles / payment-integration

payment-integration skill

/dot_ccp/hub/skills/payment-integration

This skill helps you integrate SePay and Polar for payment processing, subscriptions, webhooks, and automated billing across platforms.

npx playbooks add skill samhvw8/dotfiles --skill payment-integration

Review the files below or copy the command above to add this skill to your agents.

Files (22)
SKILL.md
5.5 KB
---
name: payment-integration
description: "Payment gateway integration. Providers: SePay (Vietnamese: VietQR, bank transfer, cards), Polar (global SaaS: subscriptions, usage-based billing). SDKs: Node.js, PHP, Python, Go, Laravel, Next.js. Capabilities: checkout flows, subscription management, webhooks, QR code generation, benefit automation, tax compliance. Actions: integrate, implement, configure, handle payments/subscriptions/webhooks. Keywords: payment gateway, SePay, Polar, VietQR, bank transfer, subscription, usage-based billing, checkout, webhook, QR code, API key, OAuth2, product management, customer portal, tax compliance, MoR, recurring payment, invoice. Use when: integrating payment processing, implementing checkout, managing subscriptions, handling payment webhooks, generating payment QR codes, building billing systems."
version: 1.0.0
license: MIT
---

# Payment Integration

Implement payment processing with SePay (Vietnamese payments) and Polar (global SaaS monetization).

## When to Use

Use when implementing:
- Payment gateway integration (checkout, processing)
- Subscription management (trials, upgrades, billing)
- Webhook handling (payment notifications)
- QR code payments (VietQR, NAPAS)
- Usage-based billing (metering, credits)
- Automated benefit delivery (licenses, GitHub access, Discord roles)
- Customer portals (self-service management)
- Bank transfer automation (Vietnamese banks)
- Product catalogs with pricing

## Platform Selection

**Choose SePay for:**
- Vietnamese market (VND currency)
- Bank transfer automation
- VietQR/NAPAS payments
- Local payment methods
- Direct bank account monitoring

**Choose Polar for:**
- Global SaaS products
- Subscription management
- Usage-based billing
- Automated benefits (GitHub, Discord, licenses)
- Merchant of Record (tax compliance)
- Digital product sales

## Quick Reference

### SePay Integration
- **Overview & Auth**: `references/sepay/overview.md` - Platform capabilities, API/OAuth2 auth, supported banks
- **API Reference**: `references/sepay/api.md` - Endpoints, transactions, bank accounts, virtual accounts
- **Webhooks**: `references/sepay/webhooks.md` - Setup, payload structure, verification, retry logic
- **SDK Usage**: `references/sepay/sdk.md` - Node.js, PHP, Laravel implementations
- **QR Codes**: `references/sepay/qr-codes.md` - VietQR generation, templates, integration
- **Best Practices**: `references/sepay/best-practices.md` - Security, patterns, monitoring

### Polar Integration
- **Overview & Auth**: `references/polar/overview.md` - Platform capabilities, authentication methods, MoR concept
- **Products & Pricing**: `references/polar/products.md` - Product types, pricing models, usage-based billing
- **Checkouts**: `references/polar/checkouts.md` - Checkout flows, embedded checkout, links
- **Subscriptions**: `references/polar/subscriptions.md` - Lifecycle, upgrades, downgrades, trials
- **Webhooks**: `references/polar/webhooks.md` - Event types, signature verification, monitoring
- **Benefits**: `references/polar/benefits.md` - Automated delivery (GitHub, Discord, licenses, files)
- **SDK Usage**: `references/polar/sdk.md` - TypeScript, Python, PHP, Go, framework adapters
- **Best Practices**: `references/polar/best-practices.md` - Security, patterns, monitoring

### Integration Scripts
- **SePay Webhook Verification**: `scripts/sepay-webhook-verify.js` - Verify SePay webhook authenticity
- **Polar Webhook Verification**: `scripts/polar-webhook-verify.js` - Verify Polar webhook signatures
- **Checkout Helper**: `scripts/checkout-helper.js` - Generate checkout sessions for both platforms

## Implementation Workflow

### SePay Implementation
1. Load `references/sepay/overview.md` for auth setup
2. Load `references/sepay/api.md` or `references/sepay/sdk.md` for integration
3. Load `references/sepay/webhooks.md` for payment notifications
4. Use `scripts/sepay-webhook-verify.js` for webhook verification
5. Load `references/sepay/best-practices.md` for production readiness

### Polar Implementation
1. Load `references/polar/overview.md` for auth and concepts
2. Load `references/polar/products.md` for product setup
3. Load `references/polar/checkouts.md` for payment flows
4. Load `references/polar/webhooks.md` for event handling
5. Use `scripts/polar-webhook-verify.js` for webhook verification
6. Load `references/polar/benefits.md` if automating delivery
7. Load `references/polar/best-practices.md` for production readiness

## Key Capabilities

**SePay:**
- Payment gateway (QR, bank transfer, cards)
- Bank account monitoring with webhooks
- Order-based virtual accounts
- VietQR generation API
- 44+ Vietnamese banks supported
- Rate limit: 2 calls/second

**Polar:**
- Merchant of Record (global tax compliance)
- Subscription lifecycle management
- Usage-based billing (events, meters)
- Automated benefits (GitHub, Discord, licenses)
- Customer portal (self-service)
- Multi-language SDKs
- Rate limit: 300 req/min

## Instructions

When implementing payment integration:

1. **Identify platform** based on requirements (Vietnamese vs global, payment types)
2. **Load relevant references** progressively as needed
3. **Implement authentication** using platform-specific methods
4. **Set up products/pricing** according to business model
5. **Implement checkout flow** (hosted, embedded, or API-driven)
6. **Configure webhooks** with proper verification
7. **Handle payment events** (success, failure, refund)
8. **Test thoroughly** in sandbox before production
9. **Monitor and optimize** using platform analytics

Load only the references needed for current implementation step to maintain context efficiency.

Overview

This skill implements payment gateway integration for SePay (Vietnam-focused) and Polar (global SaaS billing). It provides checkout flows, subscription and usage-based billing, webhook handling, QR code generation, and tax-compliant merchant-of-record functionality. The SDKs and adapters cover Node.js, Python, PHP, Go, Laravel, and Next.js to speed implementation.

How this skill works

The skill wires authentication, product setup, checkout sessions, and webhook endpoints to process payments and manage subscriptions. It inspects payment events, verifies webhook signatures, and triggers benefit automation (licenses, GitHub/Discord roles) or order fulfillment. It also supports VietQR and bank transfer flows for Vietnamese banks and usage metering for consumption billing.

When to use it

  • Building a checkout for Vietnamese or global customers
  • Implementing subscription lifecycle (trials, upgrades, downgrades)
  • Automating payment notifications and webhook-driven fulfillment
  • Generating VietQR codes or automating bank transfer reconciliation
  • Implementing usage-based billing or metered subscriptions
  • Adding MoR tax compliance and customer self-service portals

Best practices

  • Select SePay for Vietnam-specific flows (VND, VietQR, bank automation) and Polar for global SaaS, MoR, and usage billing
  • Use SDKs to reduce API surface; fallback to REST for custom flows
  • Implement webhook signature verification and idempotency to avoid duplicate processing
  • Model products and pricing to reflect trials, recurring and usage units before creating checkout sessions
  • Test end-to-end in sandbox including failed payments, refunds, and retries
  • Monitor rate limits and implement exponential backoff for platform APIs

Example use cases

  • Local marketplace: accept VietQR and bank transfers in VND, reconcile orders via bank-monitoring webhooks
  • SaaS subscription: use Polar for recurring billing, trials, upgrades, and customer portal self-service
  • Usage billing: meter events server-side, report usage to Polar and invoice customers monthly
  • Automated fulfillment: on successful payment deliver licenses, add GitHub access, or assign Discord roles
  • Hybrid product: offer global card checkout via Polar and Vietnam-only bank/QR via SePay

FAQ

Which provider should I pick for Vietnam vs global sales?

Choose SePay for Vietnam-native payments (VietQR, bank transfers, VND). Choose Polar for global SaaS, usage billing, and Merchant-of-Record tax handling.

How do I prevent duplicate webhook processing?

Verify signatures, persist event IDs, and implement idempotent handlers so repeated deliveries update state only once.

Can I support both providers in one product?

Yes. Route customers by region or payment method and use each provider for their strengths (SePay for local bank/QR, Polar for global subscriptions).