{"id":371458,"date":"2026-10-13T21:36:22","date_gmt":"2026-10-13T21:36:22","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/shipping-matrix-cost-per-country\/"},"modified":"2026-10-14T09:44:01","modified_gmt":"2026-10-14T09:44:01","slug":"devstudio8848-shipping-rates-spreadsheet","status":"publish","type":"plugin","link":"https:\/\/xho.wordpress.org\/plugins\/devstudio8848-shipping-rates-spreadsheet\/","author":23568840,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.5","requires_php":"8.0","requires_plugins":null,"header_name":"devStudio8848 Shipping Rates Spreadsheet","header_author":"devstudio8848","header_description":"Country-based shipping prices in a matrix, applied to WooCommerce zone methods.","assets_banners_color":"d0d4dd","last_updated":"2026-10-14 09:44:01","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/devstudio8848.com\/shipping-rates-spreadsheet\/","header_plugin_uri":"https:\/\/devstudio8848.com\/shipping-rates-spreadsheet","header_author_uri":"https:\/\/devstudio8848.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":112,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"devstudio8848","date":"2026-10-14 09:44:01","revision":3745890}},"upgrade_notice":{"1.0.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3744938,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3744938,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3744938,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3744938,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.jpeg":{"filename":"screenshot-1.jpeg","revision":3744938,"resolution":"1","location":"assets","locale":"","width":1731,"height":1289},"screenshot-2.jpeg":{"filename":"screenshot-2.jpeg","revision":3744938,"resolution":"2","location":"assets","locale":"","width":946,"height":859},"screenshot-3.jpeg":{"filename":"screenshot-3.jpeg","revision":3744938,"resolution":"3","location":"assets","locale":"","width":1731,"height":2055},"screenshot-4.jpeg":{"filename":"screenshot-4.jpeg","revision":3744938,"resolution":"4","location":"assets","locale":"","width":946,"height":859},"screenshot-5.jpeg":{"filename":"screenshot-5.jpeg","revision":3744938,"resolution":"5","location":"assets","locale":"","width":1250,"height":808}},"screenshots":{"1":"Global matrix settings and cost calculation options.","2":"Shipping Rates Spreadsheet as a zone shipping method.","3":"Country-based price matrix in method settings.","4":"Matrix applied to an existing Flat Rate method.","5":"Pro matrix with regions, multiple currencies, and import\/export."}},"plugin_section":[],"plugin_tags":[3148,3546,5139,129143,286],"plugin_category":[45],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-371458","plugin","type-plugin","status-publish","hentry","plugin_tags-checkout","plugin_tags-shipping","plugin_tags-shipping-rates","plugin_tags-shipping-zones","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_committers-devstudio8848"],"banners":{"banner":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/banner-772x250.png?rev=3744938","banner_2x":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/banner-1544x500.png?rev=3744938","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/icon-128x128.png?rev=3744938","icon_2x":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/icon-256x256.png?rev=3744938","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/screenshot-1.jpeg?rev=3744938","caption":"Global matrix settings and cost calculation options."},{"src":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/screenshot-2.jpeg?rev=3744938","caption":"Shipping Rates Spreadsheet as a zone shipping method."},{"src":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/screenshot-3.jpeg?rev=3744938","caption":"Country-based price matrix in method settings."},{"src":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/screenshot-4.jpeg?rev=3744938","caption":"Matrix applied to an existing Flat Rate method."},{"src":"https:\/\/ps.w.org\/devstudio8848-shipping-rates-spreadsheet\/assets\/screenshot-5.jpeg?rev=3744938","caption":"Pro matrix with regions, multiple currencies, and import\/export."}],"raw_content":"<!--section=description-->\n<p>Shipping Rates Spreadsheet stores a country (and, in Pro, region and currency) price table on each WooCommerce shipping method instance and applies those prices at checkout.<\/p>\n\n<p>Use the plugin\u2019s own <strong>Shipping Rates Spreadsheet<\/strong> method in a shipping zone, or attach the same matrix to existing methods (Flat Rate, local pickup, carrier plugins, and similar).<\/p>\n\n<h4>Free<\/h4>\n\n<ul>\n<li>Spreadsheet-style matrix in the method instance settings<\/li>\n<li>One price column: the store currency<\/li>\n<li>Country-level destinations<\/li>\n<li>Optional built-in Shipping Rates Spreadsheet zone method (can be hidden)<\/li>\n<li>Apply the matrix to other zone methods, per instance or in bulk<\/li>\n<li>Cost logic: override the method price, add the matrix amount, or take the higher of the two<\/li>\n<li>Destinations listed without a price are blocked (the rate is removed)<\/li>\n<li>Debug logs under WooCommerce \u2192 Status \u2192 Logs<\/li>\n<li>Cleanup tools for orphaned matrix data<\/li>\n<li>Optional removal of matrix data when the plugin is deleted<\/li>\n<li>Polish and German translations<\/li>\n<li>Compatible with WooCommerce High-Performance Order Storage (HPOS)<\/li>\n<\/ul>\n\n<h4>Pro<\/h4>\n\n<ul>\n<li>Additional currency columns<\/li>\n<li>State\/region rows (for example US:CA) with country-level fallback<\/li>\n<li>Import and export as CSV or XLSX<\/li>\n<\/ul>\n\n<p>Matrix data lives in WooCommerce shipping method instance settings. The plugin does not create custom database tables.<\/p>\n\n<p>Product page: <a href=\"https:\/\/devstudio8848.com\/shipping-rates-spreadsheet\/\">https:\/\/devstudio8848.com\/shipping-rates-spreadsheet\/<\/a><\/p>\n\n<h4>Third-party libraries<\/h4>\n\n<p>The matrix editor in the admin uses two bundled MIT-licensed libraries, shipped unmodified:<\/p>\n\n<ul>\n<li>Jspreadsheet CE 5.0.0 \u2014 <a href=\"https:\/\/bossanova.uk\/jspreadsheet\">project<\/a>, <a href=\"https:\/\/github.com\/jspreadsheet\/ce\/tree\/b3837b1a09c4b81e92aff21222afff2769203af5\/src\">source<\/a><\/li>\n<li>jSuites 6.1.2 \u2014 <a href=\"https:\/\/jsuites.net\">project<\/a>, <a href=\"https:\/\/github.com\/jsuites\/jsuites\/tree\/a7433883e9e4c6de2070e43171ea0c37c29f0185\/src\">source<\/a><\/li>\n<\/ul>\n\n<p>Versions, licenses, and links to the non-minified sources are also listed in <code>assets\/vendor\/README.md<\/code>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/devstudio8848-shipping-rates-spreadsheet\/<\/code> or install it from the WordPress plugin directory.<\/li>\n<li>Activate <strong>Shipping Rates Spreadsheet<\/strong> through the Plugins screen.<\/li>\n<li>Open WooCommerce \u2192 Settings \u2192 Shipping \u2192 Shipping Rates Spreadsheet.<\/li>\n<li>Enable the matrix on the built-in method and\/or on existing zone methods, then edit those methods to fill the table.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20replace%20my%20existing%20shipping%20methods%3F\"><h3>Does this replace my existing shipping methods?<\/h3><\/dt>\n<dd><p>No. You can keep Flat Rate and other carriers and only apply the matrix to selected instances. You can also hide the plugin\u2019s own method and use assignment only.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20country%20is%20not%20in%20the%20matrix%3F\"><h3>What happens if a country is not in the matrix?<\/h3><\/dt>\n<dd><p>For the built-in Shipping Rates Spreadsheet method, the <strong>Default cost<\/strong> is used. If that field is empty, the method is hidden. For assigned third-party methods, the rate is removed from checkout.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20country%20is%20in%20the%20matrix%20but%20the%20cell%20is%20empty%3F\"><h3>What happens if the country is in the matrix but the cell is empty?<\/h3><\/dt>\n<dd><p>That destination is blocked for the active currency: the rate is removed.<\/p><\/dd>\n<dt id=\"can%20i%20charge%20different%20prices%20per%20state%20or%20region%3F\"><h3>Can I charge different prices per state or region?<\/h3><\/dt>\n<dd><p>Yes, in Pro. Use location keys such as <code>US:CA<\/code>. If there is no region row, the country row is used.<\/p><\/dd>\n<dt id=\"can%20i%20set%20prices%20in%20several%20currencies%3F\"><h3>Can I set prices in several currencies?<\/h3><\/dt>\n<dd><p>The free version uses the WooCommerce store currency only. Pro adds extra columns.<\/p><\/dd>\n<dt id=\"where%20is%20the%20data%20stored%3F\"><h3>Where is the data stored?<\/h3><\/dt>\n<dd><p>In each method\u2019s instance option (<code>woocommerce_{method_id}_{instance_id}_settings<\/code>), under the <code>ds8848_srs_matrix<\/code> key. Nothing is written to custom tables.<\/p><\/dd>\n<dt id=\"how%20do%20i%20remove%20plugin%20data%3F\"><h3>How do I remove plugin data?<\/h3><\/dt>\n<dd><p>Enable <strong>Remove data on uninstall<\/strong> in the Shipping Rates Spreadsheet settings, then delete the plugin. You can also run the on-screen orphaned-data cleanup without uninstalling.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: country matrix, apply to zone methods, cost logic, HPOS compatibility.<\/li>\n<li>Pro: multi-currency, regions, CSV\/XLSX import and export.<\/li>\n<\/ul>","raw_excerpt":"Country-based shipping prices in a matrix, applied to WooCommerce zone methods. Pro adds extra currencies, regions, and CSV\/XLSX import\/export.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/371458","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=371458"}],"author":[{"embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/devstudio8848"}],"wp:attachment":[{"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=371458"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=371458"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=371458"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=371458"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=371458"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/xho.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=371458"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}