API Integrations · TonerOne

Shopify API Integration

Real-time Shopify ↔ Odoo integration: products, variants, prices and stock published from Odoo; orders, customers and payments flowing back via webhooks; refunds and fulfilments kept in sync.

Client
TonerOne
Category
API Integrations
Platform
Odoo 17 + Shopify Admin GraphQL API
Duration
5 weeks
Team
3 specialists
Shopify API Integration

0%

orders captured during peak sales

0%

less reconciliation effort

<0s

order import time

The system

Verified webhooks are queued and processed idempotently, then reconciled against payouts.

Shopify store
Webhook · HMAC ✓
Queue
Odoo worker
Sales order

Event stream

listening
  • inventory_levels/updateHP-305XL391 ms
  • orders/paid#TO-48211604 ms
  • orders/create#TO-48211812 ms

Payout reconciled

PO-2026-0918

18,240.55

Orders matched
412
Gateway fees posted
531.20
Difference
0.00 ✓

Illustrative view with representative data.

The challenge

After the eBay integration, TonerOne wanted the same single-source-of-truth model for its own Shopify store. Orders and refunds were reconciled manually, and product data drifted between Shopify and Odoo.

The integration had to handle flash-sale traffic without losing a single order.

Problems & solutions

Problem 1

Webhook reliability under load

During promotions, bursts of webhooks risked being dropped or processed twice.

How we fixed it

Webhooks are verified, acknowledged instantly and queued; an idempotent worker processes them in order, with a nightly reconciliation job that backfills anything missed.

Problem 2

Payments and refunds reconciliation

Shopify payouts bundle many orders, fees and refunds together.

How we fixed it

Payout reports are imported and matched to Odoo invoices and refunds automatically, with gateway fees posted to the right accounts.

Problem 3

Variant and catalogue mapping

Odoo product variants and Shopify variants used different structures and SKUs.

How we fixed it

A mapping layer links variants by SKU/barcode, creates missing products on either side by rule and flags conflicts for review.

What we delivered

  • Product, variant, image and price publishing from Odoo
  • Multi-location stock sync
  • Webhook-driven order, customer and payment import
  • Fulfilment and tracking pushed to Shopify
  • Refunds, returns and payout reconciliation
  • Monitoring dashboard with replay of failed events

How the system flows

  1. 1Catalogue published
  2. 2Order placed
  3. 3Webhook queued
  4. 4Order created in Odoo
  5. 5Fulfilled & tracked
  6. 6Payout reconciled
Impact

Key operating metrics before the project and after go-live.

Payout reconciliation

-94%
Before8 hrs/wk
After0.5 hrs/wk

Product data mismatches

-99%
Before320
After4

Order import delay

-100%
Before240 min
After1 min

Tell us about your challenge. A solutions architect will reply within one business day with ideas, not a sales pitch.