{"section":"tutorials","requestedLocale":"en","requestedSlug":"fulfillment-logistics-vtex","locale":"en","slug":"fulfillment-logistics-vtex","path":"docs/en/tutorials/shipping/logistics-overview/fulfillment-logistics-vtex.md","branch":"main","content":"Logistics or fulfillment is the process of planning and executing the transportation and storage of merchandise; and shipping orders to customers. It is directly related to the customer experience and to the store's business strategy, therefore, your [logistics configuration](/en/docs/tutorials/fulfillment-logistics-vtex#configuring-the-logistics-process) is critical to your business. \n\nThe VTEX platform allows you to register and control your inventory, manage shipping rates, control item availability, and track deliveries. \n\n> ℹ️ If you have not made the first steps in the **Shipping** module, check out this complementary content: The article [Getting started with Logistics](/en/docs/tracks/getting-started-with-logistics). Our [Logistics Glossary](/en/docs/tutorials/logistics-glossary), in which you can find the definitions of logistics terms used at VTEX. The logistics settings available via [API](https://developers.vtex.com/vtex-rest-api/reference/logistics-api-overview).\n\nTo find out which logistics configurations are necessary and how to perform them, you must first understand the steps in the purchase flow of a product.\n\n1. The process starts at the storefront: the customer selects the desired products and proceeds to checkout.\n2. At checkout, the customer enters their location, and the platform checks the available shipping methods. At this stage of the purchase process, the platform calculates the best [shipping strategy](/en/docs/tutorials/shipping-strategy) for the customer. To do this, VTEX: \n    * Checks the availability of the items and where they will be picked up ([warehouse](/en/docs/tutorials/warehouse));\n    * Selects the [loading dock](/en/docs/tutorials/loading-dock) and the time when the carrier must collect the items;\n    * Analyzes the [shipping policies](/en/docs/tutorials/shipping-policy) that meet the customer's shipping conditions. Through the shipping policies, the platform analyzes the carriers that can deliver the order and the available [pickup points](/en/docs/tutorials/pickup-points). \n3. After the calculation, the platform displays the delivery methods available to the customer (with their respective delivery times and prices). The customer chooses between pickup and delivery and places the order. \nOnce the order is placed, the [reservation of the products is authorized](/en/docs/tutorials/how-does-reservation-work#authorized-reservation). With this, the platform ensures that the items cannot be sold again. \n\n4. Once the [payment](/en/docs/tracks/how-the-payments-module-works) is confirmed, the [reservation is also confirmed](/en/docs/tutorials/how-does-reservation-work#confirmed-reservation).\n5. After the payment is confirmed and the [grace period for order cancellation](/en/docs/tutorials/setting-the-grace-period-for-order-cancellation) expires, the platform waits for the retailer to handle the items. When the retailer [starts handling the order](/en/docs/tutorials/moving-order-to-start-handling-shipping), they indicate to the platform that the order items and their invoices are being prepared. From this stage, the [reservation is acknowledged](/en/docs/tutorials/how-does-reservation-work#acknowledged-reservation).\n6. The store uploads the order [invoice](/en/docs/tracks/invoicing-an-order) on the platform.  \n7. The shipping process begins:\n    * For orders that are shipped to the customer's address (delivery), the store sends the packages to the [loading dock](/en/docs/tutorials/loading-dock) where they will be collected by the [carrier](/en/docs/tutorials/carriers-on-vtex). The carrier (chosen through the [shipping policies](/en/docs/tutorials/shipping-policy)) delivers the order.\n    * For orders that are shipped to [pickup points](/en/docs/tutorials/pickup-points) (pickup), the store must make the packages ready for customer pick up. To do this, the packages are collected from the [warehouse](/en/docs/tutorials/warehouse) and transported to the pickup point. Transportation from the loading dock to the pickup point is configured using a [shipping policy](/en/docs/tutorials/shipping-policy).\n\n8. After invoicing and shipping, the store is responsible for updating the inventory, which also means removing the items from inventory.\n\n> ℹ️ Please note that the shipping process depends on the configuration made on the platform. Here, we present the scenarios for each type of shipping (delivery and pickup), but there are other possible flows in the shipping process. For example, when the customer chooses pickup and the selected pickup point is the warehouse, there is no need to transport the packages.\n\n![Envio EN](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/en/tutorials/shipping/logistics-overview/fulfillment-logistics-vtex_1.svg)\n\n## Configuring the logistics process\n\nThe logistics process must be configured according to your store needs. These configurations are made in the **Shipping** module. Check out the features available in the module and how each one impacts your business:\n<table class=\"w-100 center mv7 bb b--gray\">\n    <thead class=\"w-100 center mv7 bb b--gray\">\n  <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">[Shipping Strategy](/en/docs/tutorials/shipping-strategy)](/en/docs/tutorials/shipping-strategy)\n   </td>\n   <td class=\"t-body pa5\">Manage warehouses, loading docks, and shipping policies. Based on the configured shipping strategies, the platform calculates the shipping possibilities and displays them to the customer at checkout.\n<body>\n<ul>\n<li>[Warehouse](/en/docs/tutorials/warehouse);</li>\n<li>[Loading dock](/en/docs/tutorials/loading-dock);</li>\n<li>[Shipping policy](/en/docs/tutorials/shipping-policy).</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Delivery capacity](/en/docs/tutorials/managing-delivery-capacity)<span>\n   </td>\n   <td class=\"t-body pa5\">Manage scheduled deliveries. You can track deliveries that are already scheduled and check the delivery periods that are still available.\n<body>\n<ul>\n<li>[Scheduled delivery](/en/docs/tutorials/scheduled-delivery).</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Shipping rates](/en/docs/tutorials/shipping-rates)</span>\n   </td>\n   <td class=\"t-body pa5\">Manage your store's shipping costs.\n<body>\n<ul>\n<li>[Managing shipping rates](/en/docs/tutorials/managing-shipping-rates);</li>\n<li>[Total shipping cost](/en/docs/tutorials/total-shipping-cost);</li>\n<li>[Additional shipping cost](/en/docs/tutorials/additional-shipping-costs).</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Inventory management](/en/docs/tutorials/managing-stock-items)</span>\n   </td>\n   <td class=\"t-body pa5\">Manage the availability of the items in the inventory. You can track item activity and reservations.\n<body>\n<ul>\n<li>[Product reservations](/en/docs/tutorials/how-does-reservation-work#how-to-track-reservation-status);</li>\n<li>[How reservations work](/en/docs/tutorials/how-does-reservation-work)<span>.</span>\n</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Shipping simulator](/en/docs/tutorials/shipping-simulation)</span>\n   </td>\n   <td class=\"t-body pa5\">Shipping simulation tool that allows you to reproduce shipping scenarios (item availability, types of delivery and pickup). \n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Geolocation shipping](/en/docs/tutorials/registering-geolocation)</span>\n   </td>\n   <td class=\"t-body pa5\">Add delivery addresses using latitude and longitude information.\n\nThis feature is typically used for addresses in rural and industrial areas or in risk areas (where it is necessary to exclude certain delivery areas within a region).\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Holidays](/en/docs/tutorials/registering-holidays)</span>\n   </td>\n   <td class=\"t-body pa5\">Add days that will not be considered business days in your store. \n\nDays registered as holidays are not considered in the delivery time of orders.\n<body>\n<ul>\n<li>[Add holiday](/en/docs/tutorials/registering-holidays)</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\"><span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Configurations</span>\n   </td>\n   <td class=\"t-body pa5\">Manage specific configurations of logistics routes. These configurations allow you to detail the delivery conditions that will be available to the customer. The possible configurations in this section are:\n<body>\n<ul>\n<li>[Additional shipping cost](/en/tutorial/adicionais-de-frete--2vqGwMn0LabkOHY6zSHYNV?&utm_source=autocomplete#adicional-de-frete): extra cost charged on top of the [shipping rate](/en/docs/tutorials/shipping-rates);</li>\n<li>[Shipment group](/en/tutorial/como-funciona-a-remessa): a group of bundled packages shipped together.</li>\n<li>[Modality](/en/tutorial/como-funciona-o-modal): type of items accepted for delivery.</li>\n<li>[Cargo splitting](/en/tutorial/como-funciona-a-divisao-de-carga): how products must be split for delivery.</li>\n<li>[Critical inventory level alert](/en/tutorial/configurar-o-alerta-de-estoque-critico): an alert for when the quantity of items is below the expected level.</li>\n</body>\n</ul>\n   </td>\n  </tr>\n   <tr class=\"bb b--muted-3\">\n   <td class=\"t-body pa5\">[<span class=\"t-body c-on-base pa2 mw6 br2 bg-muted-4\">Pickup points](/en/docs/tutorials/pickup-points)</span>\n   </td>\n   <td class=\"t-body pa5\">Manage pickup points. With this feature, stores can allow customers to pick up their orders at physical pickup points.\n<body>\n<ul>\n<li>[Configuring pickup points](/en/tutorial/configurar-pontos-de-retirada-pickup-points)</li>\n</body>\n</ul>\n   </td>\n  </tr>\n</table>"}