Skip to content
DENM Digital
Partisan & Co, DENM Digital
OUR ORIGIN
DIGITAL COMMERCE / INTEGRATIONS
PARTISAN & CO · K-SWISS · PALLADIUM · PARTISAN & CO · SOUTH AFRICA

From retyping every order to an event-driven pipeline.0101COVER · LIKE A FEATUREA good story sells better than a dry spec sheet. Write it up like a magazine feature so it earns attention, and attention sells the product next to it.The rule: editorial outsells a spec sheet

CLIENT
Partisan & Co
K-SWISS · PALLADIUM · PARTISAN & CO · SOUTH AFRICA
0202CREDITS · BY ROLEName the people who did the work, and what each did. Buyers trust a product more when they see the real team behind it, not just a wall of logos.The rule: show who made it
ENGAGEMENT
Connect your systems
DIGITAL COMMERCE / INTEGRATIONS · PRICING ON REQUEST
TIMELINE
2025 to Present
ONGOING SINCE 2016
TEAM
Strategy · Dev
DENM · PARTNER TEAM
WHAT CHANGED
0303RESULTS · BEFORE & AFTERShow the result, before and after side by side, so people see the change instead of taking your word for it. A proven outcome beats any claim, and never make up a number.The rule: a proven outcome outsells a claim
3 tiers
Stock resolved per SKU in warehouse priority order.
One global on-hand number → First tier holding uncommitted stock wins PARTISAN & CO
Idempotent
Writes keyed on the source document.
Documents keyed in by hand → A replayed event cannot post twice PARTISAN & CO
3 deployments
One engine per store, scoped to the documents it needs.
Per-brand manual process → Same engine, configured per store PARTISAN & CO
THE STORY

Partisan & Co runs three Shopify stores in South Africa: K-Swiss, Palladium, and its own multi-brand shop. The business is managed in Sage Intacct, and there is no supported connector between the two. Stock and prices were maintained by hand, and every order, return and exchange was rekeyed into Sage afterwards.

Inventory runs outbound. Sage is read over its XML gateway, warehouse by warehouse, and stock is resolved per SKU across tiers of warehouses: the first tier holding uncommitted stock wins, and where no tier holds any, the last tier's total stands. Open reservations are subtracted so the storefront does not sell what is already committed. The Shopify side is read through a bulk operations export rather than paged queries, which keeps a full catalogue to a single job. Sage's retail price list is VAT-exclusive while the stores are configured tax-inclusive, so prices are converted in transit.

SKUs that exist in Sage but not in Shopify are created. Size options are bound to Shopify's standard taxonomy metafields, which means resolving each size token to a real taxonomy value, normalising the naming shape the product already uses, sorting the values numerically instead of lexically, and publishing the result to the POS channel.

Documents run inbound. Intacct Smart Events POST a document ID to a function URL, and the handler dispatches on its prefix: a sale becomes an order entry invoice, a return becomes a credit note, an exchange nets the two, and a Lucca sales invoice is mirrored as a supplier invoice on the Partisan entity, so stock moving between the group companies reconciles without a manual capture. Writes are idempotent and keyed on the source document, so a replayed event cannot post twice, and every change is dry-run against live records into a CSV diff before it is allowed to write.

Each store runs the same engine, deployed separately as an arm64 container image with its configuration in environment variables, and carries only the handlers it needs. The Partisan store posts all four document types; Palladium runs the three that apply to it, and K-Swiss handles sales and returns only. When a document cannot be posted, the handler logs it, sends an alert, and creates nothing, so the warehouse captures it as it did before.

“Writes are keyed on the source document, so a replayed event cannot post twice.”
DENM DIGITAL · PARTISAN & CO
0404QUOTE · REAL WORDSUse the customer's own words, as they said them. Shoppers trust a real customer over your polished sales talk, which is why reviews sell.The rule: the customer's voice converts
Outbound
Sage read over the XML gateway, stock and VAT-corrected prices written to Shopify.
Sourcing
Per-SKU resolution across warehouse priority tiers, less open reservations.
Catalogue
Sage-only SKUs created in Shopify with taxonomy-linked size options, published to POS.
Inbound
Smart Events post document IDs to handlers that write sales, returns, exchanges and inter-entity invoices.
Now
Three deployments of the same engine, dry-run gated and alerting on failure.
BUY THE ENGAGEMENT THAT PRODUCED THIS
Connect your store to the systems you already run.0505BUTTON · BUY THE OUTCOMEGive every page a next step, no dead ends. Link the story straight to the product behind it, so someone who enjoyed reading can buy it right away.The rule: every page shoppable, no dead ends
DIGITAL COMMERCE · FIXED PROJECT · PRICE ON REQUEST
NEXT →
The Subwear story