About this plugin
Want more sales without a bigger ad budget? Let other people sell for you, and pay them only when a sale sticks.
FlyAffiliate is an affiliate marketing plugin for WordPress, made by weDevs, the team behind Dokan, WP User Frontend and weMail. It gives every affiliate a referral link and a dashboard. It gives you a commission ledger that always knows which money is earned, which is owed and which is paid.
It runs an affiliate program the way store owners actually run one. Someone signs up and confirms their email, or you approve each one yourself. They share their referral link, and orders come in.
Each commission waits out its hold period, and then you pay everyone in one batch through the channel you already use.
Everything stays on your own site. Visitor data never leaves it, and FlyAffiliate sends no usage data unless you choose to share it (see Usage Data below). It also stores nothing that identifies a visitor.
How FlyAffiliate Works
- An affiliate joins. They sign up through the registration form with just an email address, or you add them from the admin. Every affiliate is a WordPress user with the Affiliate role.
- They share their referral link. Each affiliate gets one link. Adding?affiliate=ID to any product URL sends visitors straight to that product. FlyAffiliate records the visit and sets a first-party cookie that remembers who sent them.
- An order comes in. FlyAffiliate creates one pending commission per order item. It uses your default rate, capped at the maximum you allow.
- The commission follows the order. It turns unpaid as soon as the order is paid. A failed or cancelled order rejects it, and so does a refund if you switch that on. When an order recovers, its commission comes back.
- You pay in batches. A payout turns every unpaid commission whose hold period is over into one payment per affiliate, for affiliates above your minimum payout. You send the money your way, mark each payment paid and export the batch as CSV.
Commission Tracking for Store Owners
- Per-item commissions. Each order item gets its own commission line, so you can see exactly which products earned what.
- A default rate with a hard cap. Set one default rate and a maximum rate, and no commission ever goes above the maximum. Developers can give a product its own rate through the _flyaffiliate_rate product meta. Shipping and tax stay out of the commission unless you say otherwise.
- A hold period. Every commission waits out a hold period, 30 days by default, before it can go into a payout, so a refund has time to show up before you pay. The hold date is fixed when the commission is created, so a new hold period applies to new orders only.
- Statuses that follow the order. Every commission is pending, unpaid, paid or rejected, and it moves with the order.
- Two-step payouts. Create the payout, send the money, then mark it paid. An order can never delete or move a commission inside a payment. You can still correct it by hand.
- Hand-entered commissions. Record bonuses, corrections and offline sales with the affiliate, amount, reference, origin, date, type and status.
- Admin screens for affiliates, commissions, visits, payouts and settings. The dashboard shows the numbers that matter and flags any application that is waiting.
- A setup wizard that asks for the three numbers every program needs. These are your default rate, your maximum rate and your hold period.
Referral Tools for Affiliates
- An affiliate dashboard with their referral link, balance, commissions, visits, payouts and payment settings. Add it anywhere with [flyaffiliate_dashboard].
- A referral link generator. Affiliates turn any page of your site into a referral link, and every link they create is saved with its own visit count.
- A simple registration form that needs only an email address. Add it with [flyaffiliate_register].
- Self-referral protection. Nobody earns a commission on their own order unless you allow it.
FlyAffiliate creates the Affiliate Dashboard and Affiliate Registration pages for you on activation.
Works With or Without WooCommerce
FlyAffiliate is a standalone affiliate plugin. Affiliates, referral links, visit tracking, hand-entered commissions and payouts all work on WordPress alone.
WooCommerce is the first integration. When WooCommerce is active, FlyAffiliate creates commissions from its orders on both the classic and block checkout, and adds an Affiliate Commission box to WooCommerce Analytics. Dokan marketplaces are supported through FlyAffiliate Pro.
What’s in the Free Version
Everything you need to run a single-tier affiliate program, at no cost.
- Affiliate signup with just an email address and a one-time activation link, or affiliates you add yourself
- Affiliate statuses: pending, active, inactive and suspended
- One referral link per affiliate, plus a link generator that saves each link with its visit count
- A visit log with hashed visitor data and a signed first-party cookie (30-day attribution window by default)
- Per-item commissions with a default rate (10% by default) and a maximum rate (50% by default)
- Shipping and tax left out of commissions by default
- A hold period, 30 days by default
- Commission statuses that follow the order, with an optional switch to reject commissions on refunds
- Self-referral blocking
- Hand-entered commissions for bonuses, corrections and offline sales
- Batch payouts with a preview, a minimum payout and CSV export, paid by the Manual method
- An admin dashboard with referral revenue, payouts, conversion rate and your most valuable affiliates
- A front-end affiliate dashboard and registration form
- WooCommerce integration for classic and block checkout, HPOS compatible, with an Affiliate Commission box in WooCommerce Analytics
- A setup wizard, an activation email and an optional welcome email
- A REST API, flyaffiliate_ hooks, overridable templates and WP-CLI demo data for developers
What’s in FlyAffiliate Pro
FlyAffiliate Pro adds extensions you switch on from one Extensions page. It needs the free plugin active.
- PayPal Payouts. Connect your PayPal Business account once and send every affiliate’s payment to their PayPal account in one batch. Affiliates add their PayPal email in their dashboard. Each payment shows its real status, from sent to paid, and a failed payment stays unpaid so you can send it again. One payout can mix PayPal and manual payments.
- Vendor affiliate programs for Dokan. Each vendor on a Dokan marketplace can run their own affiliate program and fund it from their own earnings, while the marketplace keeps its full share. See the Dokan section below for how a sale splits.
- Automatic updates and support with your license key.
Vendor Affiliate Programs on Dokan
The Dokan extension in FlyAffiliate Pro lets each vendor on a Dokan marketplace switch on an affiliate program for their own store. Anyone can then promote that vendor’s products and earn a commission on what they sell. 2 or newer.
Dokan Pro is optional.
The vendor funds the commission out of their own earnings, and the marketplace keeps its full share. Take a $100 sale on a marketplace that keeps 20%, with a vendor affiliate rate of 15%.
- The marketplace keeps $20.
- The affiliate earns $15, held until the order settles.
- The vendor withdraws $65.
It is the vendor’s marketing budget, the vendor’s rate and the vendor’s call. The commission comes out of the vendor’s earning at the sale, and that deduction falls away if the commission is rejected, so an order that never completes costs them nothing.
Keep Your Affiliate Data Private
FlyAffiliate stores no personal data about a visitor. A visit record keeps only a hashed IP address and a hashed user agent. Both are salted with your site’s own key, so they cannot be reversed or matched on another site.
Attribution uses one first-party cookie called flyaffiliate_ref. It holds two numbers, the affiliate ID and the visit ID, and it is signed so nobody can forge it. The cookie is HttpOnly, is never shared and lasts for the attribution window you set, which is 30 days by default.
Usage Data (Appsero)
FlyAffiliate uses the Appsero SDK to collect usage data, only once you allow it. This helps us troubleshoot problems faster and improve the plugin.
Choosing No thanks, or leaving Share Essentials off, tells Appsero only that this site declined. When you deactivate the plugin, a form asks why. Submit & Deactivate sends your answer with the data above, and Skip & Deactivate sends nothing.
Learn more about how Appsero collects and uses this data.
Extend It Your Way
FlyAffiliate follows the same architecture as Dokan. You get service providers, manager classes, overridable templates, flyaffiliate_ hooks and a REST API under flyaffiliate/v1 for every resource. Developers can also seed demo data with wp flyaffiliate seed.
Contribute on GitHub
FlyAffiliate is built in the open on GitHub. Bug reports, pull requests and ideas are all welcome there.
The JavaScript and CSS in assets/ are compiled from the TypeScript and SCSS sources under src/ in that repository. Running npm run build reproduces them.