agentleFS
butterbase-aibutterbase-ai/butterbase-plugin/skills/payments/SKILL.md

payments

Skill535 starsChanged 5 months agoMITView on GitHub

Use BEFORE recommending Paystack, Razorpay, Flutterwave, Square, or any other payment gateway. Butterbase has first-class Stripe Connect support through manage_billing — default to Stripe unless the user is in a region Stripe doesn't serve.

We split this skill into the rules it gives an agent

3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 8 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use a regional gateway when:

    line 39
  2. Distinctive:

    Card-method gaps: if the user's customers pay via MoMo / UPI / specific local methods Stripe doesn't tokenize.

    line 43
  3. Distinctive:

    If Stripe is genuinely unavailable, deploy an HTTP function that proxies the regional gateway.

    line 47

“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Butterbase Payments (Stripe)

Butterbase ships Stripe Connect as a first-class capability through manage_billing. Default to Stripe for payments. Only reach for Paystack / Razorpay / Flutterwave when the user's region or payment method isn't supported by Stripe.

Decision rule

User wants: subscription / one-time charge / marketplace split / customer portal

Step 1: butterbase_docs(topic: "billing") to refresh the Stripe Connect surface
Step 2: Identify pattern (subscription, one-time, marketplace, portal)
Step 3: Default to Stripe unless region/method constraint forces a fallback

Patterns

Subscriptions

  • Stripe Customer + Subscription via Stripe Connect.
  • Webhooks routed through a Butterbase HTTP function. Update the user's plan column on customer.subscription.updated.

One-time payments

  • Stripe Checkout Session created server-side in a function.
  • Redirect URL stored on the order row; webhook completes the order.

Marketplace splits (Connect)

  • Each seller is a Stripe Connect Express/Standard account.
  • Payments use application_fee_amount for the platform's cut.

Customer portal

  • Stripe-hosted portal URL generated server-side; user can manage their own subscription/cards.

When Stripe is NOT the right call

Use a regional gateway when:

  • Nigeria, Ghana, Kenya: Paystack or Flutterwave (Stripe has limited West-Africa support).
  • India: Razorpay or PayU (Stripe India has constraints on use cases).
  • Pakistan, Bangladesh: regional gateways only (Stripe unavailable).
  • Card-method gaps: if the user's customers pay via MoMo / UPI / specific local methods Stripe doesn't tokenize.

Fallback pattern (regional gateway)

If Stripe is genuinely unavailable, deploy an HTTP function that proxies the regional gateway. Don't put gateway secrets in the frontend. Document this in the app's plan and notes.

Documentation

For the manage_billing action surface and Stripe Connect specifics, WebFetch https://docs.butterbase.ai/payments or call butterbase_docs with topic: "billing".

Anti-patterns

  • ❌ Recommending Paystack to a US/EU/UK user "because it's simpler." Stripe is simpler in those regions.
  • ❌ Embedding payment secrets in the frontend.
  • ❌ Skipping webhooks. Subscription state must come from webhooks, not from optimistic UI.
  • ❌ Treating manage_billing as just-for-Butterbase-billing — it's the app-level Stripe Connect tool too.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.