Stripe, payment succeeds
- Input
- 110000000 / 000123456789
- Expected output
- Checksum 10 válido; pagamento aprovado
This is the combination most used in ACH tutorials.
test routing number for sandbox
Generating a routing number that passes the checksum is easy. Guaranteeing it belongs to no real bank is not. For integration tests the safe path is to use the numbers providers publish for their own test environments, listed here with the outcome each one triggers.
This is the combination most used in ACH tutorials.
Same routing, different outcome: the account number decides.
This one uses a real prefix, so it is the only one on the list besides 110000000 that the validator marks fully valid.
The validator flags the prefix on purpose: that is exactly what makes the number artificial.
Multiply the 9 digits by the weights 3, 7, 1, 3, 7, 1, 3, 7, 1 and add them up: the number is valid when the total is a multiple of 10. To find the ninth digit, add only the first 8 products and take 10 minus the remainder after dividing by 10 (0 if the remainder is 0). In 111000025 the first 8 products add up to 3+7+1+0+0+0+0+14 = 25, 5 short of 30, so the ninth digit is 5.
No. They only work in the provider's test environment. In production they match no real account, so the payment does not complete.
It can. Providers change their test tables, so the tool shows the date of the last check and links each official page. Confirm there before hardcoding the number in an automated test.
For a form that only looks at length, yes, but any checksum validator rejects it: 123456789 sums to 159 and the remainder is 9. Its neighbor 123456780 sums to 150 and passes, which is the kind of filler number tests tend to use. Prefer the documented ones whenever a provider is in the loop.
1100-0000-0
| Digit | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
|---|---|---|---|---|---|---|---|---|---|
| Weight | 3 | 7 | 1 | 3 | 7 | 1 | 3 | 7 | 1 |
| Product | 3 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
3 + 7 + 0 + 0 + 0 + 0 + 0 + 0 + 0 = 10 | 10 mod 10 = 0
Everything runs in your browser. No number you type or generate is sent to a server, and analytics only receives the action and the overall result, never the number.