Magento 2 SAP Business One Integration: How to Synchronize Orders Between The Two Systems
Today, we continue our exploration of one of the leading providers of cloud-based and local ERP and CRM services. This time, our attention is captured by orders and the way merchants can transfer them from Magento 2 to SAP Business One. The ERP system is famous for a wide range of solutions aimed at many industries. It delivers innovative and intelligent tools that simplify and automate numerous business processes. However, you cannot just take Magento 2 orders and move them to SAP Business One. The straightforward Magento 2 SAP Business One integration requires some work. Let’s see how the corresponding entity is represented in both systems and proceed to the section that describes how to import/export orders between Magento 2 and SAP Business One.
SAP Business One Integration Add-on for Magento 2
Table of contents
Magento 2 Orders
The Orders workspace of Magento 2 contains your current orders listed in descending order. Each row in the grid includes an order record and offers data per column, representing the corresponding attributes. The grid lets you not only view existing orders but also edit them as well as create new ones.
Every time a customer places an order, Magento 2 creates a corresponding sales order that acts as a temporary record of the transaction. Its initial status is “Pending.” Note that it is possible to cancel it at any time before the payment is processed. The payment confirmation starts a new chapter in the Magento 2 order management routine: the order can be invoiced and shipped.
In Magento 2, you invoice an order after receiving a payment. Note that the platform relies on payment methods that generate an invoice automatically. It is only necessary to authorize and capture the cost. Depending on the method chosen, different invoicing options are required.
When all the necessary data is collected, and the invoice is generated and submitted, Magento 2 sends its copy to a customer.
After that, When the shipment details are provided, it is possible to book the shipment and print the packing slip and shipping label.
When all these tasks are complete, you can ship the package. Magento 2 notifies a customer and provides a tracking number (if the carrier supports this functionality). Next, the shipment can be tracked from the customer’s account.
The corresponding order record is stored in the Magento 2 backend. But what happens in SAP Business One?
SAP Business One Order Management
In SAP Business One, a sales order is also considered a commitment from a customer (or lead) to buy a product or service. The system uses this document to plan production or purchase orders. Depending on various business conditions, it is possible to determine whether or not a sales order is a legally binding document.
Note that creating a sales order in SAP Business One does not post value-related changes in the accounting system. However, the system lists ordered quantities as reserved for the customer. Ordered quantities are available in various SAP windows and reports, for instance, the Inventory Status report. As a result, you can effortlessly optimize transaction ordering and stock holding as well as be sure that customer requirements are satisfied.
The Sales Order screen of SAP Business One is available under Sales -> A/R -> Sales Order. It represents the point at which a sales opportunity has been agreed on all or some of the terms in a sales quotation, which, in turn, gathers information and drives a buyer’s interest in purchasing products and services.
While a sales quotation is not a legal binding document, a sales order represents a customer’s commitment to purchase your products. Thus, according to SAP Business One, it can be a legally binding document. It leads to the following consequences: a sales order makes a buyer liable for the goods and services they order.
Submitting a sales order in SAP Business One requires three pieces of data: customer, item, and quantity. When it comes to items that are already available in your inventory, a price is automatically calculated depending on the amount and discounts.
As we’ve already mentioned, once a new sales order appears in the system, the corresponding inventory items are reserved for that customer. The status of inventory items is available in an Inventory Status report. You need to generate it manually to see all the available data.
When it comes to services, the situation differs a little bit. Not only the three pieces of information are required but also a description of the service and its G/L Account assignment.
When it comes to creating sales documents in SAP Business One, you should follow this algorithm:
- Visit the SAP’s Main Menu.
- Select Sales – A/R and choose a document.
- Specify a customer code, name, and other information.
- Go to the Contents tab to specify whether it is a service or item. Provide data to the remaining fields.
- Configure the Logistics and Accounting tabs.
- Now, you can click Add and confirm the system message to generate the sales document.
However, there is a much more straightforward way to do that. You only need to synchronize Magento 2 and SAP Business One, transferring the order to the latter.
How to Synchronize Orders Between Magento 2 and SAP Business One
As you probably know from other similar materials, it is impossible to sync data between Magento 2 and external systems automatically if you use its default tools. Due to the individual approach to the way information is stored in both environments, you always need to apply lots of modifications to Magento 2 files before moving them to SAP Business One. But there is a robust time-saver, called SAP Business One Integration Add-on for Magento 2.
The tool streamlines the SAP API to deliver the most efficient data transfers. As a result, you freely synchronize order data between Magento 2 and SAP Business One.
Transfer orders from Magento 2 to SAP Business One as follows:
- Install SAP Business One Integration Add-on for Magento 2 – your way to the perfect Magento 2 SAP Business One integration.
- specify orders as the entity you want to move.
- Choose the frequency of transfers and configure other parameters to make your business journey cloudless and seamless.
Now, we’d like to draw your attention to each backend section used in the Magento 2 SAP Business One migration.
General Settings
Please turn on the job, type its title, choose a frequency of updates (a predefined or custom interval), and specify a language (Locale).
Export Behavior
Choose SAP Order as your File Format. Next, export orders with all order items. Activate Process magento only entities if you need to process records created on the Magento side.
Use Order Before Save while saving orders. If the order is held on the Magento side, the particular “magento_root” attribute gets the “1” value. Next, the list of orders with these attribute values will be moved to SAP.
If you need to register imported orders as ones created in Magento 2, apply the corresponding settings in the job to trigger the event.
Export Settings
Now, let’s proceed to the Export Settings tab. It works relatively standard: specify Orders as the exported entity.
Attribute Mapping
As for attribute mapping, it is also a part of the Magento 2 SAP Business One integration. Choose a Magento 2 attribute and set an SAP Business One replacement in front of it. Repeat these steps until all unsupported attributes are mapped.
Export Source
The export source configuration looks as follows:
We currently use the SAP DI API protocol to implement the Magento 2 SAP Business One integration. Specify the following parameters on the API endpoint:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:log="LoginService"> <soapenv:Header/> <soapenv:Body> <log:Login> <log:DatabaseServer>222.22.22.22</log:DatabaseServer> <log:DatabaseName>db</log:DatabaseName> <log:DatabaseType>10</log:DatabaseType> <log:CompanyUsername>name</log:CompanyUsername> <log:CompanyPassword>pwd</log:CompanyPassword> <log:Language>3</log:Language> <log:LicenseServer>222.22.11.20:30000</log:LicenseServer> </log:Login> </soapenv:Body> </soapenv:Envelope> |
The form on the Export Source tab lets you specify all these data. Besides, you need the API endpoint URL that usually has a following look:
1 |
http://222.22.11.20/B1WS/Service.asmx |
The request created on the side of Magento 2 and sent to SAP Business One causes a session similar to the following one:
1 2 3 4 5 6 7 8 9 10 |
<?xml version="1.0"?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"> <env:Body> <LoginResponse xmlns="http://www.sap.com/SBO/DIS"> <SessionID>83C859D1-8E94-4159-9CC8-CA681F482765</SessionID> </LoginResponse> </env:Body> </env:Envelope> |
Note that we use the SessionID parameter in requests to the SAP Business One APIs.
That’s it! After transferring orders from Magento 2 to SAP Business One, you can also move the following entities:
- Customers, including account information, contacts, and addresses.
- Customer groups.
- Products with inventory data and price lists with tier and special prices.
- Various B2B Entities:
- Quotes and negotiable quotes;
- Companies;
- Requisition lists;
- Shared Catalogs.
If necessary, we can customize the SAP Business One Integration Add-on for Magento 2 to move other entities. As for the Improved Import & Export Magento 2 module, it offers even more ample opportunities. The extension will help you establish numerous other connections with the following features.
Magento 2 Integration with Other Systems
The Improved Import & Export module not only enables the Magento 2 SAP Business One integration but also lets you transfer data between your e-commerce website and any external systems. It is also possible to simplify other business connections with the aid of corresponding add-ons: Banggood Dropshipping Add-on, WooCommerce Migration Add-on, MS Dynamics Integration Add-on, etc. As for the basic functionality of the plugin, it is illustrated with the help of the following features.
Automated Data Transfers
The Improved Import & Export extension enables automated data transfers. You configure an integration once, and the module does all the work for you. It can automate data transfers in two different ways. Firstly, you dial with cron-based schedules. The data flow between Magento 2 and SAP Business One is controlled by a predefined interval you choose or create manually, as shown below:
Secondly, a system of rules is under your disposal. You specify conditions. When they are met, the extension starts a data transfer. Thus, the information is synced in real-time.
Mapping
Automated mapping is your number one time-saver when it comes to data transfers between Magento 2 and any external platforms. The Improved Import & Export extension offers numerous features in this area that simplify daily chores associated with integrations. You no longer need to edit the provided data files neither before importing them into your e-commerce storefront nor prior to transferring to external systems. The mapping features that automate the Magento 2 SAP Business One integration and numerous other connections are:
- Presets. You just need to select a predefined scheme suitable for your integration to map attributes automatically. Thus, you apply the necessary modifications to order data within a few clicks, while no editor is used;
- Manual Matching. Still, you can map attributes right in the Magento 2 backend manually;
- Attribute Values Mapping. Matching attribute values is another opportunity introduced in our extension. You can do that right in your Magento 2 admin. Thus, preparing data for the Magento 2 SAP Business One integration has never been easier;
- Attribute Values Editing. You can also leverage editing rules to combine or merge values attribute values. Adding suffixes and prefixes to numerous records in bulk is possible;
- Filters. Send order data to SAP Business One that is required. Create filters to narrow down the selection of attributes and values you move;
- Category Mapping. While transferring products to Magento 2, leverage this feature to place items to a particular place in your catalog. You can even create new categories during the transfer;
- Attributes On The Fly. Generate attributes and values that are not available in a data file but are required by Magento 2.
Extended Connectivity Options
While Magento 2 works with CSV/XML files only, the Improved Import & Export Magento 2 extension adds support for ODS, JSON, and Excel standards as well as several archive types. Thus, you no longer need to convert data files to CSV before importing them into Magento 2. Use our module to leverage a more comprehensive selection of file formats. Besides, you can choose various data sources, such as a local or remote server, cloud storage, direct file URL downloads, and direct Google Sheet transfers. The latter is shown below:
Last but not least, the Magento 2 SAP Business One integration and other complex connections are based on APIs. Thus, you eliminate the common use of data files and entirely automate the synchronization. For additional information about the Magento 2 SAP integration and order transfers, follow the links below and contact our support:
Get Improved Import & Export Magento 2 Extension
SAP Business One Integration Add-on for Magento 2