---
description: "Move partners from Tolt, Rewardful, FirstPromoter, PartnerStack, Tapfiliate, AffiliateWP, Dub, LeadDyno or a CSV into Plandalf, and keep their old links earning."
---
# Moving from another affiliate tool

You can bring your partners over from another affiliate tool. For most tools, links they already shared keep earning. PartnerStack is the exception, see [below](#partnerstack).

**What moves over:**

- Your partners
- Their link codes, so old links keep working
- Their payout email
- Their group, mapped to a commission or campaign in Plandalf
- Their answers to your sign-up questions

**What doesn't move yet:**

- Past commissions and payouts. Keep a copy from your old tool.
- Referred customers, for commissions on renewals. This is coming.

Plandalf only reads from your old tool. It never changes anything there.

## How it works

In Plandalf, open **Affiliates**, then **Settings**, and choose **Move from another tool**.

1. **Pick your tool.** Choose it from the list, or pick **Something else**.
2. **Connect.** Paste an API key, or upload a CSV of your partners. Each tool's section below says which one it uses.
3. **Check before importing.** Plandalf does a dry run first. It shows the partners it will add, the old links it will keep, and anything it has to skip. Nothing is saved yet.
4. **Import.** You can leave the page while it runs.
5. **Finish the switch.** Work through the checklist:
   - Remove your old tool's script and checkout code. Each tool's section below says exactly what to remove.
   - Settle what you owe in your old tool. Pay out or carry over approved commissions before you close it.
   - Export your history. Download customers, commissions and payouts, so you keep a record.
   - Tell your partners. Send them your new partner page. Their links stay the same, except for PartnerStack.
   - Close your old account, once a payout has gone out from Plandalf without problems.

Pick your tool: [Tolt](#tolt), [Rewardful](#rewardful), [FirstPromoter](#firstpromoter), [PartnerStack](#partnerstack), [Tapfiliate](#tapfiliate), [AffiliateWP](#affiliatewp), [Dub](#dub), [LeadDyno](#leaddyno) or [something else](#other).

## Tolt

Tolt connects with an API key.

1. In Tolt, open **Settings**, then **Integrations** ([open it](https://app.tolt.com/settings?tab=integrations)).
2. Choose **Add integration**, pick Tolt's API and create a key. It starts with `tlt_live_`.
3. Paste the key into Plandalf.

**Old links:** Tolt links use `?ref=`, as in `yoursite.com/?ref=jane`. Plandalf keeps reading `ref`, so they keep working.

**Remove from your site afterwards:**

- The Tolt script tag, from every page:

  ```html
  <script async src="https://files.tlt-cdn.com/tlt.js" data-tolt="pk_…"></script>
  ```

- Checkout code that reads `window.tolt_referral` or calls `tolt.signup`.
- Anything that writes `tolt_referral` into Stripe metadata.

## Rewardful

Rewardful connects with your API Secret. Rewardful has no self-serve CSV export, so the API is the way in.

1. In Rewardful, open **Company settings** ([open it](https://app.getrewardful.com/company/edit)).
2. Copy your **API Secret**.
3. Paste it into Plandalf.

**Old links:** Rewardful links use `?via=`, as in `yoursite.com/?via=jane`. Plandalf keeps reading `via`.

**Remove from your site afterwards:**

- Both Rewardful script tags: the `rewardful` queue snippet and this one:

  ```html
  <script async src="https://r.wdfl.co/rw.js" data-rewardful="…"></script>
  ```

- Checkout code that reads `Rewardful.referral` or passes it to Stripe as the `client_reference_id`.

## FirstPromoter

FirstPromoter uses a CSV.

1. In FirstPromoter, open **Promoters**.
2. Choose **Export** and download the CSV. See FirstPromoter's [reports help](https://help.firstpromoter.com/en/articles/9071216-reports-overview).
3. Upload it to Plandalf.

FirstPromoter's export only includes promoters with at least one referral. Add the others in Plandalf by hand, or ask them to join again.

**Old links:** FirstPromoter links use `?fpr=`, and sometimes `?fp_ref=`. Plandalf keeps reading both.

If your export has no referral link column, Plandalf can't keep old links for those partners.

**Remove from your site afterwards:**

- The `fpr("init")` snippet and this script:

  ```html
  <script src="https://cdn.firstpromoter.com/fpr.js" async></script>
  ```

- Any `fpr("referral", …)` calls in your checkout or sign-up code.

## PartnerStack

PartnerStack uses a CSV.

1. In PartnerStack, open **Partner management**, then **All partners**.
2. Choose **Export records** and pick **Partners**. PartnerStack emails you a download link that works for 30 minutes. See PartnerStack's [help article](https://support.partnerstack.com/hc/en-us/articles/360058412814).
3. Upload it to Plandalf.

**Old links:** PartnerStack partner links go through PartnerStack first, then on to your site. Once you close PartnerStack, those links stop working. Send your partners their new Plandalf links, and keep PartnerStack open until they've switched.

**Remove from your site afterwards:**

- The PartnerStackJS snippet, which loads from `js.partnerstack.com` and calls `growsumo._initialize`.
- Any `growsumo.createSignup` calls.
- Anything that writes `partner_key` into Stripe metadata.

## Tapfiliate

Tapfiliate uses a CSV, and emails it to you.

1. In Tapfiliate, open **Affiliates** ([open it](https://app.tapfiliate.com/a/affiliates/)).
2. Select all affiliates and choose **Export**. Tapfiliate emails you the file.
3. Upload it to Plandalf.

**Old links:** Tapfiliate links use `?ref=` unless you renamed it in your Tapfiliate setup. Plandalf keeps reading `ref`. If your links use another word, add it in Plandalf under **Affiliates**, **Settings**, **Switching tools**, **Link word**.

**Remove from your site afterwards:**

- The Tapfiliate script and the `tap('create')` and `tap('detect')` lines:

  ```html
  <script src="https://script.tapfiliate.com/tapfiliate.js" async></script>
  ```

- Any `tap('trial')` and `tap('conversion')` calls in your checkout.

## AffiliateWP

AffiliateWP uses a CSV.

1. In WordPress, open **AffiliateWP**, then **Tools**, then **Export / Import**. On your site that's `/wp-admin/admin.php?page=affiliate-wp-tools&tab=export_import`.
2. Under **Export Affiliates**, export all affiliates as a CSV.
3. Upload it to Plandalf.

**Old links:** AffiliateWP links use `?ref=` with the affiliate's ID or username, as in `?ref=12` or `?ref=jane`. Plandalf keeps both the ID and the username as codes, so either kind of link keeps working.

**Remove from your site afterwards:**

- Deactivate the AffiliateWP plugin.
- On sites outside WordPress, remove the External Referral Links script.

## Dub

Dub uses a CSV.

1. In Dub, open your program ([open it](https://app.dub.co/programs)), then **All partners**.
2. Open the menu and choose **Export as CSV**.
3. Upload it to Plandalf.

**Old links:** Dub partner links are short links on your own domain, like `go.yoursite.com/jane`. Keep that domain pointing at your site, or those links won't reach you. Links that use `?via=` keep working too.

**Remove from your site afterwards:**

- The Dub analytics script:

  ```html
  <script src="https://www.dubcdn.com/analytics/script.js" …></script>
  ```

- Checkout code that passes `dub_id` to Stripe as the `client_reference_id`.

## LeadDyno

LeadDyno uses a CSV.

1. In LeadDyno, open **Affiliates**, then **Manage** ([open it](https://app.leaddyno.com/affiliates)).
2. Choose **Export**, then **Export to CSV**.
3. Upload it to Plandalf.

**Old links:** LeadDyno links use `?afmc=`. Plandalf keeps reading `afmc`.

**Remove from your site afterwards:**

- The `static.leaddyno.com/js` script and the `LeadDyno.key` and `LeadDyno.recordVisit` lines.
- Any `LeadDyno.recordLead` and `recordPurchase` calls in your checkout.

<span id="other"></span>

## Something else

Using another tool? Export your partners as a CSV and upload it.

The CSV needs:

- **An email column.** This is how Plandalf knows each partner.
- **A code or link column**, to keep old links working. A full link works, like `https://yoursite.com/?ref=jane`. So does just the code, like `jane`.

If a partner has more than one code, put them in one cell separated by commas, semicolons or pipes, like `jane, jane-summer`.

**Remove from your site afterwards:**

- Your old tool's tracking script.
- Anything that passes its referral id into your checkout or Stripe.

## Before you close your old tool

Don't close your old account until you've done all of these:

- **Removed its script** from every page of your site, and its code from your checkout. Each tool's section above lists exactly what to remove. Left in place, it keeps tracking alongside Plandalf.
- **Paid out or carried over** every approved commission.
- **Downloaded your history**: customers, commissions and payouts. You can't get it back after you close.
- **Told your partners** where their new partner page is.
- **Seen one payout go out from Plandalf** without problems.

## Questions

### Do old links keep working?

Yes for links that point straight at your site: Tolt, Rewardful, FirstPromoter, Tapfiliate, AffiliateWP and LeadDyno. Each partner keeps their old codes, and Plandalf keeps reading your old tool's link parameter.

Not for PartnerStack, whose links go through PartnerStack first. Dub short links keep working only while their domain still points at your site.

### Is my API key stored?

Only for the import. It's stored encrypted, and deleted once the import has run. Plandalf only reads with it.

### Can I run it again?

Yes. A second run only adds what's missing. It never overwrites changes you made in Plandalf, and never moves a code that another partner already owns.

Source: https://plandalf.com/docs/start/affiliates/move-from-another-tool
