Skip to main content

Pay Affiliates Through Stripe

Set up Stripe payouts so AffiliateBase pays affiliates by Stripe transfer from your own Stripe balance, then run payouts, retry failed transfers, and handle reversals.

Table of Contents

This page is for account owners and admins who want to pay affiliates through Stripe instead of PayPal or Wise exports. Once Stripe payouts are on, each payout is a Stripe transfer from your Stripe balance to the affiliate’s own Stripe account. Stripe then pays the affiliate’s bank on its usual schedule.

Stripe moves the money. AffiliateBase never holds your funds.

How it works

  • Your Stripe account becomes a Stripe Connect platform. You set this up once in the Stripe Dashboard.
  • Each affiliate connects a Stripe account once from the affiliate portal. Stripe collects and checks their identity and bank details. AffiliateBase never sees them.
  • When you pay a payout, AffiliateBase sends one Stripe transfer from your available Stripe balance to the affiliate’s Stripe account.
  • Affiliates that Stripe can’t pay (for example, in an unsupported country) choose PayPal or Wise instead. You pay them with an export or by recording the payment.

Before you begin

  • Owner or admin access in AffiliateBase. Settings -> Stripe Payouts is in the settings menu.
  • Stripe connected to AffiliateBase in Settings -> General -> Stripe Connection. See Connect Stripe.
  • Access to the Stripe Dashboard for that same Stripe account, with permission to set up Connect and create API keys.
  • Available funds in your Stripe balance, in your display currency, to cover the payouts you plan to send.

Costs and your responsibilities

Stripe bills these fees to your Stripe account. AffiliateBase adds no markup.

FeeAmount
Each active affiliate accountAbout $2 a month for each affiliate account that receives a payout that month
Each payoutAbout 0.25% + 25¢ per payout

Rates are Stripe’s, not AffiliateBase’s. Check current rates on Stripe’s Connect pricing page.

When you pay through Stripe:

  • You file 1099 forms for US affiliates. Stripe’s 1099 tools work with these affiliate accounts.
  • You’re responsible for any negative balance on affiliate accounts you’re liable for.

Which affiliates Stripe can pay

The countries depend on the country of your Stripe account:

  • Stripe can always pay affiliates whose bank account is in the same country as your Stripe account.
  • If your Stripe account is in the United States, the United Kingdom, Canada, Switzerland, or the European Economic Area (EEA), Stripe can also pay affiliates in any of those countries.

After you run the checklist, Settings -> Stripe Payouts -> Affiliate countries lists the exact countries for your account.

Affiliates elsewhere choose PayPal or Wise in the affiliate portal. You pay them with the PayPal or Wise export or by recording the payment yourself.

Set up Stripe payouts

Step 1: Set up Connect in the Stripe Dashboard

Open Settings -> Stripe Payouts. The Set up in the Stripe Dashboard section links to each Stripe page:

  1. Register for Stripe Connect.
  2. Complete your Connect platform profile, including the loss-liability acknowledgement. Stripe won’t create affiliate accounts until it’s done.
  3. Set your onboarding branding so affiliates recognize your business when Stripe asks for their details.

Step 2: Add a restricted key

In the Stripe Dashboard, open API keys and create a restricted key with exactly these permissions:

  • Connect Accounts: write
  • Account Links: write
  • Transfers: write
  • Balance: read

Create the key in the same Stripe account that is connected to AffiliateBase. Use a live key (rk_live_...) for a live connection, or a test key (rk_test_...) for a test connection.

Back in Settings -> Stripe Payouts -> Restricted key:

  1. Paste the key into Restricted key.
  2. Choose Verify and save key.

AffiliateBase checks the key with Stripe, including that it belongs to the Stripe account connected to AffiliateBase. Once saved, the key’s Status shows Verified and its Mode shows Live or Test.

AffiliateBase stores the key encrypted and never shows it again. It deletes the key if you disconnect Stripe or change your payout method. To swap keys, paste a new one in Replace key. To remove it, choose Delete key. Stripe payouts stop until you add a new one.

If the key isn’t accepted:

MessageWhat to do
”This key is missing a permission.”Edit the key in Stripe so it has all four permissions above, or create a new one.
”Stripe didn’t accept this key.”Copy the whole restricted key from the Stripe Dashboard and paste it again.
”This key belongs to a different Stripe account.”Create the key in the Stripe account connected to AffiliateBase.
”Connect your Stripe account to AffiliateBase first, then add the key.”Connect Stripe in Settings -> General, then add the key.
”This is a test-mode key.” or “This is a live-mode key…”Use a key whose mode matches your Stripe connection.
”A payout is still being confirmed with the current key.”Wait until no Stripe payouts are processing, then replace the key.

Step 3: Run the checklist

In the Checklist section, choose Run checks. Each item shows Passed or Needs attention:

CheckWhat it confirmsIf it needs attention
Stripe key verifiedA verified key is saved.Add a restricted key in Step 2.
Stripe Connect enabledConnect is set up on your Stripe account.Register for Connect and complete your platform profile in the Stripe Dashboard, then run the checks again.
Stripe account countryAffiliateBase can read your Stripe account’s country.Reconnect Stripe in Settings -> General, then run the checks again.
Balance in your currencyYour Stripe balance holds funds in your display currency.Add funds in that currency to your Stripe balance.

If a check says “Stripe couldn’t be reached”, wait a minute and choose Run checks again.

Step 4: Turn on Stripe payouts

When every check passes, choose Turn on Stripe payouts and confirm. The panel’s badge changes to On, and Settings -> General -> Payout method shows Stripe Connect.

