SAP Business One + Shopify integration

Connect SAP Business One (SAP B1) and Shopify to automate orders, inventory, fulfillment and refunds. AIONDATA builds the sync around your stores and warehouses, with custom field mapping, retries and monitoring.

California-based leadership · Serving US and international teams

SAP B1
AIONDATAsync · MCP · rules
Shopify
Items → ProductsStock LevelsOrdersCustomersFulfilment and TrackingRefunds and Returns
Illustrative integration flow

Your integration, scoped before we build

  • Object and field mapping for your workflows
  • Sync timing, error handling and reconciliation
  • Written scope, timeline and support options

Ready to connect SAP B1 and Shopify?

Share your objects, volumes, and timing needs — we'll come back with a written scope.

Please share the systems and workflow—not credentials or customer records. We’ll confirm API access, scope and next steps.

NVIDIA Inception

NVIDIA Inception member

Part of NVIDIA’s program for startups building with AI and accelerated computing.

About the program
Pravin BansalSravan Modugula

Bay Area roots. Enterprise experience.

Pravin’s experience includes Google and SmartBear. Sravan previously held leadership roles at JPMorgan Chase and First Republic Bank.

Meet the founders

San Francisco Bay Area, California

9110 Alcosta Blvd Ste H345, San Ramon, CA 94583

US-led delivery, with engineering in India. Supporting US and international organizations.
Prefer email? info@aiondata.io

Let’s scope your integration.

Just your name and email to get started. Your details are handled under our Privacy Policy.

How SAP B1 and Shopify work together

SAP Business One Shopify integration connects your online store to ERP inventory and order processing. Shopify orders flow into SAP B1; product data, available stock, fulfillment and tracking updates flow back to the store. We map SKUs, warehouses, customer records, taxes and refunds to your business rules. Delivery uses the SAP B1 Service Layer and Shopify Admin API, with webhooks and scheduled updates matched to your order volume.

Plan your SAP B1 + Shopify implementation

These decisions shape the scope, cost and acceptance tests. The flows below describe possible implementation behavior, not a preinstalled connector or a guarantee for every product edition.

Map stores and warehouses

List Shopify stores and locations alongside SAP Business One companies and warehouses. Decide how SKUs, variants and sellable stock are matched, including any stock reserved for other sales channels.

Define the order lifecycle

Agree which payment or approval state releases an order, how guest customers are represented, and what happens to edits, cancellations, partial shipments and refunds.

Test the awkward cases

Include a repeated order notification, a missing SKU, a partial fulfillment and a refund after shipment. Verify the resulting inventory and accounting treatment with your operations and finance owners.

Plan operations and cost

The scope accounts for store count, order volume, peak traffic, backfills and required sync delay. Confirm API access, monitoring, reconciliation, technical training and support before approving the estimate.

Data flows

What moves between SAP B1 and Shopify

  1. 01Items → ProductsSAP B1 ShopifySAP B1 items flagged for web sale create or update Shopify products and variants with SKU, barcode, weight and price.
  2. 02Stock LevelsSAP B1 ShopifyAvailable quantity per SAP B1 warehouse maps to Shopify locations and updates inventory on every change or on a short schedule.
  3. 03OrdersShopify SAP B1Paid Shopify orders create SAP B1 Sales Orders (or A/R Invoices) with line items, discounts, shipping and tax; the order name is stored as a reference.
  4. 04CustomersShopify SAP B1Shopify customers are matched to existing SAP B1 Business Partners or created under a web-customer group.
  5. 05Fulfilment and TrackingSAP B1 ShopifySAP B1 deliveries create Shopify fulfilments with tracking numbers so customers get shipping notifications.
  6. 06Refunds and ReturnsShopify SAP B1Shopify refunds create SAP B1 credit memos or returns to keep the ledger and stock correct.

Field mapping

SAP B1 and Shopify field mapping

The records, match keys and triggers most implementations start from. Your scope confirms each row against your editions, custom fields and business rules.

