{"id":354020,"date":"2026-08-18T04:14:48","date_gmt":"2026-08-18T04:14:48","guid":{"rendered":"https:\/\/es.wordpress.org\/plugins\/hedwig-envios-for-woocommerce\/"},"modified":"2026-08-18T04:14:32","modified_gmt":"2026-08-18T04:14:32","slug":"hedwig-envios-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/hedwig-envios-for-woocommerce\/","author":23539540,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.4.6","stable_tag":"1.4.6","tested":"7.0.4","requires":"6.6","requires_php":"8.1","requires_plugins":null,"header_name":"Hedwig Env\u00edos for WooCommerce","header_author":"Fenris","header_description":"Cotiza y genera gu\u00edas de env\u00edo (DHL, FedEx, PaqueteExpress, Estafeta) con el monedero virtual de Hedwig. Todo server-side: el token jam\u00e1s toca el navegador.","assets_banners_color":"d8edf0","last_updated":"2026-08-18 04:14:32","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/hedwig-envios.fenrisdev.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":32,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.4.6":{"tag":"1.4.6","author":"fenrisdev","date":"2026-08-18 04:14:32"}},"upgrade_notice":{"1.3.5":"<p>Connects to the production service instead of the staging one. Headings change\ntypeface. Reconnect your account after updating.<\/p>","1.3.4":"<p>The Verification tab now shows the real state of your request, the rejection\nreason and your number of attempts.<\/p>","1.3.3":"<p>Small footer and notification-icon polish. No change in behaviour.<\/p>","1.3.2":"<p>Adds a footer with the legal documents on every screen and stops the menu icon\nfrom being dimmed. No change in behaviour.<\/p>","1.3.1":"<p>Escaping fix in the label download messages. No change in behaviour.<\/p>","1.3.0":"<p>The interface can now be translated. No change in behaviour.<\/p>","1.2.0":"<p>The plugin folder name changed. Remove the old plugin before installing this\none, and reconnect your Hedwig account afterwards.<\/p>","1.1.3":"<p>Fixes the menu icon, which kept showing the previous brand due to browser cache.<\/p>","1.1.2":"<p>Improves legibility on the order screen and fixes dark mode in the quoting\nscreen.<\/p>","1.1.1":"<p>Colour corrections, notifications that now navigate, and pickups can no longer\nbe scheduled for shipments already on their way.<\/p>","1.1.0":"<p>Adds Pickups, pagination and search boxes. If you had many addresses or labels,\nthey now load page by page instead of all at once.<\/p>","1.0.2":"<p>Corrects how the identity is applied: primary colour visible across the\ninterface and no black surfaces.<\/p>","1.0.1":"<p>Completely changes the panel&#039;s visual identity. If you still see the previous\ncolours after updating, force a cache reload (Ctrl+F5).<\/p>","0.1.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3652001,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3652001,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3652001,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3652001,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.4.6"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[126659,3546,187075,5139,286],"plugin_category":[45],"plugin_contributors":[276196],"plugin_business_model":[],"class_list":["post-354020","plugin","type-plugin","status-publish","hentry","plugin_tags-mexico","plugin_tags-shipping","plugin_tags-shipping-labels","plugin_tags-shipping-rates","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-fenrisdev","plugin_committers-fenrisdev"],"banners":{"banner":"https:\/\/ps.w.org\/hedwig-envios-for-woocommerce\/assets\/banner-772x250.png?rev=3652001","banner_2x":"https:\/\/ps.w.org\/hedwig-envios-for-woocommerce\/assets\/banner-1544x500.png?rev=3652001","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/hedwig-envios-for-woocommerce\/assets\/icon-128x128.png?rev=3652001","icon_2x":"https:\/\/ps.w.org\/hedwig-envios-for-woocommerce\/assets\/icon-256x256.png?rev=3652001","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Hedwig Env\u00edos connects your WooCommerce store to the Hedwig service so you can\nquote shipping rates and create shipping labels for Mexico without leaving the\nWordPress dashboard.<\/p>\n\n<h4>What it does<\/h4>\n\n<ul>\n<li><strong>Live rates at checkout.<\/strong> A shipping method that fetches real prices from\nDHL, FedEx, Paquete Express and Estafeta based on the customer's postcode and\nthe order's dimensions.<\/li>\n<li><strong>Labels from the order screen.<\/strong> Confirm weight and dimensions, pick a rate\nand create the label. The label downloads as a PDF.<\/li>\n<li><strong>Standalone quoting.<\/strong> Quote and create labels without an order.<\/li>\n<li><strong>Shipment tracking<\/strong> inside the order itself, with the history reported by\nthe carrier.<\/li>\n<li><strong>Label cancellation<\/strong> with a reason. The balance returns to your Hedwig\nwallet within the service's stated timeframe, not immediately.<\/li>\n<li><strong>Pickups<\/strong>: schedule the carrier to collect the parcel. A pickup is always\ncreated from an existing label, so it goes to that label's origin address.<\/li>\n<li><strong>Wallet, address book and parcel presets<\/strong> managed from the plugin panel.<\/li>\n<li><strong>Support tickets<\/strong> from the order screen.<\/li>\n<\/ul>\n\n<h4>What you need<\/h4>\n\n<ul>\n<li>WooCommerce active.<\/li>\n<li>A Hedwig Env\u00edos account (you can create one from the plugin itself).<\/li>\n<li><strong>HTTPS.<\/strong> The plugin blocks itself if the site has no SSL certificate:\nwithout TLS, your customers' shipping data would travel in the clear.<\/li>\n<\/ul>\n\n<h4>About the cost<\/h4>\n\n<p>The plugin is free and does not limit any of its features. Creating labels draws\nfrom your Hedwig account wallet, because the carrier charges for each label.\nUnverified accounts have a trial limit imposed by the service \u2014 not by the\nplugin \u2014 until identity verification is completed.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin relies on one external service: <strong>Hedwig Env\u00edos<\/strong>. Without it the\nplugin cannot quote or create labels, because that service is what talks to the\ncarriers.<\/p>\n\n<h4>When it connects and what it sends<\/h4>\n\n<p><strong>When quoting at checkout<\/strong>, each rate calculation sends only:<\/p>\n\n<ul>\n<li>origin and destination postcodes,<\/li>\n<li>parcel weight and dimensions,<\/li>\n<li>declared value, if you have insurance enabled.<\/li>\n<\/ul>\n\n<p><strong>No personal data<\/strong> about your customer is sent at this step.<\/p>\n\n<p><strong>When creating a label<\/strong>, and only then, it sends the data needed to print it:<\/p>\n\n<ul>\n<li>recipient name, phone and email,<\/li>\n<li>full address: street, number, neighbourhood, postcode, city, state and\ndelivery notes,<\/li>\n<li>the same details for the sender, which you enter in the settings,<\/li>\n<li>contents description and order number.<\/li>\n<\/ul>\n\n<p><strong>When using the panel<\/strong> it reads your account's balance, labels, addresses and\nnotifications.<\/p>\n\n<p>The service also sends automatic notifications to your store when a shipment\nchanges status, to keep the order up to date.<\/p>\n\n<h4>Service terms and privacy<\/h4>\n\n<ul>\n<li>Service: https:\/\/hedwig-envios.fenrisdev.com<\/li>\n<li>Terms and conditions: https:\/\/hedwig-envios.fenrisdev.com\/legal\/terminos<\/li>\n<li>Privacy policy: https:\/\/hedwig-envios.fenrisdev.com\/legal\/privacidad<\/li>\n<\/ul>\n\n<p>By connecting your store you accept the Hedwig Env\u00edos terms. If you do not want\nyour customers' data processed by that service, do not install the plugin.<\/p>\n\n<h3>License<\/h3>\n\n<p>The plugin code is GPLv2 or later. The full text is in <code>LICENSE<\/code>.<\/p>\n\n<p>The typefaces in <code>assets\/fonts\/<\/code> are third-party work and are <strong>not<\/strong> covered by\nthat GPL. Karla and Prata are both distributed under the SIL Open Font License\n1.1, which is GPL-compatible. Copyright notices and the licence text are in\n    OFL.txt.<\/p>\n\n<p>No other third-party code is redistributed: React and the <code>@wordpress\/*<\/code>\nlibraries are taken from WordPress at runtime, not bundled.<\/p>\n\n<h3>Source code<\/h3>\n\n<p>The panel interface is written in TypeScript and ships compiled in\n    build\/index.js. <strong>The uncompiled source travels inside this same package<\/strong>, in\n    src\/, together with its full build configuration: <code>package.json<\/code>,\n    tsconfig.json, <code>webpack.config.js<\/code>, <code>tailwind.config.js<\/code> and\n    postcss.config.js.<\/p>\n\n<p>To rebuild <code>build\/<\/code> from source, inside the plugin folder:<\/p>\n\n<pre><code>pnpm install &amp;&amp; pnpm build\n<\/code><\/pre>\n\n<p>The build tools are <code>@wordpress\/scripts<\/code> and Tailwind CSS, both free software.\nNothing is downloaded or executed during plugin installation: <code>build\/<\/code> ships\nready.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/<\/code> or install it from the WordPress\ndashboard.<\/li>\n<li>Activate it from the <strong>Plugins<\/strong> menu.<\/li>\n<li>Go to <strong>Hedwig Env\u00edos<\/strong> and create your account or connect an existing one.<\/li>\n<li>In <strong>Settings<\/strong>, enter the origin address you ship from, including the\ndelivery notes: without them the carriers reject the label.<\/li>\n<li>If you want rates at checkout, add the <strong>Hedwig<\/strong> shipping method to your\nWooCommerce shipping zones.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20paid%20account%3F\"><h3>Do I need a paid account?<\/h3><\/dt>\n<dd><p>You need a Hedwig Env\u00edos account with balance to create labels, the same as with\nany carrier. The plugin itself charges nothing and locks no features.<\/p><\/dd>\n<dt id=\"why%20doesn%27t%20the%20plugin%20work%20without%20https%3F\"><h3>Why doesn't the plugin work without HTTPS?<\/h3><\/dt>\n<dd><p>Because your customers' shipping data would travel unencrypted. The plugin\nblocks itself on purpose until the site has an SSL certificate.<\/p><\/dd>\n<dt id=\"can%20i%20cancel%20a%20label%20i%20already%20created%3F\"><h3>Can I cancel a label I already created?<\/h3><\/dt>\n<dd><p>Only while the carrier has not picked it up. Once the shipment is moving it\ncannot be cancelled. The balance returns to the wallet within the timeframe the\nservice states when cancelling, not instantly.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20store%20my%20customers%27%20data%3F\"><h3>Does the plugin store my customers' data?<\/h3><\/dt>\n<dd><p>In your own database it stores the tracking number, carrier, status and price\ninside the order. Address data is sent to Hedwig to print the label, as detailed\nin the external services section.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20hide%20dashboard%20notices%3F\"><h3>Does the plugin hide dashboard notices?<\/h3><\/dt>\n<dd><p>Only within its own screen, so the interface is not pushed down by other\nplugins' notices. Everywhere else in the WordPress dashboard, including the\norder screen, it touches nothing.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.4.6<\/h4>\n\n<ul>\n<li>The plugin now tells the Hedwig service which version it is running, so the\nservice can let you know when a newer one is out. Only the plugin name,\nversion and store address are sent; nothing about you or your customers.<\/li>\n<li>Fixed an invalid attribute in the block checkout field registration. It made\nWooCommerce discard the whole attribute set for the delivery notes field and\nlog a notice on every page load.<\/li>\n<li>New \"En camino\" order status. Creating a shipping label for an order moves it\nthere automatically, and it moves on to Completed by itself when the carrier\nreports the parcel as delivered.<\/li>\n<li>New customer email, sent when the label is created. It says the order is ready\nto ship \u2014 not that it is already travelling \u2014 with the carrier, the tracking\nnumber and a link to the order. It can be edited or turned off under\nWooCommerce \u2192 Settings \u2192 Emails like any other store email.<\/li>\n<li>Customers now see the tracking of their own parcel at the top of their order,\nwith the carrier, the tracking number, the estimated delivery date and the\nevents reported by the carrier. Orders without a label show nothing at all.<\/li>\n<li>New \"Nivel y referidos\" screen. It shows which price level your volume has\nearned you, how many labels you still need to move up, and your invite code:\nwhen someone signs up with it, verifies their account, tops up and ships their\nfirst parcel, both of you get wallet credit.<\/li>\n<li>The sign-up form now takes an optional invite code.<\/li>\n<li>Fixed a fatal error in the webhook handler: a bad class reference broke every\nincoming event from the service.<\/li>\n<\/ul>\n\n<h4>1.3.5<\/h4>\n\n<ul>\n<li>The plugin now talks to the production service at hedwig-envios.fenrisdev.com\ninstead of the staging one. The Terms and Privacy links in the footer follow\nthe same base, so they point to production too.<\/li>\n<li>Headings now use Prata, a SIL Open Font License typeface, instead of the\nprevious commercial one. Everything shipped in this package is now\nGPL-compatible.<\/li>\n<\/ul>\n\n<h4>1.3.4<\/h4>\n\n<ul>\n<li>The Verification tab now shows a status card: whether the request is under\nreview or was rejected, the reason for the rejection, how many times you have\napplied and the relevant dates.<\/li>\n<li>Fixed the status never being read. The tab looked for it in the wrong place\nin the service response, so it always showed the same generic notice even\nwith a request in progress.<\/li>\n<\/ul>\n\n<h4>1.3.3<\/h4>\n\n<ul>\n<li>The footer link now covers the whole \"Desarrollado por Fenris\" phrase instead\nof the single word.<\/li>\n<li>Verification notices get their own icon in the bell and open the Verification\ntab when clicked.<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Every screen now ends with a footer that links to the Terms and Conditions\nand the Privacy Notice and credits Fenris as the developer. It is shown on\nthe sign-in screen too.<\/li>\n<li>The menu icon is no longer dimmed: WordPress fades image icons to 60% so they\ndo not stand out over the dashicons, which left the mark looking washed out.<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>The label download messages now use esc_html__() instead of __(): wp_die()\nprints its message, so the translated string has to be escaped too.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>The plugin is now translatable: 353 user-facing strings are wrapped in the\ntranslation functions, both in PHP and in the React panel.<\/li>\n<li>Every PHP file now refuses to run when WordPress is not loaded, so a direct\nrequest to a plugin file can no longer surface a fatal error.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Renamed to \"Hedwig Env\u00edos for WooCommerce\" to meet the WordPress.org\ntrademark naming rules.<\/li>\n<li>The readme is now in English, as the directory requires.<\/li>\n<li>Documented the three static-analysis exceptions: the binary PDF label stream,\nthe checkout field (WooCommerce verifies the nonce upstream and the value is\nsanitised on the next line), and the transient cleanup on uninstall.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>The WordPress menu icon and the logo are no longer stuck in the browser cache:\ntheir URLs now carry the plugin version. The old mark kept showing even though\nthe file on disk was already the new one.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>The track, view details and cancel buttons on the order screen now use a solid\nfill: they were transparent with a faint border and got lost on the ticket.<\/li>\n<li>Error messages and status pills are no longer translucent tints either, which\npractically disappeared on the light ticket.<\/li>\n<li>In dark mode the \"rates will appear here\" placeholder is visible again; it had\nlight text over a light veil.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Green badges (Verified, Delivered) now use white text over a darkened green,\nwhich is where white is actually legible.<\/li>\n<li>The label ticket now uses the brand teal.<\/li>\n<li>Notifications now take you where the thing they announce is: a support reply\nopens that ticket.<\/li>\n<li>Fixed the notifications panel, which ran off screen on mobile.<\/li>\n<li>Fixed the \"Show\" selector arrow, which overlapped the number.<\/li>\n<li><strong>My Hedwig account<\/strong> now shows your name and email; they arrived empty.<\/li>\n<li>In the quoting screen, addresses marked \"origin and destination\" show up in\nboth pickers again.<\/li>\n<li>Pickups can only be scheduled for newly created labels; shipments already in\ntransit or delivered are no longer offered.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New <strong>Pickups<\/strong> section. A pickup is scheduled from a label: the carrier goes\nto that label's origin address, so there is no address or carrier to capture.\nYou only choose day, time window, piece count and the largest parcel's size.<\/li>\n<li>Labels, addresses, parcels and pickups now <strong>paginate<\/strong> (10, 20, 50 or 100 per\npage) and have a <strong>search box<\/strong> that ignores case and accents.<\/li>\n<li><strong>My Hedwig account<\/strong> in Settings: edit your name and change your password.\nThe email is shown but not editable, because it is the sign-in credential.<\/li>\n<li>Addresses and parcels redesigned.<\/li>\n<li>Opening a support ticket now returns an automatic notice with the support\nhours, making it clear this is not a live chat.<\/li>\n<li>Tabs now indicate that they scroll on mobile.<\/li>\n<li>Fixed the notifications button, invisible in light mode.<\/li>\n<li>Fixed the order panel colours and the label button, which overflowed.<\/li>\n<li>Server errors are no longer shown raw.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Colour hierarchy properly applied: teal is the primary colour across the\ninterface, green the secondary and coral the accent.<\/li>\n<li>Neutrals are tinted toward teal instead of being flat greys.<\/li>\n<li>Black surfaces removed: the header becomes a light surface \u2014 where the main\nfull-colour logo lives \u2014 and dark panels become deep teal.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>New brand identity: teal, green and coral palette, new logo and the Elegancy\ntypeface for headings. Karla stays for body text and data.<\/li>\n<li>The previous identity (ochre accent and Playfair Display) is retired.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Quote and create DHL, FedEx, Paquete Express and Estafeta shipping labels for Mexico from your WooCommerce orders.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/354020","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=354020"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/fenrisdev"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=354020"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=354020"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=354020"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=354020"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=354020"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=354020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}