Topping up your platform account

    With Connect, you can add funds to your platform balance from a linked bank account. At the present time, this is only available to U.S. platforms.

    Platforms can use Top-ups to add funds to their Stripe balance as part of their normal business operations. There are a number of different use cases for Top-ups, including:

    • Paying bonuses or other one-off payouts, independent of specific charges
    • Providing customer discounts while still paying full price for goods or services to sellers
    • Adding funds from non-Stripe income (e.g., checks or funds from another processor)
    • Enabling faster payouts (e.g., pay a vendor before incoming funds become available)

    Requirements

    All of these requirements must be met to use Top-ups:

    • Your platform and the connected account receiving top-up funds are in the U.S.
    • Your platform is on a manual payout schedule.
    • Your platform profile is approved. You can check the status in your settings after completing the platform profile.

    Verifying your bank account

    You must use a verified bank account to top up your platform account. You’ll go through the verification process in the Dashboard when you first attempt to create a top-up from an unverified bank account.

    To initiate a top-up, go to the Balance section in the Dashboard.

    If your bank account is unverified, you’ll need to confirm two microdeposits from Stripe. These deposits will appear on your online banking statement within 1-2 business days. You’ll see AMNTS for the statement description and the values of the two microdeposits.

    Stripe will notify you in the Dashboard and via email when the microdeposits should have arrived in your account. To complete the verification process, click the Dashboard notification in the Balance section, enter the two microdeposit amounts, and click Verify account.

    Creating Top-ups

    Use the Dashboard or the API to create a top-up.

    Dashboard

    1. In the Dashboard, go to the Balance section.
    2. In the Top up balance window, enter an amount in USD.
    3. In the resulting modal window (shown below), enter an amount in USD.
    4. Verify the top-up amount and then click Top up balance.
    5. After the funds are available in your platform’s Stripe balance, you can transfer funds to a connected account via the API or the Dashboard. In the Dashboard, transfer funds to a connected account by clicking Send funds in the the Balance section on the connected account’s detail page.

    API

    curl https://api.stripe.com/v1/topups \ -u sk_test_4eC39HqLyjWDarjtT1zdp7dc: \ -d amount=2000 \ -d currency=usd \ -d description="Top-up for week of May 31" \ -d statement_descriptor=Top-up
    # Set your secret key. Remember to switch to your live secret key in production! # See your keys here: https://dashboard.stripe.com/account/apikeys Stripe.api_key = 'sk_test_4eC39HqLyjWDarjtT1zdp7dc' topup = Stripe::Topup.create({ amount: 2000, currency: 'usd', description: 'Top-up for week of May 31', statement_descriptor: 'Top-up', })
    # Set your secret key. Remember to switch to your live secret key in production! # See your keys here: https://dashboard.stripe.com/account/apikeys stripe.api_key = 'sk_test_4eC39HqLyjWDarjtT1zdp7dc' topup = stripe.Topup.create( amount=2000, currency='usd', description='Top-up for week of May 31', statement_descriptor='Top-up', )
    // Set your secret key. Remember to switch to your live secret key in production! // See your keys here: https://dashboard.stripe.com/account/apikeys \Stripe\Stripe::setApiKey('sk_test_4eC39HqLyjWDarjtT1zdp7dc'); $topup = \Stripe\Topup::create([ 'amount' => 2000, 'currency' => 'usd', 'description' => 'Top-up for week of May 31', 'statement_descriptor' => 'Top-up', ]);
    // Set your secret key. Remember to switch to your live secret key in production! // See your keys here: https://dashboard.stripe.com/account/apikeys Stripe.apiKey = "sk_test_4eC39HqLyjWDarjtT1zdp7dc"; Map<String, Object> params = new HashMap<>(); params.put("amount", 2000); params.put("currency", "usd"); params.put("description", "Top-up for week of May 31"); params.put("statement_descriptor", "Top-up"); Topup topup = Topup.create(params);
    // Set your secret key. Remember to switch to your live secret key in production! // See your keys here: https://dashboard.stripe.com/account/apikeys const stripe = require('stripe')('sk_test_4eC39HqLyjWDarjtT1zdp7dc'); const topup = stripe.topups.create({ amount: 2000, currency: 'usd', description: 'Top-up for week of May 31', statement_descriptor: 'Top-up', });
    // Set your secret key. Remember to switch to your live secret key in production! // See your keys here: https://dashboard.stripe.com/account/apikeys stripe.Key = "sk_test_4eC39HqLyjWDarjtT1zdp7dc" params := &stripe.TopupParams{ Amount: stripe.Int64(2000), Currency: stripe.String(string(stripe.CurrencyUSD)), Description: stripe.String("Top-up for week of May 31"), StatementDescriptor: stripe.String("Top-up"), } t, _ := topup.New(params)
    // Set your secret key. Remember to switch to your live secret key in production! // See your keys here: https://dashboard.stripe.com/account/apikeys StripeConfiguration.ApiKey = "sk_test_4eC39HqLyjWDarjtT1zdp7dc"; var options = new TopupCreateOptions { Amount = 2000, Currency = "usd", Description = "Top-up for week of May 31", StatementDescriptor = "Top-up", }; var service = new TopupService(); var topup = service.Create(options);

    When you transfer funds, a statement descriptor appears on your banking statement for the transaction. The default statement descriptor is “Top-up.” You can customize the statement descriptor and internal description for the top-up.

    Viewing Top-ups

    View your top-ups in the Dashboard on the Top-ups tab under the Balance page. Each top-up has a unique ID in the format tu_XXXXXX, which you can see on the detailed view for the top-up.

    Settlement timing

    Top-ups can take 5-6 business days to become available in your Stripe balance. You can request a review of your account for faster settlement timing in the Dashboard.

    As we learn more about your account, Stripe might be able to decrease your settlement timing automatically.

    Testing Top-ups

    You can use the Dashboard or the API to test Top-ups. Refer to the Connect testing documentation for more details about testing Top-ups.

    Was this page helpful?

    Feedback about this page?

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page