{"section":"tutorials","requestedLocale":"en","requestedSlug":"integration-guide-for-marketplaces-marketplace-non-vtex","locale":"en","slug":"integration-guide-for-marketplaces-marketplace-non-vtex","path":"docs/en/tutorials/integrations/integrations-overview/integration-guide-for-marketplaces-marketplace-non-vtex.md","branch":"main","content":"> ⚠️ Check out the updated version of this [marketplace integration guide](https://developers.vtex.com/vtex-developer-docs/docs/external-marketplace-integration-guide) in our Developer Portal. \n\nThis document assists in integrating a non-VTEX-hosted Marketplace with a VTEX-hosted Seller.\n\nThe actions required to perform this integration on the Marketplace side can be divided into two blocks:\n- ** A) ** Actions regarding __catalog__ updates (change in catalog, price or SKU inventory);  \n\n- ** B) ** Actions regarding the sending and processing of __orders__ (cart simulation, order submission, dispatch authorization, receipt of invoice, carrier tracking and cancellation).\n\nIn this article, you get an overview of the process of integrating both blocks, as well as access to the links with the each action's specific step-by-step.\n\n> **Some Concepts**\n**Seller** - Product owner, responsible for fulfillment, i.e. for complying with SKU delivery.<br/> \n**Marketplace/Affiliate** - Window display owner (where the end customer sees the product), responsible for displaying and selling the SKU.<br/> \n**SKU** - Item to be exchanged and sold between Marketplace and Seller.<br/> \n**Trade Policy** - Product assortment, pricing and logistics settings that determine the characteristics of a sales channel.<br/> \n**Endpoint** - Access point for an internet service, service ready to receive a request and return a reply.<br/> \n**MarketplaceServicesEndpoint** - Access point where VTEX Sellers give order information to the Marketplace, such as invoice and the order tracking code.<br/> \n\n## A) Flow referring to Catalog updates\n\n- Within the VTEX-hosted store (*Seller*), an *affiliate* (ie **Marketplace**) will be added, affiliate who is interested in receiving the catalog and SKU updates.  \n\n- The **Marketplace** must implement an endpoint where it will receive  notifications about any price, inventory or catalog changes from the seller.  \n\n- In VTEX *Seller*, each time a SKU marketed by **Marketplace** undergoes a price, inventory or catalog change, the affiliate notification endpoint will be called.  \n\n- When the **Marketplace** is notified by the *Seller* that a SKU has changed, the **Marketplace** should check whether it currently sales that SKU.\n\n> if yes: the **Marketplace** uses the Catalog's API to get and save the SKU data from the Seller.  \n> if no: the **Marketplace** uses the Catalog's API to get the SKU data from the Seller and then decide whether that data will be included in the store or not.\n\n### API REST - Actions pursuant to Catalog updates\n\n1) Marketplace receives notifications on price, inventory or catalog changes.  \n\n2) Marketplace searches for Seller's SKU data using the Catalog's API.   \n\n3) Marketplace searches for SKU price, inventory and shipping data using the Fulfillment API.  \n\n> ℹ️ For more information, see the documentation for developers [External Marketplace](https://developers.vtex.com/vtex-rest-api/docs/external-marketplace-integration-guide).\n\n## B) Flow referring to Order sending and processing\n\nThe integrations flow referring to the shipping and processing of orders can be divided into 3 stages, each with its specific actions:\n\n### Cart Simulation\n- Products are either added or to the **Marketplace** cart or changed in the cart.    \n\n- **Marketplace** needs to simulate the cart to check the *Seller's* price and inventory. \n\n> OBS: when the client proceed to checkout, another cart simulation must be made.  \n\n### Order sending and shipping authorization\n- Order is closed in **Marketplace**.    \n- **Marketplace** adds the order to the *Seller's* endpoint.  \n- Order payment is completed in the **Marketplace**.   \n- **Marketplace** calls the *Seller's* endpoint to authorize the order's dispatch.  \n\n### Implementation of Marketplace Services Endpoint Actions \n\n- *Seller* calls the *Marketplace Services Endpoint* to perform three possible final actions:  \n- Give invoice details.  \n- Give the carrier tracking code.  \n- Submit cancellation request.  \n\n### API REST - Actions referring to Order shipping and processing\n\n1) Cart simulation.  \n2) Place order with the Seller.  \n3) Authorize order dispatch with the Seller.  \n4) Report Invoice.  \n5) Report carrier tracking.  \n6) Submit cancellation request.  \n\n> ℹ️ For more information, see the documentation for developers [External Marketplace](https://developers.vtex.com/vtex-rest-api/docs/external-marketplace-integration-guide)."}