SAP B1 and Shopify field mapping
SourceTargetMatch keyDirectionTriggerNotes
Items (OITM)Shopify product and variantItemCode = variant SKUSAP B1 → ShopifyScheduled delta, plus on-demand resyncOnly items flagged for web sale; barcode, weight and sales unit of measure mapped; item groups can drive Shopify collections.
Item warehouse data (ItemWarehouseInfoCollection, OITW)Shopify inventory level per location (inventorySetQuantities)WarehouseCode = Shopify locationSAP B1 → ShopifyEvery 5 to 10 minutes, or on document events where webhooks are enabledSellable quantity = on hand minus committed minus an agreed buffer; compare-and-set prevents an older value overwriting a newer one.
Price lists and item prices (OPLN, ITM1)Shopify variant price or market price listPrice list number = Shopify market or catalogSAP B1 → ShopifyHourly, or after a price updateCurrency and gross or net pricing agreed per store.
Special prices (SpecialPrices)Shopify B2B price list on a catalogCardCode + ItemCodeSAP B1 → ShopifyScheduledBusiness Partner-specific prices become fixed prices on that company location’s catalog.
Business Partners (OCRD) and contact persons (OCPR)Shopify customer, or B2B company and contactEmail or stored CardCodeSAP B1 ↔ ShopifyNew Shopify customer or first order; B1 changes on a scheduleNew web buyers are created as customers or posted to a shared web account; CardCode is written back to Shopify.
Shopify paid order (orders/paid webhook)Sales Order (ORDR, Orders)Shopify order ID in a user-defined field; existing-order check before createShopify → SAP B1orders/paid webhook, plus a scheduled sweepDiscounts, shipping lines and tax codes mapped; the Shopify order name, such as #1001, is shown on the document for staff.
Delivery (ODLN, DeliveryNotes)Shopify fulfillment (fulfillmentCreate)Base sales order = Shopify order ID; delivery lines = fulfillment order linesSAP B1 → ShopifyOn delivery posting, by schedule or webhookTracking number and carrier from the delivery; partial deliveries create partial fulfillments.
A/R Invoice (OINV, Invoices)Shopify order metafieldBase delivery or sales orderSAP B1 → ShopifyScheduledInvoice number and status for service teams.
Shopify payment transactionIncoming Payment (ORCT, IncomingPayments)Shopify transaction IDShopify → SAP B1After the A/R invoice is createdEach gateway mapped to a bank or clearing account; fees handled in payout reconciliation.
Shopify refund (refunds/create webhook)A/R Credit Memo (ORIN, CreditNotes)Shopify refund IDShopify → SAP B1refunds/create webhookRestocked items post a Return (ORDN, Returns) first; refund-only adjustments go straight to a credit memo.
Shopify cancellation (orders/cancelled webhook)Sales Order cancellationShopify order IDShopify → SAP B1orders/cancelled webhookOnly while nothing has been delivered; after delivery the case becomes a return.
WarehousesShopify locationsWarehouseCode = Shopify location ID in the mapping tableSAP B1 → ShopifySet up once; reviewed when warehouses changeOnly warehouses that ship web orders; stock reserved for other channels can be held back.

Download this mapping as a CSV worksheet · no email required

Editions and APIs

SAP B1 and Shopify: editions, hosting and APIs

The edition, hosting model and API on each side decide what the integration can do and how it is built.

Editions, hosting and APIs
SAP Business One on SAP HANA or Microsoft SQL ServerBoth versions integrate through the Service Layer; SAP added Microsoft SQL Server support with SAP Business One 10.0 PL01. OData version 3 is served at /b1s/v1 and version 4 at /b1s/v2, and each login names one company database.
DI API and DI ServerThe DI API is a Microsoft COM library suited to Windows add-ons, and the DI Server targets SOAP integrations. Both share the DI core with the Service Layer, so objects and properties match. We use them only where the Service Layer lacks a function.
Service Layer webhooksAvailable as of SAP Business One 10.0 FP 2602. Disabled by default for each company and delivered by the Webhook Messenger Service, with retries, HMAC or OAuth authentication and manual replay. The messenger attempts to keep event order within a company, but not across companies.
Shopify plansShopify’s pricing page lists B2B on Basic, Grow and Advanced with up to three catalogs, and unlimited catalogs on Plus. Plus also lists up to nine free expansion stores and up to 500% higher API call limits.
Shopify APIsGraphQL Admin API for new work: Shopify made the REST Admin API legacy on October 1, 2024, and new public apps must use GraphQL since April 1, 2025. Webhooks carry order events; bulk operations handle catalog loads and backfills asynchronously.

Options, cost and timeline

Ways to deliver SAP B1 and Shopify integration

A prebuilt connector is sometimes enough. This comparison shows when each route fits, what it typically costs and how long it takes.

Delivery options, cost and timeline
ApproachTypical costTypical timeFits whenWatch for
Prebuilt Shopify app (catalog sync)From about $99/month (vendor list price, checked Sep 2026) for eShopSync’s SAP Business One Integration appDays to install and mapPublishing SAP B1 items and item groups to ShopifyThe listing covers items and item groups; orders, stock rules, refunds and B2B pricing are outside that scope
iPaaS templateFrom about $99/month (vendor list price, checked Sep 2026) for APPSeCONNECT plans, plus ProcessFlow packs; Celigo does not publish pricesDays to weeks for standard flows, depending on mapping and testingStandard order, customer and item flows on a vendor-run platformCosts grow with flows and volume; confirm multi-company support and how changes outside the template are priced
Custom integration (AIONDATA)Quoted after a short discovery; hosting and support priced separatelyUsually a few weeks including testing for products, stock, orders, customers and fulfillment; typically two to three months with multiple stores, B2B price lists or complex bundlesMultiple companies or stores, B2B pricing, bundles and kits, special refund rules, or a requirement to own the codeSomeone must own monitoring and quarterly Shopify API updates; agree the handover pack and support terms up front
Managed integration serviceMonthly fee quoted per scope by the providerSetup as for iPaaS or custom, then ongoingTeams without in-house integration staff who want one party to watch and fix failuresAgree response times, who fixes SAP data errors, and your access to mappings and logs if you change provider

