๐Ÿ’ณ SKPayments ยท SKStack

Stripe subscriptions
for every app you build

One self-hosted service. Add an app to a JSON config, get checkout + webhooks + LiteLLM tier provisioning โ€” without touching code.

๐Ÿ›๏ธ SKCapstone ๐Ÿ’ณ SKPayments ๐Ÿ›ก๏ธ SKSecurity โš’๏ธ SKForge ๐Ÿงฉ Skills ๐Ÿง  SKMemory
# Start a checkout flow โ€” one request
POST /checkout/skai
{
  "user_id": "b1f2a3c4...",
  "email": "user@example.com",
  "tier": "pro"
}

โ† { "checkout_url": "https://checkout.stripe.com/..." }
# Stripe fires webhook โ†’ LiteLLM tier updated automatically

Billing infrastructure that
gets out of your way

Built for self-hosted SKStack deployments. No vendor billing SaaS. You own the data, the keys, the logic.

๐Ÿ—๏ธ

Multi-app by design

Register any number of apps in a single apps.json. One SKPayments instance serves them all โ€” SKAI, your next app, everything.

โšก

Auto-provisions LiteLLM tiers

Payment success โ†’ webhook received โ†’ /user/update fires. User gets their new budget and rate limits instantly. No manual steps.

๐Ÿ”

HMAC webhook verification

Every Stripe event is verified with your signing secret. Invalid signatures are rejected with 400. No spoofed upgrades.

๐Ÿ”„

Full subscription lifecycle

Checkout, plan upgrades, downgrades, cancellations. Cancelled subscriptions automatically drop the user to free-tier limits.

๐Ÿ—„๏ธ

Zero external dependencies

SQLite for customer records. Stripe via raw HTTPS. Runs on the open-webui base image already in your stack โ€” no new packages to manage.

๐Ÿณ

Docker Swarm native

One service, one stack file, bind-mounted config. Traefik + Cloudflare Tunnel labels included. Deploys in under 2 minutes.

Click to provisioned tier in seconds

SKPayments sits between your app and Stripe โ€” checkout, webhooks, and LiteLLM updates are fully automated.

01
App calls /checkout
โ†’
02
Stripe session created
โ†’
03
User pays on Stripe
โ†’
04
Webhook received
โ†’
05
LiteLLM tier updated

Every Stripe event handled

Configure once. SKPayments watches the subscription lifecycle and keeps LiteLLM in sync automatically.

checkout.session.completed
Payment confirmed. Customer record created or updated. LiteLLM user provisioned with paid-tier budget + rate limits.
customer.subscription.updated
Plan changed. Price ID resolved to tier name. LiteLLM limits adjusted immediately. Works for upgrades and downgrades.
customer.subscription.deleted
Subscription cancelled. Subscription record cleared. LiteLLM user reset to free-tier limits automatically.
invoice.payment_failed
Payment failed. Logged and flagged. Subscription status drives the tier โ€” if Stripe marks it inactive, limits drop on next update event.

Usage limits enforced at the model layer

Tiers apply directly to LiteLLM user budgets. Limits reset daily. Tiers are fully configurable per-app in apps.json.

Free
$0
  • $1 / day compute
  • 100K tokens / min
  • 10 requests / min
Enterprise
$99
/ month
  • $50 / day compute
  • 2M tokens / min
  • 120 requests / min
Sovereign
โˆž
  • Unlimited compute
  • No token limits
  • Internal / admin only

Simple REST, easy integration

All endpoints return JSON. Your app backend calls SKPayments โ€” users are redirected to Stripe and back.

POST /checkout/{app_id}
// Request
{ "user_id": "uuid", "email": "user@example.com", "tier": "pro" }

// Response โ†’ redirect browser to checkout_url
{ "checkout_url": "https://checkout.stripe.com/c/pay/cs_..." }
POST /portal/{app_id}
// Request
{ "user_id": "uuid" }

// Response โ†’ redirect to Stripe billing portal
{ "portal_url": "https://billing.stripe.com/p/session/..." }
GET /status/{app_id}/{user_id}
// Response
{ "app_id": "skai", "user_id": "...", "tier": "pro",
  "stripe_customer_id": "cus_xxx", "stripe_subscription_id": "sub_xxx" }
POST /webhook/stripe
// Register in Stripe Dashboard โ†’ Developers โ†’ Webhooks:
// Endpoint URL:  https://pay.nativeassetmanagement.com/webhook/stripe
// Events:        checkout.session.completed
//                customer.subscription.updated
//                customer.subscription.deleted
//                invoice.payment_failed

Sovereign AI infrastructure for creators

SKPayments is one piece of the sovereign AI stack. Everything connects.

Get Started

Deploy in under 2 minutes

Private repo. Full SOP included. Stripe keys dropped in via env var โ€” nothing else to configure.

View on GitHub โ†’ โ† Back to SKWorld