SARS Testing Tools
1 rating
)Overview
Generate valid South African tax reference numbers for testing — SA ID, Income Tax, Company Reg, PAYE, UIF, SDL.
Generate valid South African Revenue Service reference numbers — and paste them straight into your test forms. SARS Testing Tools is a lightweight Chrome extension that generates structurally valid South African tax-related reference numbers. Built for QA testers, developers, and anyone who needs realistic test data for South African financial and tax systems. What it generates - SA ID Numbers: 13-digit identity numbers with correct Luhn check digits. Configure date of birth range, gender (male/female/any), and citizenship status (SA citizen/permanent resident). - Income Tax Numbers: 10-digit personal income tax reference numbers with valid SARS Modulus 10 check digits. Filter by starting digit (0, 1, 2, 3, or 9). - Company Registration Numbers: Formatted as YYYY/NNNNNN/XX with 14 supported type codes including Pty Ltd (07), Ltd Public (08), Close Corporation (10), Co-operative (24), and more. Configure year range and type code. - PAYE Reference Numbers: 10-digit Pay As You Earn reference numbers with valid check digits. Filter by starting digit (0, 1, 2, 3, 7, or 9). - UIF Reference Numbers: SARS-issued Unemployment Insurance Fund numbers in the format U + 9 digits with valid SARS Modulus 10 check digits. - SDL Reference Numbers: Skills Development Levy numbers in the format L + 9 digits with valid SARS Modulus 10 check digits. - Labour UIF Numbers: Department of Labour–issued UIF reference numbers in the format NNNNNNN/N with a valid weighted check digit. Distinct from the SARS UIF reference above — many South African employer forms ask for both. Features - All view: open the popup and see one freshly-generated value for every reference type in a single panel. Click "Regenerate All" to refresh the whole set, or regenerate a single row with one click. - Paste into forms: with "Paste All in form" or per-row Paste buttons, the extension fills matching fields on the active web page using label, placeholder, name, and aria-label heuristics. Existing values you've already typed are never overwritten. Works with React, Vue, and Angular forms via native event dispatch. The popup reports exactly which fields were filled and which weren't found. - Coherent employer identifiers: in the All view, PAYE, UIF, and SDL share a common body so the three values stay consistent — useful when testing employer-registration forms that validate consistency across these fields. - Clean tabbed interface: tabs are sorted alphabetically and auto-generate fresh values the moment you select them. - Configurable filters: date ranges, gender, citizenship, starting digits, company type codes. - Batch generation: generate 1, 3, 5, 10, or 25 numbers at a time per type. - One-click copy: copy individual results or all results at once. - Correct validation: all check digits are computed using the same algorithms used in production tax systems. - No network requests: everything runs locally in your browser. - No data collection: your generated numbers are never sent anywhere. Who is this for? - QA testers validating South African tax and financial systems - Developers building applications that accept SA tax reference numbers - Anyone who needs structurally valid test data without using real personal information Permissions - clipboardWrite: needed for the Copy and Copy All buttons. - activeTab and scripting: used only when you click "Paste All in form" or a per-row Paste button. The extension fills the form on the page you're currently viewing — no background tabs, no other sites, no data leaves your browser. Validation algorithms SA ID numbers use the standard Luhn algorithm. The 13th digit is a check digit computed over the first 12 digits, matching the validation used by the South African Department of Home Affairs. Income Tax, PAYE, UIF, and SDL numbers use the SARS Modulus 10 algorithm: digits at even positions are doubled (subtract 9 if the result exceeds 9), all values are summed, and the check digit is (10 - sum mod 10) mod 10. For PAYE, UIF, and SDL numbers, the first character is substituted with 4 before computing the check digit. Labour UIF numbers (NNNNNNN/N) use a weighted mod-11/mod-10 algorithm: the seven payload digits are multiplied by weights [1, 2, 4, 5, 7, 8, 2] respectively, each product is reduced mod 11, the remainders are summed, and the check digit is sum mod 10. Company Registration numbers follow the YYYY/NNNNNN/XX format with valid type codes as defined by CIPC. Important disclaimer All generated numbers are for testing purposes only. They are structurally valid but do not correspond to real individuals, companies, or tax registrations. Do not use them for fraud, misrepresentation, or any unlawful purpose. Open source This extension is open source under the MIT license. Contributions and feedback are welcome on GitHub: https://github.com/penkin/SARS-Testing-Tools-Browser-Extension
4 out of 51 rating
Details
- Version1.1.0
- UpdatedMay 28, 2026
- Offered byChristopher Penkin
- Size22.18KiB
- LanguagesEnglish (United Kingdom)
- DeveloperChristopher Brian Penkin
3 Liebenberg St Roodepoort 1709 ZAEmail
chris@penkin.mePhone
+27 81 382 1298 - TraderThis developer has identified itself as a trader per the definition from the European Union and committed to only offer products or services that comply with EU laws.
Privacy
This developer declares that your data is
- Not being sold to third parties, outside of the approved use cases
- Not being used or transferred for purposes that are unrelated to the item's core functionality
- Not being used or transferred to determine creditworthiness or for lending purposes
Support
For help with questions, suggestions, or problems, please open this page on your desktop browser