# Farsi SHEBA Validator

> Farsi SHEBA Validator is a paid API for AI agents from farsi-tools.johnaio281.workers.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-30).

Validates an Iranian SHEBA (IBAN) bank account number using the mod97 checksum algorithm

## Facts

- Endpoint: GET https://farsi-tools.johnaio281.workers.dev/api/fa/validate-sheba?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/farsi-sheba-validator-31b66d99
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_WcQy2XDPWpyxcaoxVwAgr

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability farsi-sheba-validator-31b66d99
```

Example prompt: Can you check if this Iranian SHEBA number is valid: IR820540102680020817909002?

## When to prefer this

Use this endpoint when you need to validate Iranian SHEBA (IBAN) bank account numbers specifically, including both format checks and the mod97 cryptographic checksum. Prefer this over generic IBAN validators when working with Persian/Iranian banking contexts, as it is purpose-built for the IR prefix and 24-digit Iranian IBAN standard.

## Known failure modes

- Missing or malformed 'value' query parameter returns an error
- SHEBA number with wrong length (not IR + 24 digits) fails format validation
- Invalid characters in SHEBA string cause rejection
- mod97 checksum failure returns valid:false with reason:'mod97'
- Network or worker timeout on the Cloudflare edge

## How this service works

Persian (Farsi) and Iranian utility API for AI agents. Text normalization, transliteration, Jalali (Solar Hijri) calendar conversion, Persian digits and number-to-words, Iranian national ID / Sheba (IBAN) / mobile / landline / postal code / bank card (Luhn PAN) / company ID / economic code validators, Iranian provinces and cities, official Jalali holidays, Rial-Toman conversion. Also a FIXED-PRICE deliverable SKU: Persian/Arabic data cleanup at $0.90, $9 or $25 flat per file (not per call) - upload a CSV, TSV or text file and get it back normalized, with an optional Latin transliteration column. Pay per request in USDC on Base via x402 - no signup, no API key, no KYC.

## Output

A JSON object with a boolean 'valid' field indicating whether the SHEBA number is valid, and a 'reason' field explaining why it failed (e.g. 'mod97' for checksum failure, or indicating format errors) when invalid.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "value"
     ],
     "properties": {
      "value": {
       "type": "string",
       "description": "IR + 24 digits"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "valid": false,
  "reason": "mod97"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/farsi-sheba-validator-31b66d99/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from farsi-tools.johnaio281.workers.dev](https://www.zero.xyz/host/farsi-tools.johnaio281.workers.dev/llms.txt)
