{"id":11278,"date":"2026-05-29T00:30:31","date_gmt":"2026-05-28T16:30:31","guid":{"rendered":"https:\/\/aeosub.com\/avcl-subscription-interval-repair-for-woocommerce\/"},"modified":"2026-05-29T00:30:31","modified_gmt":"2026-05-28T16:30:31","slug":"avcl-subscription-interval-repair-for-woocommerce","status":"publish","type":"post","link":"https:\/\/aeosub.com\/zh\/avcl-subscription-interval-repair-for-woocommerce\/","title":{"rendered":"AVCL Subscription Interval Repair for WooCommerce"},"content":{"rendered":"<div class=\"post-img\" style=\"margin-bottom: 25px\"><img decoding=\"async\" src=\"https:\/\/ps.w.org\/avcl-subscription-interval-repair-for-woocommerce\/assets\/banner-1544x500.png?rev=3552452\" alt=\"AVCL Subscription Interval Repair for WooCommerce\" style=\"width: 100%;height: auto;border-radius: 12px\"><\/div>\n<div class=\"plugin-info-card\" style=\"border: 1px solid #e2e8f0;border-radius: 10px;overflow: hidden;margin-bottom: 30px;font-family: -apple-system, system-ui, sans-serif;background: #fff\">\n<table style=\"width: 100%;border-collapse: collapse;font-size: 14px\">\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 15px 20px;text-align: left;width: 35%;color: #4a5568;background: #fcfcfc\"><img decoding=\"async\" src=\"https:\/\/ps.w.org\/avcl-subscription-interval-repair-for-woocommerce\/assets\/icon-256x256.png?rev=3552452\" style=\"width: 40px;height: 40px;border-radius: 6px;margin-right: 12px;vertical-align: middle\"> Developer<\/th>\n<td style=\"padding: 15px 20px;font-weight: 500\"><a href=\"https:\/\/profiles.wordpress.org\/ankitv\/\" target=\"_blank\" rel=\"noopener\">Ankit Vishwakarma<\/a><\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Version<\/th>\n<td style=\"padding: 12px 20px\">v1.2.0<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Active Installs<\/th>\n<td style=\"padding: 12px 20px\">0 +<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Requires \/ Tested<\/th>\n<td style=\"padding: 12px 20px\">6.3 \/ 7.0<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Last Updated<\/th>\n<td style=\"padding: 12px 20px\">2026-05-28 3:53pm GMT<\/td>\n<\/tr>\n<tr>\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Official Link<\/th>\n<td style=\"padding: 12px 20px\"><a href=\"https:\/\/wordpress.org\/plugins\/avcl-subscription-interval-repair-for-woocommerce\/\" target=\"_blank\" style=\"text-decoration: none;color: #4a3bca;font-weight: bold\" rel=\"noopener\">View Details \u2192<\/a><\/td>\n<\/tr>\n<\/table><\/div>\n<div class=\"plugin-short-desc\" style=\"margin: 20px 0;padding: 12px 15px;background: #f9fafb;border-left: 4px solid #4a3bca;border-radius: 6px;font-style: italic;color: #4a5568\">Detects and repairs broken billing intervals on WooCommerce Subscriptions \u2014 single or bulk \u2014 with a safe dry-run preview and a full audit log.<\/div>\n<p><strong>AVCL Subscription Interval Repair for WooCommerce<\/strong> solves one of the most frustrating problems WooCommerce Subscriptions store owners face: broken billing intervals on active subscriptions.<\/p>\n<p><strong>The problem<\/strong><\/p>\n<p>Third-party plugins \u2014 notably the official &#8220;Bulk Update Subscription Prices&#8221; add-on \u2014 can silently reset a subscription&#8217;s billing interval to <code>1\u00d7month<\/code>, even when it should be <code>3\u00d7month<\/code>, <code>6\u00d7month<\/code>, or <code>12\u00d7month<\/code>. This causes incorrect renewal dates and lost revenue without any visible error.<\/p>\n<p><strong>What this plugin does<\/strong><\/p>\n<p>It scans your entire subscriptions table, detects mismatches by comparing the subscription&#8217;s stored interval against the linked product meta and original order line-item meta, and lets you fix them safely \u2014 without creating spurious renewal orders or triggering AutomateWoo workflows.<\/p>\n<h4>Features (all free, all unlocked)<\/h4>\n<ul>\n<li><strong>Scan<\/strong> \u2014 Find all subscriptions with broken billing intervals in one click.<\/li>\n<li><strong>Dry-run preview<\/strong> \u2014 See exactly what would change before touching the database. Per-subscription or for the entire scan.<\/li>\n<li><strong>Fix one<\/strong> \u2014 Review and repair a single subscription individually.<\/li>\n<li><strong>Fix all broken<\/strong> \u2014 Repair every detected broken subscription sequentially. Each repair is atomic and individually audit-logged. No quotas, no limits.<\/li>\n<li><strong>Next payment recalculation<\/strong> \u2014 Anchor is taken from the first real paid order, not a spurious 0.00 renewal.<\/li>\n<li><strong>Audit log<\/strong> \u2014 Every action writes a before\/after record to a dedicated table. Export the whole log as CSV or clear it from the admin UI.<\/li>\n<li><strong>AutomateWoo safe<\/strong> \u2014 Status-change hooks are suspended during metadata-only saves.<\/li>\n<li><strong>HPOS compatible<\/strong> \u2014 Uses <code>wc_get_orders()<\/code> and <code>WC_Subscription::save()<\/code> throughout; no direct post-meta writes.<\/li>\n<li><strong>Prepay-safe<\/strong> \u2014 Subscriptions that intentionally use a <code>1\u00d7month<\/code> interval to fire <code>0.00<\/code> fulfilment renewals (e.g. 6-month prepay boxes) are detected and skipped automatically.<\/li>\n<\/ul>\n<p>Every feature listed above is fully unlocked in this download. There are no license keys, no trial periods, no quotas, and no premium-only code paths. The plugin is GPLv2.<\/p>\n<h4>Optional Pro edition (separate, off-WordPress.org)<\/h4>\n<p>For stores that also need to <strong>change prices on existing subscriptions in bulk<\/strong> (by product, by variation, or by CSV), or want power-user controls like a manual trigger panel, prepay-tools page, or scheduled-renewal helpers, there is an optional paid edition. It is a completely separate plugin distributed off WordPress.org. It is <strong>not required<\/strong> for this free plugin to work. You can compare features on the &#8220;Sub Repair <span aria-hidden=\"true\" class=\"wp-exclude-emoji\">\u2192<\/span> Free vs Pro&#8221; admin page.<\/p>\n<h4>Requirements<\/h4>\n<ul>\n<li>WordPress 6.3+<\/li>\n<li>WooCommerce 9.0+<\/li>\n<li>WooCommerce Subscriptions 5.0+<\/li>\n<li>PHP 8.0+<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Detects and repairs broken billing intervals on WooCommerce Subscriptions \u2014 single or bulk \u2014 with a safe dry-run preview and a full audit log.<\/p>","protected":false},"author":1,"featured_media":9317,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[252],"tags":[2411,2412,2413,2414,569,555],"class_list":["post-11278","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-trends","tag-billing-interval","tag-repair","tag-subscription-fix","tag-subscriptions","tag-woocommerce","tag-wordpress-plugin"],"_links":{"self":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/11278","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/comments?post=11278"}],"version-history":[{"count":0,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/11278\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media\/9317"}],"wp:attachment":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media?parent=11278"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/categories?post=11278"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/tags?post=11278"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}