skills/kibo-subscriptions/SKILL.md
Use for Kibo Subscription Commerce work — implementing recurring billing, configuring plans (evergreen, fixed-term, subscribe-and-save), managing subscriptions (pause, skip, swap, cancel), setting up dunning / retry for failed payments, handling cycles and continuity orders, building customer self-service portals, and understanding the Subscription-to-Order relationship. Triggers on Kibo Subscription, Kibo Subscription Commerce, subscriptionCreate, subscriptionUpdate, subscription cycle, subscription pause / skip / swap, subscription dunning, recurring billing Kibo, evergreen subscription, fixed-term subscription, subscribe and save, continuity order, payment recycling, subscription churn, subscription retention. Invoke for any Kibo Subscription question — API integration, implementation, configuration, debugging, or projecting subscription state into reporting/ERP.
npx skillsauth add ariessolutionsio/composable-skills kibo-subscriptionsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Progressive loading — only load what you need:
Load the relevant reference file before writing Kibo Subscriptions integration code. Subscriptions look like "orders that repeat" until you have to handle a paused subscription with a swapped SKU and a deferred charge — at which point the differences matter. The Subscription entity has its own lifecycle, its own state transitions, and its own relationship to Orders (each cycle typically creates a new Order rather than amending one).
| Pattern | File | Impact |
|---------|------|--------|
| Tenant / site model and x-vol-* headers (shared with all Kibo products) | references/api-setup.md | Wrong header → wrong scope |
| A Subscription is not an Order — each cycle creates a new Order | references/subscription-model.md | Code that mutates the original Order across cycles breaks reporting and refunds |
| Subscription lifecycle (Pending, Active, Paused, Errored, Failed, Cancelled) is distinct from Order lifecycle; Errored ≠ Failed (Errored can auto-recover via recycling, Failed is recycling-exhausted) | references/subscription-model.md | Treating "subscription failed" the same as "order failed" produces stuck states and wrong dunning |
| Dunning is a configurable retry schedule, not a retry-on-failure loop | references/billing-dunning.md | Ad-hoc retry loops bypass dunning rules and over-charge or under-collect |
| Pattern | File | Impact |
|---------|------|--------|
| Stored payment methods + off-session SCA / 3DS for recurring charges | references/billing-dunning.md | Off-session charges that don't handle SCA fail silently in EU markets |
| Modifications: skip vs swap vs change-frequency are different mutations | references/modifications.md | Conflating them produces wrong proration |
| Pause is a retention tool, not a cancel — has different reactivation semantics | references/retention.md | Cancelling instead of pausing loses customer LTV signal |
| Cancellation is terminal and immediate — there is no cancelAtPeriodEnd flag; end-of-period semantics must be built explicitly (skip-then-cancel or pause-then-cancel) | references/retention.md | Code that assumes Stripe-style cancel_at_period_end is configurable surprises customers and triggers chargebacks |
| Plan attribute changes vs subscription attribute changes apply at different scopes | references/plans.md | Editing the plan affects all subscribers; editing the subscription affects one |
| Pattern | File | Impact | |---------|------|--------| | Trial periods affect first charge timing | references/billing-dunning.md | Off-by-one trial computation creates wrong charge dates | | Frequency expressed as interval + unit (weekly, monthly, every-N) | references/plans.md | Custom cadences need the interval form, not predefined enums | | Bundle subscriptions (multiple SKUs in one cycle) have their own line semantics | references/subscription-model.md | Treating a bundle as a single SKU loses per-line fulfillment status | | Address change on active subscription: applies next cycle, not the current one | references/modifications.md | Mid-cycle address changes are ambiguous; document the policy |
| Anti-Pattern | File | Consequence | |--------------|------|-------------| | Building dunning as a custom retry loop | references/anti-patterns.md | Bypasses platform-configured retry rules; produces wrong customer notifications | | Treating each cycle's Order as an amendment to the prior Order | references/anti-patterns.md | Each cycle is its own Order with its own state | | Hardcoded next-charge-date computation | references/anti-patterns.md | Leap years, paused cycles, swapped plans break the math | | Off-session charges without SCA / 3DS handling | references/anti-patterns.md | Silent failures in EU markets | | Cancellation = immediate by default | references/anti-patterns.md | Customer expects access through end of period; chargebacks follow | | Pause modelled as a temporary cancel | references/anti-patterns.md | Loses retention signal and forces full re-onboarding |
| Need | Source | |------|--------| | Subscription product page | kibocommerce.com/platform/subscription | | Concept and developer guides | docs.kibocommerce.com | | Interactive API reference | apidocs.kibocommerce.com | | Hosted MCP server for runtime API access | docs.kibocommerce.com/pages/kibo-mcp-server |
Workflow: Use this skill to understand the right pattern → use apidocs.kibocommerce.com to look up exact field names → use Kibo's hosted MCP server to test the call against a real tenant.
tools
Operator-side patterns for integrating Marketplacer into a composable commerce stack — GraphQL Operator API, per-seller order splits via Invoices, caller-shaped webhooks with HMAC, MPay deposit-and-reconcile payouts, Golden Product PIM sync, wholesale orders, additional charges, and Catalog Rules. Use when implementing or maintaining a Marketplacer marketplace behind any commerce platform (commercetools, Kibo, Scayle, etc.), any search engine, any PIM, OMS, or ERP. Triggers on Marketplacer, marketplace, multi-vendor, multi-seller, Advert, Seller, Invoice, Golden Product, MPay, Airwallex, Hyperwallet, Xero, RefundRequest, RemittanceAdvice, Remittance, Taxon, Prototype, Catalog Rule, marketplace commission, marketplace fees, marketplace operator, marketplace webhooks, paymentReferences. Consult this skill before writing code that talks to a Marketplacer instance, defines a Marketplacer webhook, or maps Marketplacer data into another system.
development
Use for Kibo Order Management (OMS) implementation — design order routing strategies (DC-to-store fallback, location-based), implement fulfillment workflows (BOPIS, curbside pickup, ship-from-store), build RMA and returns processing, integrate inventory APIs with WMS (Refresh vs Adjust semantics), set up standalone-OMS behind Shopify / SFCC / custom storefronts, or import orders from external platforms. Triggers on Kibo OMS, Kibo Order Management, Kibo fulfillment, order routing, BOPIS, ship-from-store, fulfiller, fulfillment task, RMA, Kibo returns, Kibo inventory location, Kibo dropship, Kibo carrier, agentic order routing, standalone OMS. Covers routing rules, allocation logic, carrier integration, location capabilities, and the OMS-behind-non-Kibo-storefront pattern.
tools
Build, debug, and integrate Kibo Commerce eCommerce features — implement checkout/cart/catalog flows, troubleshoot cart and promotion issues, develop B2B portals, write API Extensions (Arc.js), configure Event Subscriptions, or connect to external PIMs/OMS/search. Covers OAuth, `x-vol-tenant`/`x-vol-site`/`x-vol-master-catalog` headers, tenant/site/catalog hierarchy, `@kibocommerce/rest-sdk`, REST vs GraphQL selection. Triggers on Kibo, Kibo Commerce, KiboCommerce, KiboSoftware, x-vol-tenant, x-vol-site, MasterCatalog, Kibo cart/checkout/catalog/storefront/B2B/promotions, API Extensions, Arc.js, Event Subscription, @kibocommerce/rest-sdk. Use whenever working with Kibo's commerce platform — implementing new features, debugging existing code, or integrating external systems.
tools
Production-tested patterns for commercetools Merchant Center custom applications, custom views, UI Kit, and deployment from a Platinum partner with 50+ live implementations.