Vendor prices are list prices from their public pages on the date shown; confirm current pricing with each vendor.

B2B, Shopify Plus and multiple stores

SAP Business One keeps customer pricing in price lists and in special prices for individual Business Partners. Shopify B2B works with companies, company locations and contacts, and shows prices through catalogs with price lists assigned to company locations. The integration turns one model into the other and keeps them in step.

Plan limits matter. Shopify’s pricing page lists B2B on Basic, Grow and Advanced with up to three catalogs, and unlimited catalogs on Plus; its B2B page labels customer-specific catalogs as a Plus feature. If you have many price groups, confirm the limit first, then decide which B1 price lists reach Shopify.

Several stores add routing rules. Plus lists up to nine free expansion stores, which brands often use for regions or wholesale. Each store needs its own credentials, warehouse and price list mapping, and a rule for which SAP B1 company receives its orders.

  • Map each B1 price list or special-price group to a Shopify catalog.
  • Store the CardCode on the Shopify company so orders post to the right Business Partner.
  • Match payment terms and tax exemptions on the company location to the Business Partner.
  • Give each store its own warehouse, price list and company routing rules.

Failure and reconciliation playbook

Shopify states that webhooks can be duplicated, arrive out of order or not arrive at all, and recommends reconciliation jobs. SAP B1 can refuse a valid order for business reasons. The integration stores every event, processes it once and keeps failures visible until someone resolves them.

On SAP Business One 10.0 FP 2102 and later, the Service Layer supports ETags on documents such as orders, deliveries and invoices, so an update based on stale data is rejected instead of silently overwriting a newer change. We use that for any flow that updates existing documents.

  • Duplicate webhook: ignored using the webhook ID and an existing-order check on the Shopify order ID.
  • Missed webhook: a sweep lists Shopify orders updated since the last run and posts any that are missing.
  • Business rejection: held with the SAP B1 message; the owner fixes the item, Business Partner or price and replays.
  • Service Layer unavailable: retries with backoff, then an alert; orders queue safely during backups and upgrades.
  • Stock drift: a nightly job compares warehouse stock with Shopify inventory for every SKU.
  • Payment check: a daily list of paid Shopify orders without an incoming payment in SAP B1.

Acceptance tests before go-live

Run these against a copy of your SAP B1 company and a Shopify development store, with the finance and warehouse owners signing off the results.

  • A paid order with a discount code, a shipping line and tax creates one sales order with matching totals.
  • The same webhook delivered twice creates one sales order.
  • An order for an unmapped SKU stops with a readable error and posts after the fix.
  • A partial delivery creates a partial fulfillment with tracking in Shopify.
  • A refund with restock creates a Return and an A/R Credit Memo; a refund without restock creates only the credit memo.
  • A stock change in SAP B1 reaches Shopify within the agreed interval.
  • A B2B buyer sees their special price, and an order from a second store posts to the right company.

Outcomes

Why teams connect SAP B1 and Shopify

  • Shopify only sells what SAP B1 says is available, cutting cancellations and back-order emails.
  • Orders reach SAP B1 within minutes of payment, so picking and invoicing happen without a manual import.
  • Tracking numbers flow back to Shopify automatically, reducing "where is my order" tickets.
  • Prices and product data are maintained once in SAP B1 and published to Shopify, removing catalog inconsistencies.

SAP B1 Shopify Integration FAQs

How real-time is the stock and order sync?

Orders arrive through Shopify webhooks and are usually created in SAP B1 within seconds to a couple of minutes. Stock is read from the Service Layer on a short schedule, often every 5 to 10 minutes, and can also be pushed after goods receipts or deliveries. On SAP Business One 10.0 FP 2602 or later, Service Layer webhooks can notify the integration when documents change; SAP ships them disabled for each company, and they need the Webhook Messenger Service.

DI API or Service Layer: which do you use?

The Service Layer for new integrations. SAP describes it as an OData service built on the same DI core as the DI API, so business objects and properties match. The DI API is a Microsoft COM library that fits Windows add-ons, and we use it only where the Service Layer lacks a function. SAP also lists Service Layer limits, such as no user transactions across requests, which we handle with batch requests and retry-safe design.

