v:verza
verza / docs / vat-validation-api

South African VAT number validation API

A South African VAT registration number is ten digits, begins with a 4, and carries a check digit. verza validates that structure and tells you whether the number can be a valid VAT number at all.

This endpoint is free. No payment, no key, no account, because a structural check is cheap to run and it is the honest way to let an agent try the service before paying for anything. Use it to screen a supplier or customer VAT number before invoicing or claiming input VAT.

Endpoints

GET /v1/vat-validate FREE

Structural validation of a South African VAT registration number (VAT vendor number): 10 digits, leading 4, check digit. Use it to screen a supplier or customer VAT number before invoicing or claiming input VAT. Free. Confirms format only, not active SARS registration.

free, no payment challenge · example: /v1/vat-validate?vat=4012345676

How agents pay

No accounts and no API keys. A paid endpoint replies HTTP 402 with the exact payment requirements; an x402 client pays USDC on Base (about two seconds to settle) and retries automatically. Invalid input is rejected with a free 400 before any payment is challenged, so an agent never pays to learn it made a typo.

Questions

How do I check a South African VAT number?
GET /v1/vat-validate?vat=4012345676. It returns whether the number is structurally valid, with the reason when it is not. The endpoint is free and answers without a payment challenge.
Is the VAT validation really free?
Yes. It answers without a 402, as does the catalog. Everything else on verza is paid per call over x402.
Does a valid result mean the business is VAT registered?
No. It confirms the number's format and check digit only. It does not confirm active registration with SARS, and the response says so rather than implying a lookup it did not perform.
What makes a VAT number structurally invalid?
Anything other than ten digits, a first digit other than 4, or a failing check digit. Each is reported with the specific reason instead of a bare false.

Related

South African ID number validation API NCA credit agreement lawfulness API South African KYB and onboarding API zaref: NCA maximum interest rates