If the website, warehouse and sales channels work separately, the business quickly receives errors: the website displays a product that is no longer available, the price differs from the registered price, the order does not get processed, and the marketplace sells an item that has already been picked up through the online store.
Correct integration with MoySklad should link the website, inventory accounting, stock levels, prices, orders, statuses, CRM and marketplaces into one understandable process. In this article, we will look at what data needs to be synchronized, where errors most often appear, and what to prepare before development.
Why does a website need integration with MoySklad
While there are few orders, you can manage the online store manually: update prices in the admin panel, check stock levels in tables, transfer orders to the manager and check availability before shipping. But as sales increase, the manual process begins to break down.
Integration solves not just one technical problem, but several operational problems at once. The site receives current products, prices and stock. Orders go into the accounting system. Managers see a clear structure of the order. The warehouse understands what needs to be collected and shipped. The client receives status, and the business is less dependent on manual data copying.
Integration is especially important if the store has:
- several warehouses or shipping points;
- rapidly changing stock levels;
- different prices for the site, wholesale, retail or promotions;
- orders from the website and marketplaces simultaneously;
- CRM or Bitrix24 for managers;
- the need to reserve goods after ordering;
- manual errors when updating prices, stock levels and statuses.
The main goal of integration is not to “connect MoySklad to the site,” but to remove discrepancies between systems. If the website, warehouse and marketplaces show different data, the business loses orders, customer trust and team time.
What role does MoySklad play in e-commerce
In an e-commerce project, MoySklad usually acts as the inventory and accounting system. It stores products, variants, prices, stock levels, warehouses, documents, orders and movements. The website remains the storefront and ordering point, while marketplaces are separate sales channels.
The error occurs when the system roles are not separated. For example, prices change both on the website and in MoySklad. The remainder is edited manually in the admin panel. Orders come from the website, but the manager re-creates them in accounting. As a result, the data begins to diverge, and the team ceases to understand where the current version is.
Before integration, you need to determine what each system is responsible for. The website is responsible for the interface, customer catalog, shopping cart and ordering. MoySklad is responsible for accounting for goods, stock levels, prices, documents and warehouse operations. CRM is responsible for the client, transaction, communications and manager’s work. Marketplaces are external sales channels that should also participate in the general logic of stock levels and orders.
What data is transferred between the site and MoySklad
The basis of integration is data exchange. Typically, the website and MoySklad synchronize products, prices, stock levels, orders and statuses. In more complex projects, counterparties, documents, variants, bundles, warehouses, reserves and data for CRM are added.
| Data | Usually come from | Usually go to | What is important to check |
|---|---|---|---|
| Products | MoySklad | Website | SKUs, variants, categories, properties and images |
| Prices | MoySklad | Website | Price types, promotions, discounts, currencies and display rules |
| Stock levels | MoySklad | Website | Warehouses, reserves, available quantity and update frequency |
| Orders | Website | MoySklad | Customer, goods, delivery, payment, comments and order contents |
| Statuses | MoySklad / CRM | Site / client | Processing, assembly, shipping, cancellation and return status |
It is important not just to list the data, but to describe the rules. What is considered the main source of price? When is the item reserved? What happens if the balance changes between adding to cart and checkout? How is cancellation processed? Where does the order go if MoySklad is temporarily unavailable?

Stock levels, warehouses and reserves
Stock levels are one of the most sensitive areas of integration. The error here is immediately visible to the client: the product is available on the site, but in fact it does not exist; or vice versa, the product is in stock, but the site does not allow you to buy it.
You cannot limit yourself to simply displaying the total quantity. For a real store, warehouses, reserves, available quantities, goods on the way, different sales channels and update speed are important. If the order came from the website, the product may need to be reserved. If the same product is sold on the marketplace, you need to understand how not to sell the same balance twice.
When designing an exchange, you need to decide which stock levels to show to the client: exact quantity, “in stock” status, availability by warehouse or availability for a specific region. For some stores, it is enough to update stock levels on a schedule. Fast-moving items may require more frequent synchronization or availability checks at checkout.
It is worth describing the reserve rules separately. When is an item considered reserved: when added to the cart, after placing an order, after payment, or after confirmation by the manager? If this is not recorded, there will be sales in excess of the balance and a conflict between the site, warehouse and marketplaces.
Prices, discounts and different sales channels
Prices in an online store are often more complex than one number on a product card. A business may have retail prices, wholesale prices, promotions, discounts, personal conditions, prices for different groups of clients and separate rules for marketplaces.
If you do not determine the source of the price, the site quickly begins to live separately from accounting. The marketer changes the price in the admin panel, the manager sees a different price in MoySklad, the client buys at a third price on the marketplace. Such discrepancies are the most difficult to correct after launch, because they affect sales, documents, and communication with the client.
Before integration, you need to describe what prices are transmitted to the site, what rules apply to promotions, where discounts are calculated and how prices are displayed for different customers. For B2B projects, it is important to take into account negotiated prices, personal conditions and client authorization in the customer portal.
For marketplaces, prices may follow a separate logic. There are commissions, site promotions, minimum prices, discounts and category restrictions. If the site and marketplaces use the same inventory, but different pricing rules, this must be taken into account in the exchange architecture.
Orders from the site: what should go to MoySklad
An order is not only a list of goods. For processing, we need customer data, order contents, prices, discounts, delivery method, payment method, comments, payment status, order source and service data for the manager.
Good integration transfers the order so that it can be processed without manually restoring the context. The manager must understand what the client ordered, at what price, how he wants to receive the goods, whether payment was made, whether items need to be reserved, and what actions are required next.
Separately, you need to describe changes to the order. The client can cancel the order, the manager can change the composition, the product may run out, delivery may change. If the exchange only takes into account the initial creation of an order, but not subsequent changes, the data quickly diverges.
For reliability, error handling must be provided. If the order has not been sent to MoySklad, the team should see this in the logs or notification. We cannot allow a situation where the client received confirmation on the website, but the order actually did not appear anywhere.
Website, MoySklad and marketplaces
When a business sells simultaneously through a website and marketplaces, integration becomes more difficult. There are different order channels, different price rules, different statuses, different shipping times and the risk of overlapping stock levels.
The problem is not that there are many channels, but that they do not have a single logic. The same product can be available on the website, Ozon, Wildberries, Yandex Market and in an offline location. If the balance is not distributed across channels or is not updated quickly enough, one product can be sold in several places at the same time.
For marketplaces, you need to separately think about what data is synchronized: product cards, prices, stock levels, orders, statuses, documents, returns and commissions. You don't always have to build everything through a website. Sometimes MoySklad works as a central system, and the website and marketplaces are connected to it as separate channels.