Does it matter if SAP B1 runs on SQL Server or SAP HANA?

Less than it used to. SAP added Service Layer support for Microsoft SQL Server with SAP Business One 10.0 PL01, so both versions integrate through the same API. Differences remain in reporting features: Semantic Layer views are HANA only, while SQL Server systems can expose their own SQL views through the Service Layer. Older SQL Server releases without the Service Layer need the DI API or an upgrade first.

We run several SAP B1 companies. Can one Shopify integration serve them?

Yes. Each Service Layer login names one company database, so the integration keeps a session per company and routes each order by store, market or SKU rule. Warehouses, price lists, tax codes and payment accounts are mapped per company, and no order is written to a company without an explicit rule.

How do you handle SKU mapping and duplicate customers?

We map SAP B1 ItemCode to the Shopify variant SKU and handle variants, bundles and units of measure explicitly in the mapping workbook. Shopify customers are matched to Business Partners by email or a stored CardCode, with an optional shared web-customer account for guest checkouts. The CardCode is written back to the Shopify customer so the next order matches without a search.

What happens when an order fails in SAP B1?

It stops in a retry queue with the SAP error, for example a missing item, a blocked Business Partner or a credit limit, and an alert goes to the named owner. Technical errors retry automatically; data errors wait for a fix and a replay. Before creating an order, the integration checks for an existing document with the same Shopify order ID, so replays and duplicate webhooks cannot create a second sales order.

Should a Shopify order create a sales order or an A/R invoice?

Most businesses create a sales order, then a delivery and an A/R invoice as goods ship, because stock is committed and fulfillment is tracked in SAP B1. Stores that ship at checkout or sell services sometimes post an A/R invoice directly, with an incoming payment for the Shopify transaction. We decide per sales channel with your finance team.

How are Shopify payments and refunds recorded in SAP B1?

Captured payments become Incoming Payments against the A/R invoice, posted to the bank or clearing account agreed for each payment gateway. Refunds create A/R Credit Memos, and when goods come back to stock a Return document comes first. Payout fees and settlements are matched in a separate step so the clearing account reconciles to your bank.

Prebuilt connector or custom integration: which do we need?

Start with the smallest option that covers your flows. A Shopify App Store app such as eShopSync’s SAP Business One Integration publishes B1 items and item groups to Shopify for a published monthly fee. iPaaS templates, such as Celigo’s Shopify and SAP Business One template, add orders, customers and items. A custom build is worth it for multiple companies or stores, B2B price lists, bundles and kits, special refund rules, or when you want to own the code.

What drives the cost of an SAP B1 Shopify integration?

The number of flows and stores, and how much logic sits between them. Multiple B1 companies, B2B price lists, bundles and kits, units of measure, historical backfills and peak-season volumes all add build and test time. Ongoing cost depends on hosting, monitoring, any iPaaS subscription and the support you choose. A written scope lists each of these before you approve an estimate.

Can Shopify Plus B2B pricing come from SAP B1?

Yes. B1 price lists and special prices for specific Business Partners map to Shopify price lists, which attach to catalogs assigned to company locations. Shopify’s pricing page lists B2B on Basic, Grow and Advanced with up to three catalogs, and unlimited catalogs on Plus, so your plan sets how many customer price groups can have their own list. Payment terms and tax exemptions are set per company location in Shopify and should match the Business Partner in B1.

Can the integration reach an on-premise SAP B1 server?

Yes, without exposing the Service Layer to the internet. Common patterns are a small agent inside your network that calls the Service Layer and sends data out, or a VPN to a hosted integration service. SAP’s guide also recommends firewalling Service Layer load-balancer members so only the load balancer can reach them, and we keep that in place.

Who maintains the integration after go-live?

You choose. We hand over the code, mapping workbook, runbook and alert setup so your team can operate it, or we support it under an agreed plan. Shopify releases a new API version every quarter and supports each for at least 12 months, and SAP ships B1 feature packs, so someone should review both on a schedule.

Can AI agents use SAP Business One and Shopify together?

Yes. We can build a custom MCP server exposing the SAP B1 Service Layer and Shopify Admin API so an assistant can check stock, look up an order’s status across both systems or trigger a re-sync for a specific SKU. Write actions are scoped and auditable.

How long does an SAP Business One Shopify integration take?

A standard products, stock, orders, customers and fulfillment sync usually takes a few weeks including testing against a copy of your SAP B1 company. Multiple Shopify stores, B2B price lists per customer, or complex bundles and kits extend the build, typically to two to three months.

Ready to connect SAP B1 and Shopify?

The enquiry form is at the top of this page. Share your objects, volumes and timing needs and we'll come back with a written scope.

Go to the enquiry form