Shopify SAP Integration
For store orders to land in SAP, for stock and price to go from SAP to the store, and for the invoice to come out of the right layer, an integration layer is needed between the two systems. SAP does not connect to Shopify out of the box; which path is open is decided by the SAP version you use and your licenses. Setup starts with version discovery and closes with your first order. In between, the customer, order, stock and price flows are each built separately, and in Turkey the invoice side is a separate project line.
growing on Shopify with Nodus Works
Shopify SAP integration what is it?
A Shopify SAP integration is the connection that keeps store orders, customers, products, stock and price lined up in both systems. Because the flow on the SAP side always runs through a licensed integration layer, setup is a project line, not an app-install job.
Setup starts by discovering which SAP version you use and which licenses you hold. On the enterprise version a ready integration package and a Shopify adapter come into play; on the mid-market version an integration template does. After that discovery, connection details are entered, matching is set up and the flow is tried with a single product. To correctly detect which version needs which integration path, Nodus Works' Shopify integration and custom app development service makes that call for you.
Once the connection is live, SAP stays at the center: the customer and the order come from the store into SAP, stock and price go from SAP to the store, and shipment status is written back. Because the electronic-document side is not inside SAP in Turkey, it is built as a separate layer and that layer's ownership is written down from the start.
What syncs between Shopify and SAP
Once the connection is live, customers, orders, stock, price, shipments and returns become parts of the same flow. The six headings below cover the questions that come up most often in a Shopify SAP integration.
Transfer of the customer record into SAP
A customer created in the store comes to the SAP side and is reviewed there, approved and tied to a business-partner record. If you sell to companies, which hierarchy and which distribution center that record is tied to decide the rest of the flow.
Transfer of Shopify orders into SAP
The order is opened in SAP as a sales order and every later step attaches to that record. Which status the order is transferred at is chosen during setup; not transferring orders whose payment is not confirmed is the safest layout.
Publishing stock by distribution center
Stock is written from SAP to the store and this publish can be done per distribution center. So every customer sees the stock of the center that serves them; this is the most valuable side of the integration in multi-warehouse enterprise structures.
Product and price transfer
Products and product groups can be carried from SAP to the store, and price flows in the same direction. If you have customer-specific price conditions, how that is met on the store side is a separate design decision.
Shipment and delivery status
The status and tracking data of the shipment prepared on the SAP side are written back to the store, so the customer follows their parcel from their own order page. When this write-back is not set up, the data is carried by hand.
Return and document flow
The return comes from the store into SAP and the matching document correction is made. Because the electronic document in Turkey comes out of a layer outside SAP, which system issues the return invoice is made clear from the start.
Which integration path is open on the SAP side?
The first split of the project is made here. There is an app that carries the SAP name in the Shopify App Store, but SAP's real bridge is not there, and when the two are mixed up the project cannot find the most critical flow.
The App Store app does not carry orders
The SAP Business One app in the Shopify App Store is not an app SAP published itself, and its scope is very narrow: it only carries products and product groups to the store. It does not pull orders, issue invoices, write stock or open a customer record. A store that pays a monthly fee and installs it cannot find the flow it was actually looking for.
There is a ready integration package on the enterprise version
SAP publishes a Shopify integration package for its enterprise version in its own resources. The package runs on SAP's integration platform and also requires a Shopify adapter to be installed; both need a license, so what you hold has to be discovered before a quote.
There is an integration template on the mid-market version
On the Business One side the flow is built with the ready template on SAP's integration framework: your system identity and store connection details are entered and the template is deployed. Because that framework is also a separate component, whether setup is possible with the license you hold is confirmed from the start.
The shared result of the three items is this: SAP does not connect to Shopify out of the box; a licensed SAP component sits in between on every path. That is why, for quotes given under a "SAP integration" heading to be comparable, which path is used has to be written down. Bridges built by independent firms are also an option, but in that case your support counterpart is the party that provides the bridge, not SAP, and compatibility responsibility on SAP-side upgrades also stays with them.
How is the Shopify SAP integration done?
The six steps below cover the full setup, from version discovery through the first test order. Most of the steps happen on the SAP side, so your SAP consultant or partner has to be in the process.
Discover the version and the licenses
List which SAP version you use, whether you have an integration platform and which licenses you hold. On the enterprise version a ready package and adapter come into play, on the mid-market version an integration template; a timeline given without this discovery is not realistic.
Prepare the integration layer
The SAP-side integration component for the chosen path is installed and the secure connection between the two systems is provided. If SAP runs on your own server, the access path and the security rules have to be made clear in this step.
Create the connection details on the Shopify side
A custom app is opened from the apps section of the Shopify admin and access details are produced. Those details are entered into the integration configuration on the SAP side.
Define matching and the direction map
Write down which field products match on, what a Shopify variant maps to on the SAP side, which distribution center is opened to the store and which condition price is read from. If you sell to companies, how the customer hierarchy is met on the store side is also decided here.
Design the electronic-document layer
Because e-invoice and e-archive are not inside SAP in Turkey, decide here which layer the document comes out of, the invoice series and the tax-rate rule. Writing whose responsibility that layer is into the contract closes the side of projects that is left ownerless most often.
Verify the flow with a test order
Place an order with a single product and see that the order lands in SAP, that a business-partner record opens, that a stock movement is created and that the document comes out in the right layout. Then return the same order and also check the reverse flow.
The table below shows which Shopify records map to which counterparts on the SAP side. The names can change with the SAP version you use; the flow stays the same.
| What Shopify has | What it maps to in SAP |
|---|---|
| Order | Sales order |
| Customer | Business-partner record, used after approval |
| Product | Item card |
| Collection | Product group |
| Location | Distribution center or warehouse |
| Price | Price condition |
| B2B customer price | Customer-specific price condition |
| Shipment | Delivery document |
| Return | Return record and stock movement |
| No Shopify counterpart | e-invoice and e-archive, they run from a separate document layer |
The last row of the table is the most critical item of the project. Turkey's electronic-document layout is not inside SAP; the document comes out of a separate localization or integrator layer. Invoice series, tax rate and return-invoice behavior also depend on that layer's design, not on SAP itself.
Tell us about your catalog and current setup, and we will work out how the Shopify SAP integration should be built for your product structure. You do not need to fill in a form, reach us directly by phone, email or WhatsApp.
How is a Turkish invoice issued in SAP?
Turkey-specific e-invoice and e-archive rules are not inside SAP. This is an architectural fact, not a gap: because SAP is a global system, country-specific electronic-document obligations are met with a separate localization or integrator layer. The invoice record in SAP is an accounting record; the sealed document comes out of that layer.
The practical result of this split is a blurred ownership line. The consultant who installs SAP and the firm that builds the electronic-document layer are separate on most projects; if whose responsibility runs how far is not written in the contract, the invoice flow is left ownerless between the two sides. A large share of the problems noticed on the store's first real order come from exactly here.
The second result is that the invoice layout has to be set from the start. Invoices issued for sales made over the internet are expected to use a series different from your other invoices; the invoice must carry the web address where the sale was made, the payment method, the organization that mediated the payment, the payment date, the tax or identity number of the party that carried the goods, the ship date, a returns section and a statement that the sale was made over the internet. Those fields filling in depends on the integration reading the data from the order and carrying it to the document layer.
The third result is on the return side. Cancelling an electronic document is only possible inside a set window; after the window a return invoice is issued and the two documents are offset. Because a return is an everyday event in a store, setups that tie returns to the same flow as a cancellation do not tie at month end. It is also worth remembering that the document Shopify produces at the end of an order is not a valid invoice in Turkey: the legal document always comes from accounting.
How are SAP price conditions met in Shopify?
This is where matching loss happens most often in stores that sell to companies. In SAP, price is calculated against the customer, the contract and the condition; on the store side the counterpart is a simpler structure.
Customer-specific price does not fit one to one
In SAP the same product can be sold to different customers under different conditions. On the store side the counterpart is price lists; which customer is tied to which list, and which part of the conditions is translated into a list, is defined during setup.
The customer hierarchy is matched
In an enterprise structure more than one buyer can sit under one customer. How that hierarchy is met on the store side decides which record the order attaches to, and therefore which condition price is read from.
Stock is published by distribution center
The distinctive side of the official integration approach is that stock can be published per distribution center. That way every customer sees the quantity of the center that serves them; sending a single total makes stock that cannot be sold visible.
A new customer goes through approval
A customer record that comes from the store becomes usable on the SAP side after it is reviewed and approved. Because this step cannot be skipped, how the time between the first order and approval is explained to the customer is also a design decision in corporate sales.
The tax and amount split is set from the start
If you show prices tax inclusive in the store, how the same amount is split on the SAP side into a tax-exclusive amount and a tax line has to be decided. Otherwise a small but constant difference forms on every document and shows up in the month-end total.
On foreign-currency sales the rate policy is written down
If your store sells in more than one currency, the record enters the SAP side after conversion. If which day's rate is used and how the difference between sale and collection is tracked is not decided, reconciliation never finishes.
What happens after the order arrives?
The order is created on Shopify and the integration layer writes it into SAP. What follows is shipment, document and return steps; the six items below are the places that stick most often in those steps.
Order status decides when the transfer happens
The order is written into SAP when it reaches the status you chose. Transferring an order whose payment is not confirmed means posting an uncollected receivable; when the order is cancelled you are left with a record that has no counterpart.
No record is opened after the accounting period closes
SAP is one of the systems with the strictest period-close discipline; a backdated record cannot be written into a closed period. For an order that sits in the transfer queue at month end not to disappear silently, the queue has to raise an alert when it errors.
The same customer can open two records
When the same person arrives with a different email, a different phone or as a guest, a second record can form. Because merging is done by hand, which field identifies the same customer is decided during setup; collecting tax data in corporate sales makes that decision easier.
Cancellation and returns are separate jobs
Cancelling an order whose document has not been issued only closes the record; if the document has been issued and the cancellation window has passed, a return invoice is required. Tying the two cases to the same flow breaks the account balance.
A return puts stock back
A returned product goes back into sellable stock and that movement has to be written on both sides. If only the document is corrected and no stock movement is written, the distribution center's quantity stays short.
Shipment status is written back to the store
When the status and tracking data of the delivery document prepared on the SAP side are written to the store, the customer follows their parcel from their own order page. When this write-back is not set up, the data is carried by hand and the customer-service load grows.
If your marketplace channels also write to SAP, the same sales order opening twice from two channels and the same distribution center's stock being reserved twice is a separate risk. Catalog and commission rules on Trendyol and Hepsiburada run separately, so seeing stock, price and the order flow from a single panel makes the work easier; you can review the tool we built on the Station page.
The most common mistakes in the Shopify SAP integration
The nine headings below are the mistakes that come up most often in setup. The results look alike too: the expected flow is not in scope, the invoice side is left ownerless, or a license line appears in the middle of the project.
Treating the App Store app as a SAP integration
That app only carries products and product groups; orders, invoices, stock and the customer flow are not in scope. A store that pays a monthly fee and installs it cannot find the most critical flow.
Assuming "SAP connects ready"
A licensed SAP component sits in between on every official path. A quote given without that component in the calculation has to be rewritten in the middle of the project.
Leaving license discovery until later
If you do not hold the integration platform, the adapter or the integration framework, setup cannot start. If discovery is not done in the first step, the timeline does not hold.
Leaving the Turkish document layer outside the project
There is no e-invoice or e-archive inside SAP. When whose job that layer is is not written in the contract, the invoice flow is left ownerless between the two sides.
Writing internet sales onto the same invoice series
The series for sales made over the internet is expected to be different from your other invoices. If the document layout is not split from the start, a retrospective correction is not possible.
Trying to carry customer-specific price to the store one to one
The condition structure in SAP has no one-to-one counterpart on the store side. If which condition is translated into which price list is not defined, the customer sees the wrong price.
Sending every center's stock as a single total
Stock that cannot be sold appearing in the store leads to an oversell. Publishing stock per distribution center solves this from the start.
Not writing period close into the flow
A record cannot be opened in a closed period and waiting records are refused silently. The queue raising an alert when it errors has to be part of the setup.
Tying returns to the same flow as a cancellation
After the document is issued and the cancellation window has passed, a return invoice is required. In setups that do not split the two cases, the account balance does not tie at month end.
Three common problems and how they were solved
The three setup scenarios below show how we handled Shopify SAP integration problems we solved in stores we connected.
The installed app not carrying orders
ProblemThe store had installed an app that carried the SAP name from the App Store and started paying the monthly fee. Products were coming from the ERP to the store, but orders never landed in SAP and invoices kept being issued by hand.
CauseThe installed app was not SAP's own product and its scope was only product and product-group transfer. Orders, customers, stock and the document flow were never in scope; because the app's name contained SAP it had been treated as a full integration.
SolutionThe SAP version and licenses held were listed, and the integration was redesigned on SAP's own integration framework. The order and customer flow were tied from the store to SAP, stock and price from SAP to the store; the old app's subscription was closed.
A corporate customer seeing the wrong price
ProblemIn a store opened to dealers, some customers were seeing a higher price than they expected and some reported that no discount was applied in the cart. Prices were correct on the ERP side and the sales team was correcting the gap by hand.
CauseIn SAP, price is calculated from conditions tied to the customer and the contract; on the store side there is a price-list structure. Which customer was tied to which list, and which part of the conditions was translated into a list, had not been defined during setup.
SolutionThe match between the customer hierarchy and the price lists was written down and the part of the conditions that could be carried to the store was translated into lists. The need for hand correction disappeared, and a separate flow that runs through a quote was built for special conditions that could not be carried.
Orders that disappeared at month end
ProblemAfter month close, accounting noticed that a few orders had never existed on the ERP side. The orders were sitting in the store and collection had also been taken; where the records had stayed was not clear at first glance.
CauseOrders that landed close to midnight at month end sat in the transfer queue while the accounting period closed, and because a record cannot be opened in a closed period the queue refused those records. Because the error did not land anywhere, no one noticed.
SolutionThe queue was set up to raise an alert when it errored and a waiting list was built for refused records. Emptying the transfer before the month-end close hour was tied to a routine, and the missing records were written correctly into the next period together with the accountant.
Station is the tool we built to watch the order, stock, price and document flow from a single panel. When marketplace channels are added, the same SAP setup stays at the center.
Frequently Asked Questions
How is the Shopify SAP integration done?
Does SAP have an official Shopify connector?
Is the SAP app in the App Store enough?
Can Shopify connect to SAP directly?
How is a SAP Business One integration with Shopify set up?
Which license is required on the enterprise version?
How are Turkish e-invoices and e-archives issued in SAP?
Who should own the document layer?
Is a separate series required for internet-sale invoices?
Which information must appear on an internet-sale invoice?
Is the invoice Shopify issues enough?
Do Shopify orders land in SAP automatically?
How is multi-warehouse stock transferred from SAP to Shopify?
How do Shopify B2B and SAP customer price lists match?
How is a corporate customer hierarchy carried?
Can a new customer record be used immediately?
Why does the invoice total not match the order total?
Which rate is used on a foreign-currency sale?
Do Shopify returns land in SAP?
Can orders that arrive at month end be written into a closed period?
How do I stop two records being opened for the same customer?
Can marketplace orders also be transferred to SAP?
How long does the integration take?
What does the cost of a Shopify SAP integration depend on?
BİZİ TERCİH
EDENLERİN ARASINDA
YER ALIN...
Herkes için Shopify çözümleri üretiyoruz.
Yeni bir Shopify mağazası kurmak, mevcut mağazanızı geliştirmek, özel entegrasyonlar yapmak veya hız problemlerini çözmek mi istiyorsunuz? Biz, teknik işleri sizin yerinize çözen uzman bir Shopify partneriyiz.

Dossha
#shopify

Les Benjamins
#shopify

Nocturne
#shopify

Fellas
#shopify

Mai
#shopify

Karaca
#shopify

Milagron
#shopify

Kiğılı
#shopifySeo

Şölen
#shopify

Adell
#shopifyB2B

Ohora
#shopify

Rendrea
#shopifyBooking

Babeskin
#shopify

The New Lab
#shopify

DTF Town
#shopify

Eczaclick
#shopifySeo

Termos Dünyası
#shopify

Halı.net
#shopify

Blend-r
#shopify

Oioi
#shopifySeo

Nowshopfun
#shopify

Marie Claire
#shopify

Gaziburma
#shopify

Dünyada Kitap
#shopify
NEDEN BİZİMLE
ÇALIŞMANIZ GEREKTİĞİNİ
SİZE ANLATMAK İSTERİZ
Shopify'ı çok iyi anlıyoruz; Türkiye'de her segmentin karşısına biz olarak çıkıyoruz :)







Sadece Shopify konuşanlardan oluşan bir takım

Hey!
Bannerlarım kesik gözüküyor :(
Yardım eder misiniz, kampanya dönemindeyim.
Selam Elif!
2 dakikaya çözüyoruz.





.webp)
.webp)


