{"x402Version":2,"name":"verza","description":"South African verification and KYB checks: identity number validation with safe decode, VAT number validation, NCA credit-agreement lawfulness verdicts against the Regulation 42 interest caps, and bulk validation of up to 50 identifiers in one settled call. CIPC company lookup in development. Every check states what it does and does not confirm, and invalid input is rejected free with a 400 before any payment. Paid per call via the x402 protocol (USDC on Base), no account needed. A free API key tier is available at /signup.","url":"https://verza.dev","payment":{"scheme":"exact","network":"eip155:8453","asset":"USDC","payTo":"0x6382E6929A20B7Eb02BdACfb5368362984B24C15","facilitator":"coinbase-cdp"},"free":["/catalog","/v1/vat-validate","/llms.txt","/openapi.json","/mcp","/.well-known/x402.json"],"resources":[{"url":"https://verza.dev/v1/id-validate","method":"GET","price":"$0.01","description":"Structural validation of a South African identity number with safe decode: Luhn check digit, birth date, gender and citizenship segments (citizen or permanent resident). The structural step in KYC, KYB and customer onboarding or due diligence workflows: derive date of birth, age, gender and citizenship without storing the identity. Run it before a paid registry lookup rather than instead of one: a Home Affairs check is priced in rands per query, so screening structurally first means you never spend one on a number that could not have been issued. Stateless, never stored or logged (POPIA-conscious by construction). Confirms structure only, not registration with Home Affairs. Also callable as /v1/id-validate/{id}.","params":{"id":"string, required: the 13-digit SA identity number"},"example":"https://verza.dev/v1/id-validate?id=8001015009087"},{"url":"https://verza.dev/v1/loan-check","method":"GET","price":"$0.25","description":"Independent lawfulness check of a South African credit agreement's interest rate against the National Credit Act (NCA) Regulation 42 maximum rate caps, the statutory interest rate cap that replaced the old usury limits: the maximum rate is fixed at the repo rate on the date the agreement was concluded. Covers every Reg 42 credit type including mortgage agreements, credit facilities, unsecured credit, short-term credit and developmental credit. Verdict, exact cap, excess and full workings, from daily-audited SARB and gazette data, for credit providers, compliance teams and the interest-rate limb of a reckless-lending or affordability review. Covers every agreement under the current Regulation 42 table (concluded 2016-05-06 or later). Also callable as /v1/loan-check/{credit_type}/{annual_rate_percent}/{date_concluded}.","params":{"credit_type":"string, required: unsecured | mortgage | credit_facility | developmental | other | short_term | incidental","annual_rate_percent":"number, required for repo-linked types (unsecured, mortgage, credit_facility, developmental, other): the annual interest rate charged","date_concluded":"date YYYY-MM-DD, required for repo-linked types: the date the agreement was entered into","monthly_rate_percent":"number, for monthly-capped types (short_term, incidental): the monthly interest rate charged","subsequent_loan":"true or false, short_term only: a subsequent loan in the same calendar year (3% per month cap instead of 5%)","monthly_service_fee_zar":"number, optional: the monthly service fee charged, checked against the cap"},"example":"https://verza.dev/v1/loan-check?credit_type=unsecured&annual_rate_percent=28.5&date_concluded=2024-03-15"},{"url":"https://verza.dev/v1/bulk-validate","method":"POST","price":"$0.05","description":"Validate up to 50 South African identifiers in one settled call: ID numbers, VAT numbers, or a mix. Batch screening of a customer or supplier list for structurally invalid South African identifiers, for onboarding, KYC and KYB compliance clean-ups. Same checks and same honest scope as the single endpoints, with a summary of how many passed. Cheaper than five individual ID checks and a single round trip instead of fifty.","params":{"ids":"array of 13-digit SA ID numbers, at least one: up to 50 combined with vats","vats":"array of SA VAT numbers, optional: up to 50 combined with ids"},"example":"https://verza.dev/v1/bulk-validate","example_body":{"ids":["8001015009087","0501015009084"],"vats":["4012345676"]}}],"discovery":{"catalog":"https://verza.dev/catalog","openapi":"https://verza.dev/openapi.json","llms":"https://verza.dev/llms.txt"}}