From now on, new payout runs pay ready affiliates by Stripe transfer. Affiliates see a Stripe payouts section in their portal Settings and can connect their Stripe account. Point them to Get paid through Stripe.

You can only switch to Stripe payouts from Settings -> Stripe Payouts after the checklist passes. It can’t be chosen from the Payout method list.

Run Stripe payouts

  1. Open Payouts and choose New Payouts.

  2. Review each affiliate. The line under the amount shows how they’ll be paid:

    • Stripe transfer: their Stripe account is ready.
    • PayPal export (Stripe can’t pay them) or Wise export (Stripe can’t pay them): they chose a fallback. Pay them from Payouts -> Export.
    • Hasn’t set up Stripe payouts: they haven’t connected Stripe yet.
    • Stripe needs more information from them: they must finish details in Stripe.
    • Stripe is reviewing their details: nothing to do yet.
    • Stripe can’t pay them, and they have no PayPal or Wise email yet: they must add a PayPal or Wise email and choose it in the portal.

    Affiliates in the last four states can’t be selected until that’s resolved.

  3. Select affiliates, then choose Create payouts. Check Execute payouts immediately to send the Stripe transfers right away.

If you didn’t execute immediately, send the payouts later with Execute now on the payout run, or open a single payout and choose Pay with Stripe.

Your balance must cover the run

Before sending any transfer, AffiliateBase checks that your available Stripe balance covers the whole run. If it doesn’t, nothing is sent, and you see how much to add, for example “Your Stripe balance is short by USD 120.00.” Add funds to your Stripe balance, then run the payouts again.

Only your available Stripe balance counts. Funds that are still pending in Stripe don’t cover transfers.

What a sent payout looks like

A Stripe transfer is complete when Stripe accepts it, so the payout and its commissions are marked paid right away. The payout page shows a Stripe transfers list with each attempt, its time, its Stripe transfer ID, and a status:

  • Sent: Stripe accepted the transfer.
  • Being confirmed: AffiliateBase hasn’t heard back from Stripe yet.
  • Didn’t go through: Stripe rejected the transfer.
  • Reversed: the transfer was reversed in Stripe.
  • Not found in Stripe: Stripe has no record of the transfer.

The money then sits in the affiliate’s Stripe account until Stripe pays it to their bank on its usual schedule.

When a transfer fails

If Stripe rejects a transfer, the payout goes back to due. Its page shows Last Stripe transfer didn’t go through with the reason and the time it was recorded. Fix the cause, then choose Retry Stripe transfer.

Common reasons:

  • “Your Stripe balance doesn’t cover this payout.” Add funds to your Stripe balance, then retry.
  • “Stripe rejected the payouts key.” Reconnect Stripe or replace the restricted key in Settings -> Stripe Payouts, then retry.
  • “Stripe rejected the transfer: …” Read Stripe’s reason, fix it in Stripe, then retry.

If the page says a Stripe transfer is still being confirmed, don’t retry. AffiliateBase checks with Stripe automatically and updates the payout. Before it sends anything again, it checks whether Stripe already received the transfer, so an affiliate is never paid twice.

If the payout page shows Reconnect Stripe to finish this payout, AffiliateBase can no longer check Stripe for a transfer it sent. Choose Open Stripe Payouts, reconnect Stripe or replace the key, and AffiliateBase confirms the payout automatically. The payout stays processing and won’t be sent twice.

When a transfer is reversed

AffiliateBase never reverses transfers itself. If one is reversed in Stripe, AffiliateBase picks it up automatically. This can take a few hours.

  • Full reversal: the payout and its commissions go back to due. You can pay it again with Retry Stripe transfer or in a later run.
  • Partial reversal: the payout stays paid, and you get a “Stripe transfer partly reversed” notification. AffiliateBase won’t send the difference. If the affiliate is still owed it, send it from your Stripe Dashboard. If you reversed it on purpose, nothing else is needed.

When Stripe can’t reach the affiliate’s bank

The transfer to the affiliate’s Stripe account still counts. The payout stays paid. Stripe emails the affiliate so they can update their bank details in Stripe, and then pays them out. You don’t need to send the payout again.

Record a payment made outside AffiliateBase

A Stripe payout page offers Record external payment only when every Stripe attempt for it was rejected by Stripe or fully reversed, or when it was never sent. While a Stripe transfer for the payout might still exist, the page explains that an earlier transfer still has to be checked in Stripe, and only Pay with Stripe or Retry Stripe transfer is available.

To record a payment, enter the Stripe payment reference and Actual payment date, confirm the payment was already made, then choose Record external payment.

Switch away from Stripe payouts

Change Payout method in Settings -> General to PayPal or Wise. AffiliateBase deletes your restricted key when you switch.

  • You can’t switch while any Stripe transfer is still being confirmed. Try again once they finish.
  • Payouts already created for Stripe can’t be exported to PayPal or Wise after you switch. Pay them outside AffiliateBase and use Record external payment.

Troubleshooting

Stripe Payouts isn’t in the settings menu

Stripe payouts aren’t available for your account yet. Use PayPal or Wise.

Turn on Stripe payouts doesn’t appear

The button appears only after every checklist item passes. Fix each item marked Needs attention, then choose Run checks again.

An affiliate can’t be selected in New Payouts

Read the line under their amount and see Run Stripe payouts. Most often they haven’t connected Stripe yet or Stripe needs more details from them.

New Payouts says Stripe payouts are turned off

Stripe payouts aren’t available for your account right now, and Create payouts is disabled. Transfers already sent are still confirmed. Contact AffiliateBase support.

Next steps