{"id":322913,"date":"2026-06-09T09:48:47","date_gmt":"2026-06-09T09:48:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/easy-verifactu\/"},"modified":"2026-06-09T09:48:24","modified_gmt":"2026-06-09T09:48:24","slug":"easy-verifactu","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/easy-verifactu\/","author":23510161,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.0","stable_tag":"0.1.0","tested":"7.0","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Easy Verifactu","header_author":"Easy Verifactu","header_description":"Send WooCommerce orders and refunds to Easy Verifactu for Verifactu\/AEAT invoicing, and collect customer tax IDs (NIF\/CIF) at checkout.","assets_banners_color":"262626","last_updated":"2026-06-09 09:48:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.easyverifactu.com\/docs\/woocommerce","header_author_uri":"https:\/\/easyverifactu.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.0":{"tag":"0.1.0","author":"easyverifactu","date":"2026-06-09 09:48:24"}},"upgrade_notice":{"0.1.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3565743,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3565743,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3565743,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3565743,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[257667,26218,8637,247447,286],"plugin_category":[45],"plugin_contributors":[266294],"plugin_business_model":[],"class_list":["post-322913","plugin","type-plugin","status-publish","hentry","plugin_tags-aeat","plugin_tags-invoicing","plugin_tags-spain","plugin_tags-verifactu","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-easyverifactu","plugin_committers-easyverifactu"],"banners":{"banner":"https:\/\/ps.w.org\/easy-verifactu\/assets\/banner-772x250.png?rev=3565743","banner_2x":"https:\/\/ps.w.org\/easy-verifactu\/assets\/banner-1544x500.png?rev=3565743","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/easy-verifactu\/assets\/icon-128x128.png?rev=3565743","icon_2x":"https:\/\/ps.w.org\/easy-verifactu\/assets\/icon-256x256.png?rev=3565743","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Easy Verifactu connects your WooCommerce store to your Easy Verifactu account so\nthat the invoices for your orders are generated, stored, and reported to the\nSpanish Tax Agency (AEAT) under the Verifactu system, without you leaving WordPress.<\/p>\n\n<p>The plugin does not generate or store invoices itself. WooCommerce sends each\nconfirmed order and refund to Easy Verifactu, and Easy Verifactu does the fiscal\nwork: it issues the invoice, signs it, keeps the immutable record required by\nVerifactu, and submits it to AEAT.<\/p>\n\n<p><strong>An active Easy Verifactu account is required.<\/strong> You can create one at\nhttps:\/\/easyverifactu.com. After installing the plugin you connect it to your\naccount with a pairing token from your Easy Verifactu dashboard.<\/p>\n\n<h4>What the plugin does<\/h4>\n\n<ul>\n<li><strong>Sends orders and refunds to Easy Verifactu.<\/strong> When an order is confirmed,\nupdated, or refunded, the plugin notifies Easy Verifactu so the corresponding\ninvoice or correction is issued and reported to AEAT.<\/li>\n<li><strong>Collects invoicing details at checkout.<\/strong> Buyers can request a full invoice\nand enter their tax ID (NIF\/CIF). Works on both the WooCommerce Blocks\ncheckout and the classicann (shortcode) checkout.<\/li>\n<li><strong>Requires a tax ID for larger orders.<\/strong> When an order total reaches the\nconfigured invoice threshold for euro-priced stores, the tax ID becomes\nrequired at checkout.<\/li>\n<li><strong>Validates tax IDs in real time.<\/strong> The NIF\/CIF entered at checkout is checked\nagainst Easy Verifactu so buyers get immediate feedback before they pay.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin relies on the Easy Verifactu service to do its work, so it sends data\nto Easy Verifactu (operated by the company behind https:\/\/easyverifactu.com). No\nother third-party services are contacted.<\/p>\n\n<p>It connects to two Easy Verifactu endpoints:<\/p>\n\n<ol>\n<li><p><strong>Easy Verifactu API (<code>https:\/\/woo.easyverifactu.com<\/code>)<\/strong>\nUsed to verify your pairing token and to validate tax IDs entered at\ncheckout.<\/p>\n\n<ul>\n<li><strong>When:<\/strong> when you connect the plugin in the settings page, and each time a\nbuyer enters a tax ID (NIF\/CIF) during checkout.<\/li>\n<li><strong>Data sent:<\/strong> your pairing token; and, for tax-ID validation, the buyer's\ntax ID (NIF\/CIF), name or company name, and billing country.<\/li>\n<\/ul><\/li>\n<li><p><strong>Easy Verifactu order ingest (<code>https:\/\/woo-ingest.easyverifactu.com<\/code>)<\/strong>\nUsed to notify Easy Verifactu of order and refund activity so invoices are\nissued and reported.<\/p>\n\n<ul>\n<li><strong>When:<\/strong> when an order is created, updated, status-changed, or refunded.<\/li>\n<li><strong>Data sent:<\/strong> your pairing token, the WooCommerce order ID, the order\nnumber, and the order's creation and last-modified timestamps. No customer\nnames, addresses, line items, or payment data are sent in these events.<\/li>\n<\/ul><\/li>\n<\/ol>\n\n<p>Easy Verifactu may also call your store back on an authenticated endpoint to\nread the installed plugin version, so it can let you know when an update is\navailable. This requires your pairing token; the version is never exposed\npublicly.<\/p>\n\n<p>By connecting the plugin to your Easy Verifactu account you agree to the\nEasy Verifactu Terms and Conditions and Privacy Policy:<\/p>\n\n<ul>\n<li>Terms and Conditions: https:\/\/www.easyverifactu.com\/terminos-y-condiciones<\/li>\n<li>Privacy Policy: https:\/\/www.easyverifactu.com\/politica-de-privacidad<\/li>\n<\/ul>\n\n<h3>License<\/h3>\n\n<p>This plugin, all of its included libraries, and any other included assets are\nlicensed under the GNU General Public License version 2 or later (GPL-2.0-or-later),\nor are under a GPL-compatible license.<\/p>\n\n<p>The plugin's own code is GPL-2.0-or-later. Bundled JavaScript is built on the\nWordPress and WooCommerce packages (GPL-2.0-or-later) provided by WordPress\ncore, together with first-party code and tooling under GPL-compatible licenses\n(such as MIT). The distributed package contains no third-party PHP libraries.<\/p>\n\n<p>A copy of the GPLv2 is included in license.txt and is available at\nhttps:\/\/www.gnu.org\/licenses\/gpl-2.0.html.<\/p>\n\n<h3>Source code and build process<\/h3>\n\n<p>This plugin ships with its complete, human-readable source code. The compiled\nJavaScript in <code>assets\/js\/build\/<\/code> is generated from the source in the <code>client\/<\/code>\ndirectory:<\/p>\n\n<ul>\n<li><code>assets\/js\/build\/settings-page.js<\/code> is built from <code>client\/settings-page\/index.jsx<\/code><\/li>\n<li><code>assets\/js\/build\/legacy-checkout.js<\/code> is built from <code>client\/legacy-checkout\/index.js<\/code><\/li>\n<\/ul>\n\n<p>The build uses @wordpress\/scripts (webpack and Babel). The configuration is in\nthe bundled <code>webpack.config.js<\/code>, <code>babel.config.js<\/code>, and <code>package.json<\/code>.<\/p>\n\n<p>To rebuild the assets from source, from the plugin directory run:<\/p>\n\n<ol>\n<li>Install dependencies: <code>npm install<\/code> (or <code>pnpm install<\/code>)<\/li>\n<li>Build: <code>npm run build<\/code> (or <code>pnpm build<\/code>)<\/li>\n<\/ol>\n\n<p>No third-party PHP libraries are bundled.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Make sure WooCommerce is installed and active (WooCommerce 8.6 or newer).<\/li>\n<li>Install the Easy Verifactu plugin and activate it.<\/li>\n<li>Create an account at https:\/\/easyverifactu.com if you do not have one, and\ncopy your pairing token from the Easy Verifactu dashboard.<\/li>\n<li>In WordPress, go to <strong>WooCommerce \u2192 Easy Verifactu<\/strong>, paste the pairing token,\nand save. The page confirms once the store is connected.<\/li>\n<\/ol>\n\n<p>That's it. From then on, confirmed orders and refunds are sent to Easy Verifactu\nand the matching invoices are issued and reported to AEAT.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20easy%20verifactu%20account%3F\"><h3>Do I need an Easy Verifactu account?<\/h3><\/dt>\n<dd><p>Yes. The plugin is the bridge between your store and Easy Verifactu; the invoices\nare issued, stored, and reported by Easy Verifactu, so an active account is\nrequired.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20create%20or%20store%20invoices%20in%20wordpress%3F\"><h3>Does the plugin create or store invoices in WordPress?<\/h3><\/dt>\n<dd><p>No. WordPress only sends order and refund events to Easy Verifactu. All invoice\ngeneration, signing, the Verifactu immutable record, and the AEAT submission\nhappen on the Easy Verifactu side.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20new%20block-based%20checkout%20and%20the%20classic%20checkout%3F\"><h3>Does it work with the new block-based checkout and the classic checkout?<\/h3><\/dt>\n<dd><p>Yes. The invoice-intent checkbox and tax-ID field are added to both the\nWooCommerce Blocks checkout and the classic shortcode checkout.<\/p><\/dd>\n<dt id=\"when%20is%20the%20tax%20id%20required%20at%20checkout%3F\"><h3>When is the tax ID required at checkout?<\/h3><\/dt>\n<dd><p>For euro-priced stores, once an order total reaches the invoice threshold\nconfigured in the plugin settings, the tax ID (NIF\/CIF) becomes mandatory.\nBelow that, buyers can still request a full invoice and enter a tax ID\noptionally.<\/p><\/dd>\n<dt id=\"what%20data%20leaves%20my%20store%3F\"><h3>What data leaves my store?<\/h3><\/dt>\n<dd><p>See the \"External services\" section above for the exact endpoints, the data sent\nto each, and when.<\/p><\/dd>\n<dt id=\"is%20my%20data%20safe%20if%20easy%20verifactu%20is%20unreachable%3F\"><h3>Is my data safe if Easy Verifactu is unreachable?<\/h3><\/dt>\n<dd><p>The plugin fails safe. If Easy Verifactu cannot be reached, checkout is not\nblocked and the store keeps working; pending order events are reconciled once\nthe connection is healthy again.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Issue Verifactu-compliant invoices for your WooCommerce orders with Easy Verifactu, reported automatically to the Spanish Tax Agency (AEAT).","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/322913","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=322913"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/easyverifactu"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=322913"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=322913"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=322913"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=322913"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=322913"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=322913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}