{"id":265614,"date":"2020-08-29T13:42:28","date_gmt":"2020-08-29T13:42:28","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=265614"},"modified":"2026-09-11T10:20:46","modified_gmt":"2026-09-11T10:20:46","slug":"laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/","title":{"rendered":"User Guide for Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping"},"content":{"rendered":"\n<p><a href=\"https:\/\/store.webkul.com\/laravel-multi-tenant-saas-table-rate-shipping.html\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping<\/strong><\/a> module allows every tenant and their sellers to set custom superset rates and shipping rates from their own dashboard.<\/p>\n<!-- \/wp:post-content -->\n\n<!-- wp:paragraph -->\n<p>First, Multi-Tenant Marketplace Table Rate Shipping calculates the shipping from the destination country, region, zip code and product weight.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Moreover, every seller in the cart contributes their own share of the shipping cost.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Every superset, superset rate and shipping rate belongs to the tenant company that created it. As a result, one tenant never sees or uses the shipping data of another tenant.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Moreover, the module builds straight on the <a href=\"https:\/\/store.webkul.com\/laravel-multi-vendor-marketplace.html\" target=\"_blank\" rel=\"noreferrer noopener\">Laravel eCommerce Marketplace<\/a> seller structure of <a href=\"https:\/\/bagisto.com\/en\/\">Bagisto<\/a>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In addition, the tenant and the seller can both upload shipping information through CSV files, including product weight, zip code range, price, alphanumeric zip codes and shipping type.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>This plugin works as an add-on for the <strong><a href=\"https:\/\/store.webkul.com\/ecommerce-saas-multi-vendor.html\" target=\"_blank\" rel=\"noreferrer noopener\">Laravel e-Commerce SaaS Multi Vendor Module<\/a><\/strong> and the <strong><a href=\"https:\/\/store.webkul.com\/bagisto-laravel-ecommerce-multi-company-saas.html\" target=\"_blank\" rel=\"noreferrer noopener\">Laravel eCommerce SaaS module<\/a><\/strong>, so install both of them first.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Features of Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>The Multi-Tenant Marketplace Table Rate Shipping module offers the following features.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Tenant Features<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>Every tenant company manages its own supersets, superset rates and shipping rates, so no tenant ever touches the data of another tenant.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The tenant enables or disables the shipping method per sales channel from the configuration settings.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Also, the tenant creates superset methods, that is, the shipping method groups, with a code, a name and a status.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The tenant adds superset rates from the cart price range, either for themselves or for any seller.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>In addition, the tenant adds shipping rates from the country, region, zip code and weight range.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The tenant also uploads a shipping CSV file on behalf of the sellers, simply by entering the seller id in the file.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Both the tenant and the seller download the same sample CSV file before they start.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Moreover, the tenant exports the shipping rate, superset and superset rate grids straight from the back-end.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The grids support search, sort, filter, mass delete, and a mass status update for supersets.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Finally, the admin ACL and seller ACL permissions control the access to every screen.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Seller and Checkout Features<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>The sellers add superset rates and shipping rates for their own products from the seller dashboard.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Sellers also add their shipping rates through a CSV import for table rates.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The module calculates the shipping from the country, region, zip code and weight of the products of the seller.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>It then splits the shipping cost per seller, so every seller receives their own share of the shipping amount.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Because the module combines one matched rate per item, a cart that carries products from several sellers still ships in one go.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The tenant charges the shipping per unit or per order, and picks the type from the configuration.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Table Rate Shipping supports both numeric zip code ranges and alphanumeric zip codes.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>During the checkout, the shipping rates populate from the CSV that the tenant or the seller uploaded.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>However, the module rejects overlapping and invalid weight ranges on create, update and CSV import.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Finally, the seller confirms the order, creates an invoice and sets the tracking id for the order.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Installation of Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p><strong>Bagisto Version:<\/strong> v2.4.9<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Marketplace Version:<\/strong> <a href=\"https:\/\/store.webkul.com\/laravel-multi-vendor-marketplace.html\" target=\"_blank\" rel=\"noreferrer noopener\">v2.4.9<\/a><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Module Version:<\/strong> v2.4.9<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> First install the <strong>Laravel eCommerce SaaS<\/strong>, <strong>Laravel eCommerce SaaS Multi Vendor<\/strong> and <strong>Marketplace Table Rate Shipping<\/strong> modules, because this module extends all three of them.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> Also, follow this Multi-Tenant Marketplace Table Rate Shipping guide for the installation exclusively, and skip the instructions of the Marketplace Table Rate Shipping README.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 1: Extract the Package<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>First, extract the downloaded extension package.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then merge the <strong>packages<\/strong> directory into the root directory of your Bagisto project.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 2: Register the Service Providers<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Next, open the following file: <strong>bootstrap\/providers.php<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then add the following service providers inside the providers array.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">Webkul\\MarketplaceTableRateShipping\\Providers\\MarketplaceTableRateShippingServiceProvider::class,\n\nWebkul\\MpTableRateShippingSaas\\Providers\\MpTableRateShippingSaasServiceProvider::class,<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> Register the SaaS provider after the base Marketplace Table Rate Shipping provider, because it overrides the base models and the shipping helper on top of it.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 3: Configure Composer Autoload<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>After that, open the <strong>composer.json<\/strong> file.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Under the <strong>psr-4<\/strong> section, add the following namespaces.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">&quot;Webkul\\\\MarketplaceTableRateShipping\\\\&quot;: &quot;packages\/Webkul\/MarketplaceTableRateShipping\/src&quot;,\n\n&quot;Webkul\\\\MpTableRateShippingSaas\\\\&quot;: &quot;packages\/Webkul\/MpTableRateShippingSaas\/src&quot;<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Now regenerate the autoload files of Composer.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">composer dump-autoload<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 4: Register the Module With Concord<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Bagisto registers every package in two places. Next, open the <code>config\/concord.php<\/code> file.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then add the module service provider of the base package inside the <code>modules<\/code> array.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">Webkul\\MarketplaceTableRateShipping\\Providers\\ModuleServiceProvider::class,<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> This entry registers the superset, superset rate and shipping rate models with Concord.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Consequently, the multi-tenant module can swap those models for its own company aware versions.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 5: Install the Module<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Finally, execute the following Artisan command.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">php artisan mp-tablerate-shipping-saas:install<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>The command first runs the base Marketplace Table Rate Shipping migrations.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then it runs the multi-tenant migrations that add the company column to the superset, superset rate and shipping rate tables.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>After that, it publishes the module resources and clears the application cache.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Step 6: Seed the Demo Data (Optional)<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>The module also ships tenant aware demo data.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In short, the seeder creates five supersets, four price based superset rates and a set of zone and weight based shipping rates for every tenant and for each of its sellers.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code -->\n<pre class=\"EnlighterJSRAW\">php artisan db:seed --class=&quot;Webkul\\MpTableRateShippingSaas\\Database\\Seeders\\DatabaseSeeder&quot;<\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Moreover, the seeders stay additive and idempotent. They never truncate a table, so a run on an existing store leaves the rates that you already configured there in place.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>You can also seed a single tenant by passing its company id to the seeder.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>That&#8217;s it, now just execute the project on your specified domain or entry point.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Super Admin Configuration for Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>After the installation of Multi-Tenant Marketplace Table Rate Shipping, the super admin can navigate to:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Super Admin Panel \u2192 Configure \u2192 Sales \u2192 Shipping Methods \u2192 Marketplace Table Rate Shipping<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>This section only informs, because it holds two read only fields:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":553332,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp\" alt=\"super admin configuration\" class=\"wp-image-553332\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Version<\/strong> \u2013 shows the installed version of the module.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Info<\/strong> \u2013 describes the module as the multi-tenant SaaS table rate shipping extension for Bagisto.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The super admin does not manage the operational settings of the shipping method. Instead, every tenant enables and configures the method inside its own store, as the next section shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Tenant Configuration of Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>To configure Multi-Tenant Marketplace Table Rate Shipping, the tenant can navigate to:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Admin Panel \u2192 Configure \u2192 Sales \u2192 Shipping Methods \u2192 Marketplace Table Rate Shipping<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then the tenant fills in the configuration:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463987,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-1.webp\" alt=\"Multi-Tenant Marketplace Table Rate Shipping configuration\" class=\"wp-image-463987\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Title:<\/strong> Here the tenant defines the title for the shipping method. Of course, the tenant must fill it in whenever the method stays enabled.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Description:<\/strong> Enter the description that the checkout shows with the shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Type:<\/strong> Here the tenant selects the shipping type from the dropdown, either <strong>Per Unit<\/strong> or <strong>Per Order<\/strong>. Per Unit multiplies the matched rate by the item quantity, while Per Order charges the matched rate once for the item.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Status:<\/strong> Finally, update the module status to enable or disable it.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The Title, Description and Type settings work per channel, and the Title and Description also work per locale. Therefore, the tenant can configure them separately for every channel and language.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> While the status stays disabled, neither the tenant nor the seller can reach the table rate shipping screens, and the method never appears at the checkout.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Now the tenant can manage the table rate shipping for the marketplace sellers from the <strong>Table Rate Shipping<\/strong> menu, as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In short, the menu holds <strong>Supersets<\/strong>, <strong>Superset Rates<\/strong> and <strong>Shipping Rates<\/strong>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463988,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-1.webp\" alt=\"Multi-Tenant Marketplace Table Rate Shipping menu in the admin panel\" class=\"wp-image-463988\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> Each of these three screens carries its own ACL permission, and so do the create, edit and delete actions inside them.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>As a result, a tenant can grant a staff role the access to only a part of the module.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Multi-Tenant Marketplace Table Rate Shipping Supersets<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>First, the tenant adds the superset methods under Multi-Tenant Marketplace Table Rate Shipping.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In other words, a superset groups the shipping methods that both the tenant rates and the seller rates attach to.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463989,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-2.webp\" alt=\"Superset listing grid\" class=\"wp-image-463989\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-2.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-2-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-2-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-2-2-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>After clicking on the <strong>Add Superset<\/strong> button, the following page appears.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Here, the tenant fills in the general settings:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463990,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-4.webp\" alt=\"Add superset form\" class=\"wp-image-463990\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-4.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-4-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-4-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-4-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Code:<\/strong> Here the tenant sets the code of the superset. It takes up to 20 characters, and it must stay unique.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Name:<\/strong> Enter the name of the superset. The customer then sees this name as the shipping method title at the checkout.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Status:<\/strong> Enable it to activate the superset, because the rate forms only list the active supersets.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>Lastly, the tenant saves the superset with the <strong>Save Superset<\/strong> button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>As the below image shows, the tenant finds the list of all supersets here. The grid lists the <strong>ID<\/strong>, <strong>Code<\/strong>, <strong>Name<\/strong> and <strong>Status<\/strong> of each superset, and every column supports search, sort and filter.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463991,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-5.webp\" alt=\"Superset grid with update and delete options\" class=\"wp-image-463991\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-5.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-5-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-5-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-5-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>By selecting a superset, the tenant can easily <strong>update or delete<\/strong> it from the drop-down.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Moreover, the tenant can select several supersets together to activate them, deactivate them, or delete them in one action, and then export the grid.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Superset Rates<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>After the tenant adds the <strong>superset methods<\/strong>, they add the <strong>superset rates<\/strong> under the <strong>Superset Rates<\/strong> section.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>A superset rate charges the shipping from the cart price range, so it never looks at the weight or the zip code.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463992,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-6.webp\" alt=\"Superset price band listing\" class=\"wp-image-463992\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-6.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-6-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-6-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-6-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>After clicking the <strong>Add Superset Rate<\/strong> button, the following page appears.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Then the tenant fills in the superset rate details as follows:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463993,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-7.webp\" alt=\"Add superset price band form\" class=\"wp-image-463993\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-7.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-7-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-7-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-7-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Price From<\/strong> \u2013 Set the minimum price of the cart to use this shipping set.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price To<\/strong> \u2013 Set the maximum price of the cart for this shipping set.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Superset Method<\/strong> \u2013 Select the superset that this rate belongs to. Of course, the dropdown lists only the active supersets.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Shipping Type<\/strong> \u2013 Select the <strong>Fixed<\/strong> option to enter the shipping price, or select the <strong>Free<\/strong> option to allow free shipping.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Seller Name<\/strong> \u2013 Either select the seller name or the admin, so the tenant can create the rate on behalf of any of their sellers.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price<\/strong> \u2013 Set the shipping method price for this set. The Fixed type needs a price, while a price of zero saves the rate as Free.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>The superset rate grid lists the <strong>ID<\/strong>, <strong>Price From<\/strong>, <strong>Price To<\/strong>, <strong>Shipping Type<\/strong>, <strong>Shipping Method<\/strong>, <strong>Seller Name<\/strong> and <strong>Price<\/strong> columns, and each one supports search, sort and filter.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Moreover, the tenant can edit a rate, delete rates one by one or in bulk, and export the grid.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Once the tenant sets the superset rates, they move forward to the shipping rate section under the next tab.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Shipping Rates<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>As a tenant, you see all the shipping rates that you already set up. Moreover, you add new rates easily with the \u201c<strong>Add Shipping Rate<\/strong>\u201d option.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463994,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-8.webp\" alt=\"Multi-Tenant Marketplace Table Rate Shipping grid\" class=\"wp-image-463994\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-8.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-8-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-8-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-8-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>The shipping rate grid supports search, sort and filter on every column.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>It lists <strong>ID<\/strong>, <strong>Seller Name<\/strong>, <strong>Shipping Method<\/strong>, <strong>Country<\/strong>, <strong>Region<\/strong>, <strong>Zip From<\/strong> and <strong>Zip To<\/strong>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Additionally, it lists <strong>Weight From<\/strong>, <strong>Weight To<\/strong>, <strong>Price<\/strong>, <strong>Numeric Zip Code<\/strong> and <strong>Zip Code<\/strong>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In addition, the tenant can edit, delete, mass delete and export the rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Add Shipping Rate<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>While adding a shipping rate, the tenant fills in the following details:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Superset Method<\/strong> \u2013 Select the superset that this rate belongs to.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Seller Name<\/strong> \u2013 Select the seller that you create the rate for, or leave it empty for the products of the tenant.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Country<\/strong> \u2013 Select the country from the list.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Region Code<\/strong> \u2013 Enter the region code of the available region.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Weight From<\/strong> \u2013 Set the minimum weight value to allow this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Weight To<\/strong> \u2013 Then set the maximum weight value for this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Zip From<\/strong> \u2013 Enter the first zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Zip To<\/strong> \u2013 Next, enter the last zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price<\/strong> \u2013 Set the cost of this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Numeric Zip Code<\/strong> \u2013 Select \u201cYes\u201d to enter a numeric zip code, or select \u201cNo\u201d to enter an alphanumeric zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Alphanumeric Zip Code<\/strong> \u2013 Finally, enter the alphanumeric zip code whenever you select \u201cNo\u201d for the Numeric Zip Code option. Otherwise, enter the numeric zip code.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Example<\/strong> \u2013 You can select <strong>Numeric Zip<\/strong> as \u201c<strong>Yes<\/strong>\u201d when you provide the shipping for a zip code range.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>However, a place like <strong>Canada<\/strong> supports alphanumeric zip codes (<strong>H3Z 2Y7<\/strong>).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>There you select <strong>Numeric Zip<\/strong> as \u201c<strong>No<\/strong>\u201d, then enter the <strong>alphanumeric zip code<\/strong> you want to show the shipping for.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Validation:<\/strong> The module validates the weight range on every create, update and import. <strong>Weight From<\/strong> must stay smaller than <strong>Weight To<\/strong>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Furthermore, the module rejects a new rate whenever its weight range overlaps a rate that already exists for the same seller, superset and zip range.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Bulk Import and Export<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><strong>Bulk Import:<\/strong> You can also upload many shipping rates at once through a CSV file. This works for the rates of the tenant as well as for the rates of a specific seller.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>First, download the sample CSV template from the \u201c<strong>Import<\/strong>\u201d pop-up.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463995,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-9.webp\" alt=\"Import button above the grid\" class=\"wp-image-463995\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-9.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-9-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-9-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-9-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>After clicking on <strong>Import<\/strong>, the below pop-up appears. Here the tenant uploads the file and downloads a sample CSV template.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463996,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-10.webp\" alt=\"CSV import pop-up with sample download\" class=\"wp-image-463996\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-10.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-10-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-10-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-10-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The uploader accepts only the files with a <strong>.csv<\/strong> extension.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Export Data:<\/strong> Finally, the tenant exports the data of the table with the export button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Updating Data In Sample Format<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>The tenant sets the shipping rates easily in the CSV below. In short, the grid of shipping rates above mirrors the columns of the CSV.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463997,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"992\" height=\"177\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-11-1.webp\" alt=\"Multi-Tenant Marketplace Table Rate Shipping sample CSV\" class=\"wp-image-463997\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-11-1.webp 992w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-11-1-300x54.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-11-1-250x45.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-11-1-768x137.webp 768w\" sizes=\"(max-width: 992px) 100vw, 992px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>seller_id:<\/strong> The id of the seller inside the marketplace.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>superset_code:<\/strong> The code of the superset that the rate belongs to. Of course, it must match an existing superset.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>country:<\/strong> The destination country for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>region:<\/strong> Geographical region or area.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_from:<\/strong> Starting zip code of the range.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_to:<\/strong> Ending zip code of the range. Fill it in whenever you fill in zip_from.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>price:<\/strong> The cost of the shipping service.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>weight_from:<\/strong> Minimum weight for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>weight_to:<\/strong> Maximum weight for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>is_zip_range:<\/strong> Marks the zip code as a numeric range (Yes\/No).<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_code:<\/strong> Specific alphanumeric zip code, so use it when is_zip_range says No.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The country code must follow the official ISO-2 (alpha-2) two-letter country codes.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">CSV Rows for the Tenant and the Sellers<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>If you leave the <strong>seller_id<\/strong> empty, the tenant uploads this CSV file as their own table rate shipping.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>However, when they want to upload the table rate shipping CSV for any of the marketplace sellers, they enter the id of the seller in the <strong>seller_id<\/strong> column of the downloaded CSV file.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>The module validates every row on its own.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Therefore, it skips a row when a field goes missing or turns invalid, when the superset code does not exist, when the weight range breaks the rules, or when the rate overlaps an existing one.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>After the upload, the tenant sees which rows the import created and which rows failed, each one with its row number, so they can correct the file and upload it again.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> Above all, the shipping rates take priority over the superset rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Seller Dashboard for Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>Inside Multi-Tenant Marketplace Table Rate Shipping, the seller finds the <strong>Shipping Rates<\/strong> and <strong>Superset Rates<\/strong> options under the navigation bar, as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Of course, a seller only ever sees and manages their own rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":463998,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-12.webp\" alt=\"Seller navigation with superset options\" class=\"wp-image-463998\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-12.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-12-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-12-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-12-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The seller ACL permissions that the tenant grants control both menus, together with the create, edit and delete actions inside them.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Seller Superset Rates<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>By hitting <strong>Superset Rates<\/strong>, the seller opens the new page as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464002,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1536\" height=\"678\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2.webp\" alt=\"Seller superset price band listing\" class=\"wp-image-464002\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2.webp 1536w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2-300x132.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2-1200x530.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2-250x110.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-13new-1536x678-2-768x339.webp 768w\" sizes=\"(max-width: 1536px) 100vw, 1536px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>The grid lists the <strong>ID<\/strong>, <strong>Price From<\/strong>, <strong>Price To<\/strong>, <strong>Shipping Type<\/strong>, <strong>Shipping Method<\/strong>, <strong>Superset Code<\/strong> and <strong>Price<\/strong> of every rate. Moreover, the seller can edit, delete or mass delete them.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>After hitting <strong>Add Superset Rate<\/strong>, the sellers create their own shipping methods.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>A new window appears, so the seller enters all the required shipping details and then clicks the <strong>Save Superset Rate<\/strong> button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464003,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-14-1.webp\" alt=\"Seller adding a superset price band\" class=\"wp-image-464003\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-14-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-14-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-14-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-14-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Price From<\/strong> \u2013 Set the minimum price of the cart to use this shipping set.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price To<\/strong> \u2013 Then set the maximum price of the cart for this shipping set.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Superset Method<\/strong> \u2013 Enter the shipping method name for this set.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Shipping Type<\/strong> \u2013 Select the Fixed option to enter the shipping price, or select the Free option to drop the shipping price.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price<\/strong> \u2013 Finally, set the shipping method price for this set.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Please Note:<\/strong> The sellers can only use the superset methods that their tenant created.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Seller Shipping Rates<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>By clicking on <strong>Shipping Rates<\/strong>, the seller opens the new page as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464004,\"sizeSlug\":\"large\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1200\" height=\"530\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1-1200x530.webp\" alt=\"Seller dashboard for Multi-Tenant Marketplace Table Rate Shipping\" class=\"wp-image-464004\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1-1200x530.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1-300x132.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1-250x110.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1-768x339.webp 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-1.webp 1536w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Here the seller downloads the sample file, uploads their CSV, or adds a shipping rate for their products manually.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Similarly, the grid lists the <strong>ID<\/strong>, <strong>Shipping Method<\/strong>, <strong>Country<\/strong>, <strong>Region<\/strong>, <strong>Zip From<\/strong>, <strong>Zip To<\/strong>, <strong>Weight From<\/strong>, <strong>Weight To<\/strong>, <strong>Price<\/strong>, <strong>Numeric Zip Code<\/strong> and <strong>Zip Code<\/strong> columns.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464005,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"659\" height=\"225\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-16.webp\" alt=\"Seller CSV upload window\" class=\"wp-image-464005\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-16.webp 659w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-16-300x102.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-16-250x85.webp 250w\" sizes=\"(max-width: 659px) 100vw, 659px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Seller CSV Format<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>The below image shows the CSV format for the seller upload. Because the module assigns every imported row to the seller who uploads the file, the seller never fills in a seller id.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464006,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"759\" height=\"98\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-17.webp\" alt=\"Seller CSV format columns\" class=\"wp-image-464006\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-17.webp 759w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-17-300x39.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-17-250x32.webp 250w\" sizes=\"(max-width: 759px) 100vw, 759px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>country:<\/strong> The destination country for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>region:<\/strong> Geographical region or area.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_from:<\/strong> Starting zip code of the range.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_to:<\/strong> Then the ending zip code of the range.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>price:<\/strong> The cost of the shipping service.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>weight_from:<\/strong> Minimum weight for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>weight_to:<\/strong> Maximum weight for the shipping rate.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>superset_code:<\/strong> A code that marks the shipping service category.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>is_zip_range:<\/strong> Marks the zip code as a numeric range (Yes\/No).<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>zip_code:<\/strong> Specific alphanumeric zip code, so use it when is_zip_range says No.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> The country code must follow the official ISO-2 (alpha-2) two-letter country codes.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>IS Zip Range (Numeric Zip Code)<\/strong> \u2013 Select \u201cYes\u201d to enter a numeric zip code, or select \u201cNo\u201d to enter an alphanumeric zip code.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Zip Code (Alphanumeric Zip Code)<\/strong> \u2013 Enter the alphanumeric zip code whenever you select \u201cNo\u201d for the Numeric Zip Code option. Otherwise, enter the numeric zip code.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>After the upload, the seller sees the values in the same format as the CSV file.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Moreover, the seller can edit or delete any existing record from the grid, while the upload reports every failed row with its row number.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464008,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1536\" height=\"678\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2.webp\" alt=\"Uploaded seller records in the Multi-Tenant Marketplace Table Rate Shipping grid\" class=\"wp-image-464008\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2.webp 1536w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2-300x132.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2-1200x530.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2-250x110.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-15new-2-1536x678-2-768x339.webp 768w\" sizes=\"(max-width: 1536px) 100vw, 1536px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Seller Adds a Shipping Rate<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>The seller also adds a shipping rate with the <strong>Add Shipping Rate<\/strong> button, and then the next page appears as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464009,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-18-1.webp\" alt=\"Seller create form with zip and weight fields\" class=\"wp-image-464009\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-18-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-18-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-18-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-18-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li><strong>Superset Methods<\/strong> \u2013 Select the superset method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Country<\/strong> \u2013 Then select the country from the list.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Region Code<\/strong> \u2013 Enter the region code of the available region.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Weight From<\/strong> \u2013 Set the minimum weight value to allow this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Weight To<\/strong> \u2013 Next, set the maximum weight value for this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Zip From<\/strong> \u2013 Enter the first zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Zip To<\/strong> \u2013 Then enter the last zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Price<\/strong> \u2013 Set the cost of this shipping method.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Numeric Zip Code<\/strong> \u2013 Select \u201cYes\u201d for a numeric zip code, or select \u201cNo\u201d for an alphanumeric zip code.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li><strong>Alphanumeric Zip Code<\/strong> \u2013 Finally, enter the alphanumeric zip code whenever you select \u201cNo\u201d for the Numeric Zip Code option.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>Of course, the same weight validations apply to the seller. The weight range must stay valid, and it must not overlap a rate that the seller already created for the same superset and zip range.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Multi-Tenant Marketplace Table Rate Shipping Calculation<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>At the checkout, Multi-Tenant Marketplace Table Rate Shipping resolves the rates of every cart item separately, against the seller that owns the item and the delivery address of the customer.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>First, the module matches the items of the tenant against the rates of the tenant, and the items of a seller against the rates of that seller.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Then it gives the priority to the <strong>shipping rates<\/strong>, and it falls back to the <strong>superset rates<\/strong> afterwards. If no shipping condition matches, the default free shipping and flat rate shipping appear.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>When the tenant picks <strong>Per Unit<\/strong>, the module multiplies the matched rate by the item quantity. However, when the tenant picks <strong>Per Order<\/strong>, it charges the matched rate once for that item.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Finally, the module records the contribution of each item against its own seller, so every order of a seller carries its own share of the shipping amount.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> For fetching the shipping rates, the item must satisfy both the weight and the zip code. Otherwise, the shipping rate never appears.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Carts With Products From Several Sellers<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Every seller configures their rates against their own superset. Therefore, a cart that spans two sellers rarely holds one superset that covers all of its items.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In short, this module handles that case as follows:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>A superset that produced a rate for every item in the cart appears as its own shipping option, exactly as it does in a single seller cart.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>However, when no single superset covers the whole cart, the module combines one matched rate per item into a single shipping option, so the multi-seller cart still ships.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The combined option then appears under one shipping method name, and its total adds up the rate that each item contributes.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Finally, if even one item finds no matching rate, the table rate method stays hidden instead of quoting a total that silently drops that item.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Instances For Superset Rates<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Case 1 \u2192 Seller 1 and Seller 2 both hold products that lie in the superset rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Price Range Satisfied<br>Seller 2 Product \u2013 Price Range Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 The checkout then adds and displays both superset rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 2 \u2192 Seller 1 lies in the superset rates, while Seller 2 does not.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Price Range Satisfied<br>Seller 2 Product \u2013 Price Range Not Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Only the superset rates of Seller 1 appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 3 \u2192 Seller 2 lies in the superset rates, while Seller 1 does not.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Price Range Not Satisfied<br>Seller 2 Product \u2013 Price Range Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Only the superset rates of Seller 2 appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 4 \u2192 Neither seller holds products that lie in the superset rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Price Range Not Satisfied<br>Seller 2 Product \u2013 Price Range Not Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Instead, the default free shipping and flat rate shipping appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Instances For Shipping Rates<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Case 1 \u2192 Seller 1 and Seller 2 both hold products that lie in the shipping rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Weight and Zip Range Satisfied<br>Seller 2 Product \u2013 Weight and Zip Range Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 The checkout then adds and displays both shipping rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 2 \u2192 The shipping rates of Seller 1 lie in range, while the rates of Seller 2 do not.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Weight and Zip Range Satisfied<br>Seller 2 Product \u2013 Weight and Zip Range Not Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Only the shipping rates of Seller 1 appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 3 \u2192 The shipping rates of Seller 2 lie in range, while the rates of Seller 1 do not.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Weight and Zip Range Not Satisfied<br>Seller 2 Product \u2013 Weight and Zip Range Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Only the shipping rates of Seller 2 appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Case 4 \u2192 Neither seller holds products that lie in the shipping rates.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Seller 1 Product \u2013 Weight and Zip Range Not Satisfied<br>Seller 2 Product \u2013 Weight and Zip Range Not Satisfied<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Result \u2013 Instead, the default free shipping and flat rate shipping appear.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Customer Order With Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>As the below image shows, the customer adds two products to the cart from different sellers.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464010,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-19.webp\" alt=\"Cart with products from two sellers\" class=\"wp-image-464010\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-19.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-19-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-19-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-19-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>After clicking the \u201c<strong>Proceed To Checkout<\/strong>\u201d button, the customer reaches the below page.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>There the customer mentions all the required information as the below image shows, and then clicks the continue button to proceed further.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464011,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-20-1.webp\" alt=\"Checkout address step\" class=\"wp-image-464011\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-20-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-20-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-20-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-20-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Here, the customer selects the <strong>table rate shipping method<\/strong> and then clicks the \u201c<strong>Continue<\/strong>\u201d button to proceed further.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In short, the shipping cost on the screen adds up the share of every seller in the cart.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464012,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-21-1.webp\" alt=\"Multi-Tenant Marketplace Table Rate Shipping at checkout\" class=\"wp-image-464012\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-21-1.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-21-1-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-21-1-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-21-1-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p><strong>Note:<\/strong> In the Multi-Tenant Marketplace Table Rate Shipping module, the shipping rate follows the product weight of the seller and the delivery address of the customer.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Finally, the customer completes the order with the <strong>Place Order<\/strong> button, and then a thank you screen appears as in the below image.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464015,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-22.webp\" alt=\"Order success screen\" class=\"wp-image-464015\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-22.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-22-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-22-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-22-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Once the customer <strong>places the order successfully<\/strong>, they can easily check <strong>the details of their orders<\/strong> under their account, together with the total shipping charges as below.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464016,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1059\" height=\"1024\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-23-1059x1024-1.webp\" alt=\"Customer order details with delivery charges\" class=\"wp-image-464016\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-23-1059x1024-1.webp 1059w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-23-1059x1024-1-300x290.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-23-1059x1024-1-250x242.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-23-1059x1024-1-768x743.webp 768w\" sizes=\"(max-width: 1059px) 100vw, 1059px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Seller Order Management<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>If the tenant sets the \u201c<strong>Seller Can Create Invoice<\/strong>\u201d option to \u201c<strong>Yes<\/strong>\u201d and also the \u201c<strong>Seller Can Create Shipment<\/strong>\u201d option to \u201c<strong>Yes<\/strong>\u201d, then the seller manages the orders from the front-end.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Once the customer places the order, the seller finds that order in their <strong>Order List<\/strong> with a pending status, as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464018,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-24.webp\" alt=\"Seller order list with a pending order\" class=\"wp-image-464018\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-24.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-24-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-24-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-24-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>After clicking on the <strong>Eye Icon<\/strong>, the seller checks the order information together with the <strong>shipping address, shipping method and payment method<\/strong>, as the below image shows.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>After that, the seller clicks the <strong>Invoice<\/strong> button to generate the invoice.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464019,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-25.webp\" alt=\"Seller order view with the invoice button\" class=\"wp-image-464019\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-25.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-25-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-25-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-25-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Here the seller creates the invoice for the order of the customer and assigns the quantity. Then they click the <strong>Create<\/strong> button to generate the invoice.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464020,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-26.webp\" alt=\"Invoice creation screen\" class=\"wp-image-464020\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-26.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-26-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-26-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-26-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Once the seller generates the invoice successfully, they generate the shipment for the order with the <strong>Ship<\/strong> button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Here the seller provides the <strong>Carrier Title<\/strong> and <strong>Tracking ID<\/strong>, and then selects the <strong>Product Ordered Source<\/strong>. Finally, the seller clicks the <strong>Create Shipment<\/strong> button to complete the order.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":464021,\"sizeSlug\":\"full\",\"linkDestination\":\"none\"} -->\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1120\" height=\"880\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-27.webp\" alt=\"Tracking id and carrier title form\" class=\"wp-image-464021\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-27.webp 1120w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-27-300x236.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-27-250x196.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/table-rate-shipping-27-768x603.webp 768w\" sizes=\"(max-width: 1120px) 100vw, 1120px\" loading=\"lazy\" \/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Data Isolation in Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>Above all, Multi-Tenant Marketplace Table Rate Shipping stays safe to run on a SaaS installation that serves many companies at once:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>Supersets, superset rates and shipping rates each carry the company that they belong to, and the module stamps that company on every record a tenant store creates.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Moreover, the module scopes every query of a tenant store to that tenant, so a tenant and its sellers only ever see their own supersets and rates.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>The superset code stays unique inside a company rather than across the whole installation. Therefore, tenants never compete for the same codes.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>When the super admin removes a company, Bagisto also removes its supersets, superset rates and shipping rates.<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Finally, each tenant enables the carrier and sets its title, description and type for its own channels, independently of the other tenants.<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Benefits of Multi-Tenant Marketplace Table Rate Shipping<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>In short, Multi-Tenant Marketplace Table Rate Shipping brings the following benefits to a SaaS marketplace:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>Gives every tenant a complete, self-managed shipping matrix<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Hides the shipping data of one tenant from every other tenant<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Lets sellers price their own delivery without depending on the tenant<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Charges realistic shipping from weight, zip code and destination<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Keeps multi-seller carts shippable with a single combined option<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Gives every seller order the correct share of the shipping amount<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Speeds up the setup with CSV import, sample files and demo data<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Supports scalable SaaS marketplace operations, so it fits every <a href=\"https:\/\/webkul.com\/laravel-development\/\">Laravel development<\/a> roadmap<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:wk-block\/index-panel -->\n<div class=\"wk-index-wrap\"><div class=\"block-wrap\"><!-- wp:heading {\"placeholder\":\"Title\",\"className\":\"index-title\"} -->\n<h2 class=\"wp-block-heading index-title\">Support<\/h2>\n<!-- \/wp:heading --><\/div><\/div>\n<!-- \/wp:wk-block\/index-panel -->\n\n<!-- wp:paragraph -->\n<p>That concludes the User Guide for the <strong>Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping<\/strong> module.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>For any questions, technical issues, or assistance, feel free to contact us at: <a href=\"mailto:support@webkul.com\"><strong>support@webkul.com<\/strong><\/a><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>You can also raise a support ticket through our help desk: <a href=\"https:\/\/bagisto.uvdesk.com\/en\">https:\/\/bagisto.uvdesk.com\/en<\/a> or through the <a href=\"https:\/\/webkul.uvdesk.com\/en\/customer\/create-ticket\/\">Webkul help desk<\/a>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Besides, you can read more guides on the <a href=\"https:\/\/webkul.com\/blog\/\">Webkul blog<\/a>, explore our other <a href=\"https:\/\/store.webkul.com\/catalogsearch\/result\/index\/?cat=171&amp;q=laravel\" target=\"_blank\" rel=\"noreferrer noopener\">Laravel extensions<\/a>, and browse the complete <a href=\"https:\/\/bagisto.com\/en\/extensions\/\">Bagisto extensions<\/a> range.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Finally, you can also <a href=\"https:\/\/webkul.com\/hire-laravel-developers\/\">hire Laravel developers<\/a> for your custom Laravel projects.<\/p>\n<!-- \/wp:paragraph -->","protected":false},"excerpt":{"rendered":"<p>Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping module allows every tenant and their sellers to set custom superset rates and shipping rates from their own dashboard. First, Multi-Tenant Marketplace Table Rate Shipping calculates the shipping from the destination country, region, zip code and product weight. Moreover, every seller in the cart contributes their own share <a href=\"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":267,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8396,211,3022],"tags":[8055,9907,8678,8054,9188,8990,106,1628,8991,9597,28,222,8581,2687],"class_list":["post-265614","post","type-post","status-publish","format-standard","hentry","category-bagisto","category-marketplace-2","category-multivendor","tag-bagisto","tag-bagisto-ecommerce-platform","tag-laravel","tag-laravel-ecommerce","tag-laravel-ecommerce-marketplace-table-rate-shipping","tag-laravel-multi-tenant","tag-marketplace","tag-marketplace-shipping","tag-multi-tenant-saas","tag-open-source","tag-open-source-ecommerce","tag-saas","tag-saas-e-commerce-platform","tag-shipping-methods"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide<\/title>\n<meta name=\"description\" content=\"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide\" \/>\n<meta property=\"og:description\" content=\"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-29T13:42:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-11T10:20:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp\" \/>\n<meta name=\"author\" content=\"Simant Verma\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simant Verma\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"26 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/\"},\"author\":{\"name\":\"Simant Verma\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#\\\/schema\\\/person\\\/63f64723fe98f166757f7903d1f7e7e0\"},\"headline\":\"User Guide for Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping\",\"datePublished\":\"2020-08-29T13:42:28+00:00\",\"dateModified\":\"2026-09-11T10:20:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/\"},\"wordCount\":4417,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/superadminconfig.webp\",\"keywords\":[\"Bagisto\",\"Bagisto ecommerce platform\",\"laravel\",\"Laravel eCommerce\",\"laravel ecommerce marketplace table rate shipping\",\"laravel multi tenant\",\"marketplace\",\"Marketplace Shipping\",\"multi tenant saas\",\"open source\",\"open source ecommerce\",\"saas\",\"saas e-commerce platform\",\"shipping methods\"],\"articleSection\":[\"Bagisto\",\"Marketplace\",\"multivendor\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/\",\"url\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/\",\"name\":\"SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/superadminconfig.webp\",\"datePublished\":\"2020-08-29T13:42:28+00:00\",\"dateModified\":\"2026-09-11T10:20:46+00:00\",\"description\":\"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#primaryimage\",\"url\":\"https:\\\/\\\/cdnblog.webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/superadminconfig.webp\",\"contentUrl\":\"https:\\\/\\\/cdnblog.webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/superadminconfig.webp\",\"width\":1120,\"height\":880,\"caption\":\"super admin configuration\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/webkul.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"User Guide for Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/webkul.com\\\/blog\\\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/webkul.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\\\/\\\/webkul.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/cdnblog.webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\\\/\\\/cdnblog.webkul.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/webkul\\\/\",\"https:\\\/\\\/x.com\\\/webkul\",\"https:\\\/\\\/www.instagram.com\\\/webkul\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/webkul\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/webkul\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/webkul.com\\\/blog\\\/#\\\/schema\\\/person\\\/63f64723fe98f166757f7903d1f7e7e0\",\"name\":\"Simant Verma\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Simant Verma\"},\"url\":\"https:\\\/\\\/webkul.com\\\/blog\\\/author\\\/simantverma-bd183\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide","description":"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/","og_locale":"en_US","og_type":"article","og_title":"SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide","og_description":"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.","og_url":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2020-08-29T13:42:28+00:00","article_modified_time":"2026-09-11T10:20:46+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp","type":"","width":"","height":""}],"author":"Simant Verma","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Simant Verma","Est. reading time":"26 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/"},"author":{"name":"Simant Verma","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/63f64723fe98f166757f7903d1f7e7e0"},"headline":"User Guide for Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping","datePublished":"2020-08-29T13:42:28+00:00","dateModified":"2026-09-11T10:20:46+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/"},"wordCount":4417,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp","keywords":["Bagisto","Bagisto ecommerce platform","laravel","Laravel eCommerce","laravel ecommerce marketplace table rate shipping","laravel multi tenant","marketplace","Marketplace Shipping","multi tenant saas","open source","open source ecommerce","saas","saas e-commerce platform","shipping methods"],"articleSection":["Bagisto","Marketplace","multivendor"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/","url":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/","name":"SaaS Multi-Tenant Marketplace Table Rate Shipping User Guide","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp","datePublished":"2020-08-29T13:42:28+00:00","dateModified":"2026-09-11T10:20:46+00:00","description":"Multi-Tenant Marketplace Table Rate Shipping charges shipping per seller from weight, zip code and country.","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2020\/08\/superadminconfig.webp","width":1120,"height":880,"caption":"super admin configuration"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/laravel-ecommerce-multi-tenant-marketplace-table-rate-shipping\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"User Guide for Laravel eCommerce Multi-Tenant Marketplace Table Rate Shipping"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/63f64723fe98f166757f7903d1f7e7e0","name":"Simant Verma","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7d1724606c049d771b8373de3119b9fde5f988195eb2e7d951f4acafa583388c?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Simant Verma"},"url":"https:\/\/webkul.com\/blog\/author\/simantverma-bd183\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/265614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/267"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=265614"}],"version-history":[{"count":27,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/265614\/revisions"}],"predecessor-version":[{"id":557106,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/265614\/revisions\/557106"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=265614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=265614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=265614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}