+7 708 07 07 597 Get a consultation

Integrating MoySklad with a B2B Portal: API, Webhooks and What Data Is Transferred

Integrating MoySklad with a B2B Portal: API, Webhooks and What Data Is Transferred
Contents
  1. What MoySklad provides for integration
  2. What data is transferred
  3. Webhooks instead of continuous polling
  4. API limits
  5. Custom pricing and dealer terms
  6. Stock balances
  7. Orders from portal to MoySklad
  8. Connecting with Bitrix24 and 1C
  9. Timelines
  10. Common MoySklad integration mistakes
  11. Frequently asked questions

Companies choose MoySklad when they need cloud-based inventory management without heavy infrastructure. Its open API makes connecting a B2B portal noticeably easier than connecting to a closed on-premise database. But "easier" does not mean "trivial": the API has rate limits, webhooks have their own quirks, and wholesale logic comes with requirements that MoySklad might not support.

Let's break down how the integration works, what data is transferred, and how to make it reliable.

What MoySklad provides for integration

  • JSON API for managing products, variants, counterparties, orders, documents, warehouses, and reports;
  • webhooks: MoySklad automatically notifies the external system when objects are created, updated, or deleted;
  • stock reports by warehouse;
  • price types and discounts, including terms for individual counterparties;
  • print forms of documents.

The current list of entities, parameters, and limitations is described in the official MoySklad API documentation. It is best to check the current version before designing your integration.

What data is transferred

Data Service line Mechanism
Products, variants, bundles MoySklad → portal API, webhooks on changes
Product groups and specifications MoySklad → portal API
Price types and discounts MoySklad → portal API
Inventory by warehouse MoySklad → portal stock report on schedule and upon changes
Business partners and contracts MoySklad ↔ portal API, webhooks
Customer orders portal → MoySklad API
Order statuses MoySklad → portal webhooks
Shipments, invoices MoySklad → portal API, print forms

Webhooks instead of continuous polling

Without webhooks, the portal must constantly ask MoySklad "what changed?". This consumes API limits and creates delays. With webhooks, MoySklad sends a notification on its own, and the portal retrieves only the modified object.

Things to keep in mind:

  • notifications can arrive repeatedly or not arrive at all, so you need deduplication and periodic reconciliation;
  • notifications signal only the fact of a change, so data must be requested separately;
  • the webhook handler must be constantly available and respond quickly, running heavy processing in the background.

API limits

The MoySklad API has limits on the number of requests per period and on concurrent requests. All integrations on a single account share this common limit. Therefore:

  • the portal should not query MoySklad on every user action; it works with its own copy of the data;
  • a full catalog export is needed only during initial sync and reconciliation;
  • requests are prioritized: order creation takes priority over updating descriptions;
  • if a rate limit error occurs, the request retries after a backoff delay.

We cover these limitations in detail in a separate article.

Custom pricing and dealer terms

MoySklad has price types and discount mechanics for counterparties. For the portal, you need to:

  • determine which price type and discounts apply to each dealer;
  • calculate prices on the portal using the same rules, or retrieve the final total from MoySklad;
  • verify price matching on actual orders before launch.

If your rules are more complex than MoySklad allows (for example, credit limits requiring approval or multi-tier bonuses), this logic is implemented in the portal or integration layer.

Inventory levels

Warehouse stock balances are retrieved from reports. For the portal, you typically need to:

  • show available stock accounting for reserves;
  • include only warehouses from which orders are shipped to dealers;
  • update data frequently, but within API limits;
  • for low-stock items, check available quantities at the exact moment the order is submitted.

Orders from portal to MoySklad

  1. The portal creates a customer order linked to the counterparty, contract, and warehouse.
  2. Each operation is assigned a unique key so retries do not create duplicates.
  3. MoySklad reserves items according to its rules.
  4. Order statuses return to the portal via webhooks.
  5. Shipment documents and invoices become available to the dealer in the portal.
  6. Daily reconciliation verifies that all portal orders exist in MoySklad with the correct totals.

Connecting with Bitrix24 and 1C

  • Bitrix24: an order from the portal creates an activity or deal for the sales rep, and statuses from MoySklad update the CRM.
  • 1C:Accounting: documents from MoySklad are transferred to accounting, and mutual settlement balances for the dealer portal are pulled from 1C.

If you have more than two systems, it is best to route all data exchange through a single integration layer rather than connecting each system directly to every other.

Timelines

Stage Estimated timeline
Catalog, prices, and stock balances on the portal several weeks
Orders and statuses plus several weeks
Documents, limits, roles 1-2 months
Connecting with Bitrix24 and 1C depends on the setup

Common MoySklad integration mistakes

  • the portal requests prices and stock balances from MoySklad on every page load and hits rate limits;
  • webhooks are processed synchronously, the handler times out, and notifications are lost;
  • there is no reconciliation, and missed changes accumulate for weeks;
  • counterparties are created on both the portal and in MoySklad without mapping;
  • multiple services connect to the account independently and interfere with each other.

Frequently asked questions

Are there ready-made modules to connect MoySklad with a website?

There are ready-made integrations for standard online stores. For a dealer portal with custom pricing, credit limits, and documents, you usually need a custom integration.

Can you work only through webhooks?

No, you also need regular reconciliation, because individual notifications can get lost.

How long does the integration take?

Basic syncing of catalog, prices, stock balances, and orders takes several weeks. A full setup with documents, limits, and CRM takes longer.

What if the catalog is very large?

You need a local copy of the data on the portal side, delta updates, and a request scheduler that respects API limits.

Can you show dealers documents from MoySklad?

Yes, via printable document forms that the portal retrieves via API and displays in the dealer portal.

Next step

Yashcher builds B2B portals and dealer portals powered by MoySklad with reliable API and webhook sync, audit logging, and daily reconciliation.

About the service: Business automationMessage us on WhatsApp

Leave your contact details and we’ll get in touch within 15 minutes during business hours.