Troubleshoot donations made via ACH/direct debit
Not seeing an ACH payment? ACH donations rejected by Stripe? Here are some important things to note about ACH payments.
Before You Get Started
Notes about ACH payment delays
- It can take up to 5 business days to receive acknowledgment of the success or failure of ACH payments.
- When created, ACH charges have an initial status of "pending." A pending ACH transaction immediately reflects the payment amount minus the Stripe fee.
- During the next 4 business days, the payment will either transition to "succeeded" or "failed," depending on the customer’s bank. Failures can happen for a number of reasons, such as insufficient funds, an incorrect account number, or donors disabling debits from their bank accounts.
- Failed ACH payments will reverse the pending balance transaction created.
- You will not see an ACH payment in Salesforce until it has successfully cleared.
- Successful ACH payments will be reflected in your Stripe available balance after 7 business days, at which point the funds are available for automatic or manual transfer to your bank account.
- Notably, donors will see the payments reflected on their bank statements 1-2 days after creating the charge. (Donors know their payments succeeded before banks notify nonprofits via Stripe.)
Limits on the use of ACH transfers
Unfortunately, Stripe does not allow for unlimited donations through ACH transfers.
If a donor attempts to make a contribution in excess of these limits, the donor will receive an error message, as follows:
If the donation is for more than $2,000: "Apologies, we are currently unable to process a bank account payment above $2,000 in a single transaction. Please consider splitting your donation into multiple bank transactions of up to $2,000 each, or making a $2,000 donation via your bank with the rest to follow via credit or debit. We apologize for the inconvenience. We’re so grateful for your support."
If the donation takes the weekly tally over $10,000: "Apologies, we are currently unable to process your bank account payment. We have a weekly limit of $10,000 on direct bank donations and your generous contribution has pushed us over that limit. Please consider making your donation now by credit or debit instead, or making a second attempt by bank transfer on Monday, when our weekly tally is reset to 0. We apologize for the inconvenience. We’re so grateful for your support.”
Fines for failed or disputed ACH/direct debit payments
Stripe has a couple of fines to keep in mind:
- $4.00 for failed ACH/direct debit payments
- $15.00 for disputed ACH/direct debit payments
Troubleshooting ACH donation errors (in the Stripe Developers Logs)
Stripe's Developers Logs are where you will find a running report of any errors your nonprofit's donors may be facing. If you are contacted by a donor with word of an unsuccessful donation or an error message, the best source of information about that error is the Developers Logs.
Here's how to visit the record of failed donations in the Developers Logs:
- Sign in to Stripe and click on "Developers" in the left-hand navigation.
- This will open a submenu. Choose "Logs".
- On the new screen, click on "Filter" at the top left of the data list.
- Click the check box next to "Success / failure" and then choose "request failed" in the dropdown that opens directly beneath it.
- Click the blue "Done" button at the top right of the Filter box.
- The resulting page is a list of failed donations, each one registered with an error status (usually '400 ERR' or '402 ERR') and noted with the date and time of the donation attempt.
- Click on any line to view the specifics of the error associated with the donation attempt. This will be found in the "message" line of the "Response body" box. (For more information about specific errors, see directly below.) In the "Request POST body" box, you will find the name and email address of the donor, should followup be useful.
Common ACH donation errors
Once you have accessed the Stripe Developers Logs (see directly above), the most common errors -- and recommended solutions -- are as follows:
ACH not activated
Error message: ”This bank account is not a valid source for payments. Only valid sources can be attached to a customer. ... The particular issue is: You must accept the Terms of Service for ACH at stripe.com/docs/guides/ach before adding US bank accounts to customers.”
$2000-per-transaction ACH limit has been exceeded
Error message: "Your account currently does not support bank account payment amounts greater than $2,000.00. The amount given was $[donation amount]. Please contact Stripe support if you'd like to increase this limit."
Actions: Contact Stripe Support about the possibility of setting a higher processing limit to accommodate the donation.
Other error codes
Some error codes do not include a specific message. Instead, there is a link to an "Error codes" page on Stripe that lists all the possible error codes and the actions that can be taken to remedy the error.