Customer Service Training

This guide is primarily for customer service teams. It explains some basics about Stripe, and how to use the Stripe Dashboard. Understanding these topics ensures your customer service team is prepared to assist your connected accounts. While this guide isn't meant to be shared directly with your connected accounts, you can use the content to help educate them on Stripe and the Dashboard.

Stripe and Connect basics

You'll find this guide more helpful if you understand a little about Stripe and the Stripe Connect product. Stripe provides everything a business needs for internet commerce. This includes accepting online payments, but also functionality for paying sellers, fighting fraud, and more.

To accept payments, your application uses Stripe's technology to securely collect and send payment information to Stripe. Stripe then processes the payment information and passes it to the appropriate payment networks (e.g., credit card or ACH). Information sent between your company's application and Stripe uses the same protocols as web traffic, so this communication is standardized and safe.

Stripe Connect is a full-stack solution for using Stripe’s capabilities on behalf of others. This means your platform can send requests on behalf of other Stripe accounts (your users) that are connected to your platform. This functionality allows your platform to create charges, issue refunds, and pay sellers. This is an important concept because connected accounts often have questions about these topics.

Accessing and using the Stripe Dashboard

To assist your connected accounts, you need to have access to your platform's Dashboard so you can view information about payouts, charges, and more. Your connected accounts have their own Dashboards as well, which you can access from your platform's Dashboard. This is useful when assisting connected accounts because you can view the same information they see.

Stripe Dashboard reading list

Stripe Dashboard to-do list

Payment flows

The payment flow begins when your application collects payment information from a customer. This is most often credit card information, but Stripe supports other payment methods, too. This guide focuses on credit card payments, so some information might not apply to you. You can check with your engineering team or sales representative to find out more about the payment methods you accept.

Payment information is collected using either Checkout or a form built with Stripe Elements. In either case, after the payment information is collected, it's sent to Stripe. Stripe stores the information and generates an opaque ID that represents the payment information. This is called tokenization. Each opaque ID is a unique value that includes a string of randomized characters (e.g., tok_213A48c12 or pm_131sV23sd). This ID, along with other payment information, is sent back to your application's server.

Using this ID, your application can then make an API request to Stripe to create a charge, or can store the information so that it can be used for future payments. Whether payment information is stored or not, Stripe keeps a record of payment activity for every Stripe account.

While most charges end in successful payments, it's possible for charges to be declined, refunded, or disputed. The following sections describe these flows in more detail, and how to manage them.


Your connected accounts can use the Stripe Dashboard to issue refunds. If needed, you can also view a connected account’s Dashboard and issue a refund on their behalf.

Refund timing

Stripe submits refund requests to the customer’s bank or card issuer immediately. Generally, it takes 5–10 business days for the bank to process the refund and display it on the customer’s statement. If a refund occurs within minutes of the original charge, Stripe treats the refund as a reversal instead. This means no credit is issued for the refund and the original payment is removed from the customer’s bank statement, usually within one to two days. Because the reversal process is faster and the payment is removed, customers might never see the payment on their bank statement.

Refund requests can’t be canceled after Stripe receives them. The only way to reclaim a refunded amount is to create a new charge for the same value on the customer’s saved card. Refunds can be issued for any amount less than or equal to the original payment amount.

Refund time limit

Refunds should be submitted within 60 days. The longer you or your connected account waits, the more time customers have to change credit card information, close accounts, lose their credit cards, etc. All of these events can cause refunds to fail. At most, Stripe recommends submitting refunds within 60 days. This isn’t a hard requirement, but we generally see issues with refunds submitted after that.

If you or a connected account needs to submit a refund after 60 days, the create a refund API call can be used. Before submitting, contact your customer, and confirm that their original payment information is the same. If the refund needs to be issued to a different card or account than the customer used on the original charge, read about refund destinations.

Refunds reading list

Refunds to-do list

  • Know how to issue a refund using the Dashboard
    • Declines

      Failed payments are usually caused by card issuers declining payments, or by Stripe's fraud prevention tooling. The Understanding Declines and Failed Payments guide explains why payments fail, and actions you can take to prevent failures.

      Declines reading list

      Declines to-do list


      A dispute (also known as a chargeback) occurs when a cardholder questions a payment with their card issuer. Your connected accounts can enable the email notification for disputes setting to be notified automatically of disputes. If you also wanted to be notified of disputes, your engineering team can build a webhook endpoint using the charge.disputed.created event. This triggers when a dispute is created, but you can also listen for changes to disputes after they’re created (e.g., when they’re updated or when funds are withdrawn). Stripe recommends that you respond to disputes in the Dashboard, but you can also use the API.

      Disputes reading list

      Disputes to-do list


      Most issues around payouts arise when funds aren’t deposited by the time connected accounts expect them to be. To help resolve these issues, it helps to understand what payouts are, and when automatic payouts occur. For your connected accounts, payouts are funds in their Stripe balance that Stripe deposits into their bank account. Each payout consists of a set of transactions (charges, refunds, etc.).

      Automatic payouts are batched daily from midnight to midnight (UTC time), and are paid out in aggregate total (a single deposit is made that contains the sum of all the transactions). Your connected accounts receive their first payout 7–10 days after processing their first charges on Stripe. In the U.S., subsequent payouts are made daily, and include the credit and debit card payments that were processed two business days prior. For example, payments on August 1st are deposited by August 3rd, and payments on August 2nd are deposited by August 4th.

      ACH charges follow a different flow than credit and debit charges. Successful ACH charges are reflected in your connected account's Stripe balance 7 days after the charge is created. After that, the funds are available for automatic or manual payouts to your bank account. To learn more about ACH payments, see our support page.

      Payouts are deposited into bank accounts in the U.S. using ACH. You can read more about receiving payouts and payout schedules in our product documentation.

      Troubleshooting payouts

      When connected accounts report payout issues, work with them to verify:

      1. That it's not their first payout. If it is their first payout, they might be expecting it too soon, because the first payout takes 7–10 days.
      2. The scheduled payout date. Make sure the date isn't on a weekend or a bank holiday. Bank holidays in one country might affect payouts to banks in another country.
      3. The payout wasn't returned by the recipient’s bank. When Stripe is notified of a returned payout, we immediately update the status in the Dashboard and include the reason.
      4. The user hasn’t accidentally switched to manual payouts in their account settings.
      5. Stripe hasn't sent them an email requesting information.

      If you can't resolve the issue after following these steps, contact our support team for assistance. When you do, please provide:

      • Documentation (e.g., a voided check or a screenshot of a bank statement) that includes the account and routing number(s) the funds were expeceted to be deposited in.
      • The connected account's email address or account token (account tokens start withacct_).
      • The payout's token (payout tokens start with py_ and can be found in the Dashboard).

      Payouts reading list


      There are several financial reports you can download as CSV files from the Stripe Dashboard. These include monthly reports, individual payout summaries, dispute information, and more. Most of these reports can be found on the following Stripe Dashboard pages:

      If you have access to it, you can also analyize your financial data with Stripe Sigma. Stripe Sigma is an interactive SQL environment you can use to create custom queries and reports.

      Your connected accounts have access to these reporting tools as well. This includes their own monthly reports and the ability to download financial information as CSV files.

      Reports reading list

      Reports to-do list

Was this page helpful?

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

On this page