Let your customers sell for you.
Run a complete affiliate programme inside WooCommerce. Shoppers sign up as affiliates, share tracked product links and banners, and earn commission on every completed order — while you approve, monitor and pay out from one WordPress screen.
- Sign-up inside My Account
- Fixed or percentage commission
- Stripe & PayPal onboarding
- HPOS ready
Overall Records
Commission Rates
From a shared link to a paid commission.
The plugin follows the referral through six recorded steps. Nothing is guessed: the affiliate is attached to the cart item, carried onto the order line, and turned into a commission row only when the order is marked Completed.
Affiliate shares a link
Every product in the affiliate’s Affiliate Ads screen carries a ready-made URL with the affiliate’s encrypted id appended.
URL parameter?aflm_hash=UVViTlF1RTg1K1NjNHY1RzNSeDI2UT09
The click is recorded
On page load the hash is decrypted back to the affiliate and a traffic row is written with the referring URL, visitor IP and timestamp.
Traffic recordtracking_id · referer · ip · date
Repeat hits are filtered
A five-second window per IP address stops a refresh or a double click from inflating the same affiliate’s traffic count.
Dedupe window5 seconds per visitor IP
The cart remembers
A hidden affiliate field sits beside the add-to-cart button. When the product goes in the basket, the affiliate travels with that cart item.
Cart item dataaffiliate
The order line is stamped
At checkout the affiliate is written onto the order line item as private meta, so attribution survives independently of sessions or cookies.
Order item meta_affiliate
Commission is credited
When the order status becomes Completed, commission is calculated per line item and added to the affiliate’s outstanding balance. A guard flag keeps it from running twice.
Triggerorder status → Completed
Self-referrals are ignored. If the buyer and the affiliate are the same account, no commission row is created for that line item.
One rule, applied to every line item.
Under Settings › Commission you pick a Commission type for sale and a single value. Change the type and the order size below to see exactly what a referred line item pays out.
Flat rate. A $80 line item and a $1,200 line item pay the same.
Flat rate. A $80 line item and a $1,200 line item pay the same.
Flat rate. A $80 line item and a $1,200 line item pay the same.
25% of the line item total — 80 ÷ 100 × 25.
25% of the line item total — 240 ÷ 100 × 25.
25% of the line item total — 1200 ÷ 100 × 25.
Commission is per line item, not per order. An order containing three referred products creates three commission rows. Choose Fixed only when that is what you intend to pay.
Six tabs run the whole programme.
Everything lives under Webkul WC Addons › Woo Affiliates. Approve applicants, watch traffic convert, design creatives, message your partners and settle balances — without leaving WordPress. Pick a tab.
Affiliates
Every affiliate account, its traffic to date and what it is owed. Select rows to Approve, Disapprove or Delete in bulk.
| Name | Blog Link | Total Clicks | Pending Balance | Status | Action | ||
|---|---|---|---|---|---|---|---|
| peterdoe | peter@example.com | peterstyle.blog | 1,248 | $175.00 | Approved | Pay Affiliate | |
| johndoe | john@example.com | thelayeredlook.com | 906 | $50.00 | Approved | Pay Affiliate | |
| katedoe | kate@example.com | katereviews.net | 412 | $0.00 | Approved | Affiliate Paid | |
| affiliateregister | newpartner@example.com | stylenotes.io | 0 | $0.00 | Pending | Affiliate Paid |
Manage opens a per-affiliate view with its own General, Traffic and Sale tabs.
Statistics
Three sections — Graph, Traffic and Sales. The graph plots referral activity Weekly, Monthly or Yearly.
The Traffic list searches by tracking key; the Sales list searches by order id.
Send Email To Affiliate User
Admin can send email manually to different affiliate users.
Add New Banner
Build the creative once. Every approved affiliate finds it in their Affiliate Ads screen with a copyable HTML block.
Transactions
Every payout the store has made, searchable by transaction ID.
| Transaction id | IPN Transaction id | Affiliate | Amount | Payment Mode | Date |
|---|---|---|---|---|---|
| TXN-4417 | IPN-88213 | peterdoe | $125.00 | Direct Bank Transfer | 2026-08-18 |
| TXN-4416 | IPN-88207 | johndoe | $75.00 | PayPal | 2026-08-18 |
| TXN-4415 | IPN-88190 | katedoe | $50.00 | Cheque Payment | 2026-08-17 |
Settings
Four sections — General, Commission, Stripe and PayPal.
Eight screens inside My Account.
Approved affiliates get their own section of the WooCommerce account area — no separate portal, no second login. Each screen below is a real endpoint.
Dashboard
Overall Records, plus the rate currently in force.
Commission Rates — Per Sale: $25.00. Outstanding balance is what is still owed; Balance is what has already been settled.
Statistic
The affiliate’s own referral graph, in Weekly, Monthly or Yearly view.
Affiliate ads
Two sections: Product Ads and Banner Ads.
| Image | Product | Affiliate Url | Action |
|---|---|---|---|
| Atelier Leather Biker Jacket | /product/atelier-leather-biker-jacket/?aflm_hash=UVViTlF1RTg1K1NjNHY1RzNSeDI2UT09 |
Share Open Link | |
| Heritage Double-Breasted Trench Coat | /product/heritage-double-breasted-trench-coat/?aflm_hash=UVViTlF1RTg1K1NjNHY1RzNSeDI2UT09 |
Share Open Link |
Share opens Facebook, Twitter, LinkedIn and Send by Email, or copies the link to the clipboard. Banner Ads lists Title, Size and a ready HTML CODE block with a Preview button.
Transaction
Payouts received from the store.
| Transaction id | IPN Transaction id | Amount | Payment Mode | Date |
|---|---|---|---|---|
| TXN-4417 | IPN-88213 | $125.00 | Direct Bank Transfer | 2026-08-18 |
| TXN-4402 | IPN-88104 | $150.00 | Direct Bank Transfer | 2026-08-04 |
| TXN-4388 | IPN-87996 | $125.00 | PayPal | 2026-07-21 |
Traffic
Every recorded click on this affiliate’s links, searchable by key.
| Tracking Key | Referring URL | Customer IP | Date |
|---|---|---|---|
| 6a82eef34bcf0 | peterstyle.blog/autumn-picks | 103.24.18.77 | 2026-08-17 11:22:27 |
| 6a82ef01c4ca9 | instagram.com | 49.36.220.14 | 2026-08-17 11:22:41 |
| 6a82f0a7c5112 | — | 182.70.11.203 | 2026-08-17 11:29:43 |
Sales
The referred line items that earned commission.
| id | Order id | Product | Date | Commission |
|---|---|---|---|---|
| 1 | #6417 | Atelier Leather Biker Jacket | 2026-08-18 | $25.00 |
| 3 | #6413 | Cashmere-Blend Turtleneck Sweater | 2026-08-18 | $25.00 |
| 5 | #6409 | Heritage Double-Breasted Trench Coat | 2026-08-16 | $25.00 |
Account
Choose how to get paid. The fields change with the method.
Affiliate
Promotional Website — where this affiliate posts the ads.
Four ways to settle a balance.
The affiliate picks a method in their Account screen and fills only the fields that method needs. Every field is required — the form refuses to save a half-filled payout profile.
Or press Connect With Stripe and the ID is filled in on return. The store supplies its own Client ID, Secret Key and Publishable Key under Settings › Stripe, in Test or Live mode.
Or press Connect With Paypal to onboard. The store sets its own Merchant Id, Client ID and Secret Key under Settings › PayPal, in Test or Live mode.
The simplest option — nothing to connect and no bank details to store. The name is used on the cheque when the admin marks the balance paid.
Payouts are deliberate, not automatic. Balances accumulate until the admin presses Pay Affiliate. Once paid, the button reads Affiliate Paid and the transaction appears on both sides.
Two doors in, one decision out.
A visitor can apply at sign-up, and an existing customer can apply from their dashboard. Either way the store decides — instantly or by hand — and the applicant is told by email.
-
Apply while registering
With registrations enabled, the WooCommerce sign-up form gains a role choice — I am a Customer or I am an affiliate — plus a referring website field and a terms checkbox.
-
Or apply later, as a customer
Existing customers see a become an affiliate form on their account dashboard. One URL, one submit.
-
Approved — instantly or by hand
With Auto approve affiliates on, access is granted immediately. With it off, the application waits in the Affiliates list for Approve or Disapprove.
-
The applicant hears back
Changing the status sends the outcome by email, so nobody has to chase the store for an answer.
We appreciate your interest in joining our Affiliate Program.
After reviewing your application, we’re happy to inform you that your request has been approved at this time.
Thank you for your understanding.
Best regards,
The Affiliate Team
The referring website is not optional. An empty field, or anything that is not a valid URL, blocks the application — so you always know where an affiliate intends to promote you.
A full programme, not a tracking script.
Recruitment, creatives, attribution, reporting and settlement — each one already built, and each one visible from the same WordPress install.
Self-serve recruitment
Applications arrive through the store’s own registration form or the customer dashboard. Approve them automatically or one at a time.
Per-product tracked links
Every product in the catalogue becomes a shareable link carrying the affiliate’s encrypted id — ready to copy, or to push straight to social.
Designed banner ads
Set the copy, image, link, button and six colours; pick from five standard ad sizes. Affiliates get finished HTML with a preview.
Traffic and sales reporting
Weekly, monthly and yearly graphs on both sides, backed by searchable click and sale records down to the tracking key.
Direct email to partners
Message one affiliate or the whole roster from the admin, and send approval or decline notices automatically on a status change.
Auditable settlement
Balances build per line item and clear only when you pay. Both sides then see the same transaction, with its id, amount, mode and date.
Before you switch it on.
The details that decide whether an affiliate programme behaves the way you expect.
When exactly does an affiliate earn commission?
When the referred order reaches the Completed status — not at checkout, and not on payment. Until then the sale is attributed but unpaid, which gives you a natural window for cancellations and refunds.
A flag on the order makes sure commission is calculated once, even if the status is toggled back and forth.
Is commission per order or per product?
Per line item. A single order containing three referred products creates three commission rows. This matters most with the Fixed type, where each line pays the full flat amount.
How is a referral tracked — does it need cookies?
No. The affiliate’s encrypted id arrives in the link as aflm_hash, is stored on the cart item when the product is added, and is written onto the order line at checkout. Attribution rides with the item rather than with the browser.
The trade-off is that the visitor must add to the basket from the referred product page for the link to count toward a sale.
Can an affiliate earn commission on their own purchase?
No. If the buyer’s account is the same as the attributed affiliate, that line item is skipped and no commission row is written.
Do I have to approve every applicant?
Only if you want to. Auto approve affiliates grants access the moment someone applies. Turn it off and applications queue in the Affiliates list, where Approve, Disapprove and Delete also work in bulk.
How do affiliates get paid?
They pick one of four methods in their Account screen — Stripe, PayPal, Direct Bank Transfer or Cheque Payment — and fill in that method’s details. You then clear the balance from the Affiliates list with Pay Affiliate, and the transaction is logged for both of you.
For Stripe and PayPal the store supplies its own API credentials and can run in Test mode first.
Do affiliates need a separate login or portal?
No. Their eight screens — Dashboard, Statistics, Affiliate Ads, Transactions, Traffic, Sales, Account and Affiliate — are added to the standard WooCommerce My Account area.
Where can I get help?
Raise a ticket at webkul.uvdesk.com, or read the full user manual. The rest of the range is at store.webkul.com.
Your best customers already recommend you.
Give them a link worth sharing, a dashboard worth checking, and a balance worth building — then pay it out from the same screen you manage orders on.