Releases: beenacle/partner-program
Release list
v1.5.3
Native-everywhere pass (WordPress/WooCommerce patterns) + bug fixes. Behaviour is unchanged for partners; the differences are in the admin.
Native admin:
- All five admin list screens (Affiliates, Applications, Commissions, Payouts, Logs) are now native
WP_List_Tables: sortable columns where the data supports it, per-page + column-visibility Screen Options, native status-filter links, native bulk actions (Commissions), and a native search box (Affiliates). - Transactional emails are now native
WC_Emailsubclasses — each partner email appears under WooCommerce > Settings > Emails with the standard enable / recipient / subject / preview / test controls and renders through the store's email template. Existing per-event enable/subject choices are migrated into those WooCommerce options once, automatically. The plugin's Emails tab now edits only the per-event message body.
New:
- Payouts: the "Schedule" / "Payout day" settings are now honoured by a daily cron that generates the batch when due (previously batches only ran on a manual click). Exactly one batch per period, with catch-up if a day is missed.
- My Account: an optional "Partner Portal" / "Become a Partner" link in the WooCommerce My Account menu, toggleable under Settings > General.
- Training: Modules 2–4 (Peptide Research Library, Marketing Resources, FAQ) added to the default seeded content.
Fixes & hardening:
- Security: the partner portal's payout-method / agreement / certification POST handlers now re-check approved status, so a suspended or rejected partner can no longer update payout details, re-accept the agreement, or record a certification by posting directly.
- Payouts: auto-generated weekly batches are labelled with the week they cover (not last month); switching schedule mid-period no longer emits an extra batch; due-day is evaluated in site-local time.
- Emails: an email enabled through WooCommerce > Settings > Emails is no longer silently suppressed; the
partner_program_email_recipientsfilter can again skip a send by returning an empty array; admin-notification recipients configured in WooCommerce are honoured. - Performance/scale:
pp_visitsnow has acreated_atindex and a daily prune cron (90-day default, configurable; 0 = keep forever);pp_commissionsgains composite indexes for the hot affiliate/status queries. - Applications and Logs admin lists are paginated (no longer silently capped at 50 / 200 rows).
- Uninstall (with PARTNER_PROGRAM_DELETE_ALL) now also removes the training-module / marketing-material posts.
- Removed dead mailer code and an orphaned email template.
Full Changelog: v1.5.2...v1.5.3
v1.5.2
- Fix: the certification quiz could fail with "Your session expired before the quiz was submitted." The logged-in portal form was wrongly using the cached-page nonce refresh built for the logged-out application/login pages, which replaced its valid nonce with one minted in an anonymous context. The portal is never full-page-cached, so its nonce is always fresh — removed the client-side refresh from the certify form.
Full Changelog: v1.4.2...v1.5.2
v1.4.2
See the commit history for the changes in v1.4.2.
Full Changelog: v1.4.1...v1.4.2
v1.4.1
What's changed
- Release 1.4.1: admin affiliate tools, pagination, and portal polish. (8698d7f)
- Add admin affiliate creation, pagination, and portal/payout fixes. (f71b9c5)
Install
Download partner-program.zip and upload it under Plugins → Add New → Upload Plugin. Sites already running this plugin will receive the update automatically via the built-in GitHub Releases updater.
Full diff: v1.4.0...v1.4.1
v1.4.0
What's changed
- Release 1.4.0: transactional email layer and admin updates (20d0f08)
- UI/UX cleanup: native WordPress patterns, dedup CSS, shared helpers (9c0f1d9)
- Fix partial-refund clawback toggle and update README release example version (129e44d)
- Merge pull request #2 from uddhabh/claude/review-v1.2-production-UmfI2 (dfef72c)
- Updater: honour "Check Again" and negative-cache all error paths (dcfa0d9)
- Subscriptions: stop gating renewal attribution on class_exists (2f818f0)
- Affiliates: fix Approve / Suspend buttons (broken target + refresh re-fire) (25372dc)
- v1.2 production review: four small correctness/robustness fixes (8ae7b86)
Install
Download partner-program.zip and upload it under Plugins → Add New → Upload Plugin. Sites already running this plugin will receive the update automatically via the built-in GitHub Releases updater.
Full diff: v1.2.0...v1.4.0
v1.2.0
What's changed
- v1.2.0: correctness, security, reliability, and simplification (#1) (bda8418)
- Pre-merge cleanup: drop stale import, harden Encryption::decrypt (4edb3a0)
- Route CSV amount formatting through a Money helper (2404b69)
- Move portal inline JS / styles into proper assets (cfb9213)
- Batch-load affiliates in commissions / payouts screens (4f85e27)
- Normalize tiers at save-time, not on every read (f64abe8)
- Cut the dead service container (a6bd9e4)
- Drop pre-launch migration shims (no live data to migrate) (1e60c30)
- Privacy: cover agreement acceptances and stop swallowing erase failures (61a6100)
- Cleanup: drop dead code and add a missing settings default (f1ff262)
- Security: REST host check, settings-import allowlist, dedicated encryption key (8d88ab5)
- Reliability: cron locks, batched hold release, and stop init-time option writes (53dcdc3)
- v1.2.0: correctness fixes for refunds, attribution, and renewals (05bb114)
- v1.2 milestone 3: quality and performance polish (M1-M10) (4ebd803)
- v1.2 milestone 2: high-priority bug fixes (H1-H8) (a02d2c3)
- v1.2 milestone 1: security and data correctness (a4552f1)
- Drop pre-launch migrations now that we have no real data to migrate (0b0fc4e)
- Docs: stop overstating chargeback handling in feature lists (3e9df3e)
- Remove redundant "extra shared password" portal feature (84c527c)
- Show field labels (not keys) on the application review page (f2011d2)
- Fix application form select rendering and preserve per-field options (a219784)
Install
Download partner-program.zip and upload it under Plugins → Add New → Upload Plugin. Sites already running this plugin will receive the update automatically via the built-in GitHub Releases updater.
Full diff: v1.1.0...v1.2.0
v1.1.0
What's changed
- v1.1.0: tier keys, unique commissions, settings cleanup, portal/tracking polish (d4ce322)
- Ship a single canonical release zip (drop versioned duplicate) (3c6c555)
- Fix version-extraction regex in release workflow (fcdabe6)
- Add GitHub Actions release workflow (ef2e290)
Install
Download partner-program.zip and upload it under Plugins → Add New → Upload Plugin. Sites already running this plugin will receive the update automatically via the built-in GitHub Releases updater.
Full diff: v1.0.0...v1.1.0
v1.0.0
What's changed
- Add GitHub Releases auto-updater and release build script (8b504fc)
- Initial release: white-label affiliate plugin for WooCommerce (54e6ffd)
Install
Download partner-program.zip and upload it under Plugins → Add New → Upload Plugin. Sites already running this plugin will receive the update automatically via the built-in GitHub Releases updater.