How to link the site, MoySklad and CRM
MoySklad is responsible for accounting, but does not replace full-fledged CRM logic. If managers work with clients, deals, calls, tasks and repeat sales, a separate CRM layer is usually needed. This could be Bitrix24 or another CRM system.
In this scheme, the site accepts an order or request, MoySklad is responsible for goods, prices, stock levels and documents, and CRM helps the manager manage the client. It is important that the systems do not duplicate each other. If the same client is created in several places, and the order lives separately in the website, CRM and accounting, the team quickly loses control.
Before development, you need to decide where the primary order goes, where the manager communicates, where the payment is recorded, where documents are created and where the status changes. The more precisely the role of each system is described, the less manual work after launch.
Typical integration errors with MoySklad
Most problems arise not because of the API, but because of poor preparation of data and scripts. If you do not describe the rules of exchange, technically working integration will still create errors.
| Error | Consequence | How to avoid |
|---|---|---|
| No master system for data | Prices, products and stock levels differ between the site and accounting | Assign a source for products, prices, stock levels and orders |
| Reserves are not taken into account | The store sells products that are no longer in stock | Describe the available balance and the moment of reservation |
| Marketplaces are not included in the scheme | Stocks and prices vary across sales channels | Agree on rules for the website, marketplaces and warehouse |
| Order statuses are not described | Client and manager see different states | Make a status map before development |
| No logs or notifications | Exchange failures remain invisible | Log requests, responses, errors and retries |
Invisible errors are especially dangerous. If the exchange breaks but no one is notified, the business continues to accept orders on outdated data. Then the problem has to be resolved through calls to customers, order cancellations and manual corrections.
What to prepare before integration
Before development, you need to collect not only access credentials, but also business rules. Technical integration without business logic almost always leads to rework.
Minimum amount you need to prepare:
- list of systems: website, MoySklad, CRM, marketplaces, delivery, payment;
- structure of products, SKUs, variants and categories;
- rules for prices, discounts and different sales channels;
- warehouses, reserves and available balance rules;
- script for transferring orders from the site;
- order status card;
- rules for processing cancellations, returns and changes;
- requirements for logs, notifications and retries;
- responsible staff for checking the exchange after launch.
The more accurately the data and processes are described, the easier it is to choose the exchange method: REST API, webhooks, scheduled synchronization or a combined scheme. To integrate with MoySklad, a combination of approaches is most often needed, because products, stock levels, orders and statuses have different criticalities and different update frequencies.
Output
Integration of the site with MoySklad should link the site, warehouse, orders, prices, stock levels, CRM and marketplaces into one managed process. This is not just an exchange of data, but a way to remove manual work, reduce errors and make sales more predictable.
Good integration begins with the rules: where goods are stored, who controls prices, how stock levels are calculated, when a reserve is created, where the order goes, what statuses the client sees and what happens in the event of an exchange error.
DevAstro designs and configures API integrations for online stores: connects sites with MoySklad, CRM, Bitrix24, 1C, payment, delivery, analytics and marketplaces.
If you need to connect your site with MoySklad without chaos in stock, prices, orders and sales channels, look at the direction of API integrations. For a complex e-commerce project, an online store development service is also suitable.
FAQ
Which system should own products and stock?
MoySklad usually owns product identity, variants, warehouse stock and base prices. The website can own SEO copy and landing pages, while marketplace-specific fields remain in the relevant channel or connector.
How can overselling across channels be reduced?
Define reservation timing, safety stock, cancellation release and update frequency. High-risk products may need channel limits or event-driven stock updates in addition to regular reconciliation.
How are marketplace orders imported safely?
Every order needs a stable external ID and source channel. Import must be idempotent, preserve discounts and delivery data, and update the same order when a request is retried.
What should integration monitoring show?
Operations should see the last successful exchange, queue depth, rejected entities, stock mismatch samples and the responsible owner. A raw HTTP error without business context is not enough.
Can MoySklad integration be introduced gradually?
Yes. Launch product mapping first, then prices and stock, followed by orders and statuses. Keep acceptance checks and a temporary fallback for each stage until production data is stable.
What affects the project estimate?
The estimate depends on catalog structure, variants, warehouses, price types, number of channels, order rules, API limits, reconciliation and support. Real sample data is needed for a reliable estimate.






