# How to activate payouts in Stripe

- Tool: Stripe
- Difficulty: Beginner
- Time required: 10 minutes
- Compatibility: All Stripe accounts
- Last updated: March 2026

## TL;DR

Activate Stripe payouts by completing account verification and adding a bank account. Go to Dashboard → Settings → Payouts, add your bank account details (routing and account number), and ensure your identity verification is complete. Stripe holds payouts until your account is verified. Once activated, you can configure automatic payout schedules or trigger manual payouts.

## Getting Stripe Payouts Working

Stripe payouts transfer your available balance to your bank account. Before payouts can start, you need to complete identity verification (KYC) and add a valid bank account. New accounts typically have a 7-14 day initial payout delay while Stripe processes your first transactions. Once activated, payouts happen automatically on your configured schedule — daily, weekly, or monthly.

## Before you start

- A Stripe account with Dashboard access
- Your bank account routing number and account number
- Identity verification documents (if not already submitted)

## Step-by-step guide

### 1. Complete account verification

Go to Dashboard → Settings → Account details. Complete all outstanding verification requirements — personal information, business information (if applicable), and identity documents. Payouts cannot be enabled until verification is complete.

**Expected result:** All verification requirements are met. The 'currently_due' list is empty.

### 2. Add a bank account

Go to Dashboard → Settings → Payouts → Add bank account. Enter your bank's routing number, your account number, and the account holder name. For US accounts, use your 9-digit ABA routing number. Stripe may verify the account with micro-deposits.

**Expected result:** Bank account is added and either immediately verified or pending micro-deposit verification.

### 3. Confirm micro-deposits (if required)

Stripe may send two small deposits (under $1) to your bank account for verification. These appear within 1-2 business days. Return to Dashboard → Settings → Payouts and enter the deposit amounts to confirm your bank account.

**Expected result:** Bank account verified. Payouts are now enabled.

### 4. Check payout status

Go to Dashboard → Balance to see your available balance and pending payouts. For new accounts, Stripe holds payouts for 7-14 days to manage risk. After this initial period, payouts follow your configured schedule.

```
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);

// Check balance
const balance = await stripe.balance.retrieve();
console.log('Available:', balance.available);
console.log('Pending:', balance.pending);

// Check account payout status
const account = await stripe.accounts.retrieve();
console.log('Payouts enabled:', account.payouts_enabled);
```

**Expected result:** You can see your available and pending balance, and confirm payouts are enabled.

### 5. Trigger a manual payout (optional)

If you don't want to wait for the automatic schedule, you can trigger a manual payout from the Dashboard (Balance → Pay out funds) or via the API.

```
const payout = await stripe.payouts.create({
  amount: 10000,    // $100.00
  currency: 'usd',
  description: 'Manual payout — March 2026',
});

console.log('Payout status:', payout.status);  // 'pending' or 'in_transit'
```

**Expected result:** A manual payout is initiated. Funds typically arrive in your bank within 2 business days (US).

## Complete code example

File: `payout-manager.js`

```javascript
require('dotenv').config();
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);

async function checkPayoutReadiness() {
  const account = await stripe.accounts.retrieve();
  const balance = await stripe.balance.retrieve();

  console.log('=== Payout Status ===');
  console.log('Payouts enabled:', account.payouts_enabled);
  console.log('Charges enabled:', account.charges_enabled);

  if (!account.payouts_enabled) {
    console.log('\nPayouts are disabled. Requirements:');
    console.log('Currently due:', account.requirements.currently_due);
    console.log('Errors:', account.requirements.errors);
    return;
  }

  console.log('\n=== Balance ===');
  balance.available.forEach(b => {
    console.log(`Available: ${b.amount / 100} ${b.currency.toUpperCase()}`);
  });
  balance.pending.forEach(b => {
    console.log(`Pending: ${b.amount / 100} ${b.currency.toUpperCase()}`);
  });
}

async function createManualPayout(amount, currency = 'usd') {
  try {
    const payout = await stripe.payouts.create({
      amount,
      currency,
      description: `Manual payout — ${new Date().toISOString().split('T')[0]}`,
    });
    console.log(`Payout created: ${payout.id}, status: ${payout.status}`);
    return payout;
  } catch (err) {
    console.error('Payout failed:', err.message);
    throw err;
  }
}

async function listRecentPayouts(limit = 10) {
  const payouts = await stripe.payouts.list({ limit });
  payouts.data.forEach(p => {
    console.log(`${p.id} | ${p.amount / 100} ${p.currency.toUpperCase()} | ${p.status} | ${new Date(p.arrival_date * 1000).toLocaleDateString()}`);
  });
}

module.exports = { checkPayoutReadiness, createManualPayout, listRecentPayouts };
```

## Common mistakes

- **Adding incorrect bank account details (wrong routing or account number)** — undefined Fix: Double-check numbers before submitting. Incorrect details cause payouts to fail, and returned payouts take 5-7 days. Contact your bank to confirm your routing and account numbers.
- **Expecting immediate payouts on a new account** — undefined Fix: New Stripe accounts have a 7-14 day initial payout delay. This is a standard risk management measure. Subsequent payouts follow your configured schedule (default: 2 business days for US).
- **Not completing identity verification before expecting payouts** — undefined Fix: Payouts are disabled until all verification requirements are met. Go to Dashboard → Settings → Account details and complete any pending items.
- **Trying to pay out more than the available balance** — undefined Fix: You can only pay out your available balance, not pending funds. Check stripe.balance.retrieve() to see what's available.

## Best practices

- Complete all verification requirements as soon as you create your account
- Double-check bank routing and account numbers before adding them
- Start with automatic daily payouts and adjust the schedule once your cash flow is established
- Monitor payout failures via the Dashboard and payout.failed webhooks
- Use the API to check balance and payout status programmatically
- Keep a backup bank account in case your primary bank rejects a payout
- For platforms using Stripe Connect, verify connected accounts before enabling payouts

## Frequently asked questions

### How long does it take to receive my first Stripe payout?

New accounts have a 7-14 day initial delay. After that, US payouts typically take 2 business days. Some accounts may be eligible for instant payouts for an additional fee.

### Why are my payouts disabled?

Payouts are disabled when verification is incomplete or your account has been flagged for review. Check Dashboard → Settings → Account details for any pending requirements or errors.

### Can I get instant payouts?

Stripe offers instant payouts to eligible accounts for a 1% fee (minimum $0.50). Funds arrive within 30 minutes to a linked debit card or eligible bank account. Check your eligibility in Dashboard → Settings → Payouts.

### What happens if a payout fails?

Failed payouts return the funds to your Stripe balance. The most common cause is incorrect bank details. Update your bank account information and the payout will be retried automatically.

### Can I pause payouts temporarily?

Yes. Go to Dashboard → Settings → Payouts and toggle off automatic payouts. Your balance accumulates until you resume payouts or trigger manual ones. RapidDev teams sometimes advise this during platform migrations.

---

Source: https://www.rapidevelopers.com/stripe-guide/how-to-activate-payouts-in-stripe
© RapidDev — https://www.rapidevelopers.com/stripe-guide/how-to-activate-payouts-in-stripe
