skills/kibo-oms/SKILL.md
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.
npx skillsauth add ariessolutionsio/composable-skills kibo-omsInstall 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 OMS integration code. Kibo's OMS is often sold standalone — many implementations have it sitting behind a different storefront (Shopify, SFCC, or a custom build), with orders pushed in via API. The standalone-OMS shape is a different mental model from the bundled "Kibo all the way" pattern, and getting the order-intake direction wrong is the most common architectural mistake.
| Pattern | File | Impact |
|---------|------|--------|
| Tenant / site model and x-vol-* headers (shared with all Kibo products) | references/api-setup.md | Wrong header → wrong scope → wrong inventory or wrong orders |
| OMS-standalone vs OMS-with-Kibo-eCommerce are different architectures | references/order-intake.md | Code that assumes orders originate in Kibo eCommerce breaks for Shopify-fronted OMS deals |
| Inventory is location-scoped; aggregate inventory is a derived view | references/inventory.md | Treating aggregate inventory as authoritative produces oversells |
| Order routing decides which location fulfills — get the rules right at config time | references/order-routing.md | Wrong routing produces split orders that should have been single, or vice versa |
| Returns / RMA is its own workflow distinct from cancellation | references/returns.md | Modeling returns as an order edit produces stuck states and miscounted inventory |
| Pattern | File | Impact |
|---------|------|--------|
| Order intake: idempotency keys and external-order-ID strategy | references/order-intake.md | Without these, retries from the upstream commerce platform duplicate orders |
| Partial shipments are first-class; sum of shipped quantities must be ≤ ordered (not strictly equal — backorder waves ship over time) | references/fulfillment.md | Code that creates one shipment per order can't handle BOPIS + ship-from-warehouse mixed orders, or backorder waves |
| BOPIS / curbside have their own state transitions (Awaiting Collection, Collected) | references/fulfillment.md | Treating BOPIS as "shipped immediately" breaks the pickup notification flow |
| Inventory adjustments (decrement, allocate, reserve, release) are distinct operations | references/inventory.md | Mixing them up causes phantom stock |
| Carrier integration is per-tenant; rate shopping happens at checkout, not in OMS | references/shipping.md | Rates re-shopped in OMS can differ from the customer-shown rate |
| Inventory sync to external storefront (Shopify, SFCC) is eventual, not synchronous | references/order-intake.md | UI expecting real-time inventory shows stale numbers |
| Pattern | File | Impact |
|---------|------|--------|
| Location capability data lives on the fulfillmentTypes array (values commonly modeled as "Direct Ship" / "In-Store Pickup" — verify exact enum strings against your tenant's Location admin API) plus operational metadata (hoursOfOperation, fulfillmentCapacity) | references/order-routing.md | Routing rules that ignore the actual capability fields try to fulfill from locations that can't handle the line |
| Refund mechanics: OMS records, PSP captures | references/returns.md | Treating Kibo's "refunded" state as customer-side authoritative is wrong |
| Backorder vs out-of-stock vs preorder are different states | references/inventory.md | Conflating produces wrong promise dates |
| Calendar / hours / capacity per location | references/order-routing.md | Routing to a closed store creates customer-service tickets |
| Anti-Pattern | File | Consequence | |--------------|------|-------------| | Treating Kibo OMS as Kibo eCommerce | references/anti-patterns.md | Standalone-OMS deals have orders coming in via API from a different storefront | | Pushing orders without idempotency keys | references/anti-patterns.md | Upstream retries duplicate orders | | Reading aggregate inventory and treating it as authoritative | references/anti-patterns.md | Oversells at high-velocity SKUs | | Modeling returns as an order edit | references/anti-patterns.md | RMA has its own state machine | | Hardcoding shipment count assumptions per order | references/anti-patterns.md | BOPIS + ship-from-warehouse split orders don't fit one-shipment-per-order | | Re-shopping carrier rates in OMS | references/anti-patterns.md | Rates can differ from the customer-shown rate | | Treating Kibo OMS "refunded" state as customer-side authoritative | references/anti-patterns.md | Customer-side refund is the operator's PSP |
| Need | Source | |------|--------| | Interactive API reference (REST) | apidocs.kibocommerce.com | | Developer guides, fulfillment & OMS concept docs | docs.kibocommerce.com | | Fulfillment workflow engine (Java, reference impl) | github.com/KiboSoftware/kibo-fulfillment-workflows | | 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.
tools
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.
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.