ForHosting KIT · Outils pour développeurs

Validateur de carte PAN indienne

AAAPL1234C est un PAN valide de personne physique : cinq lettres, quatre chiffres et une lettre finale, avec le P en quatrième position. Collez un PAN pour contrôler sa structure et voir quel type de titulaire désigne la quatrième lettre. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Pan
AAAPL1234C
Vous obtenez
Entrée
AAAPL1234C
Formaté
AAAPL 1234 C
Code d'entité
P
Type d'entité
Individual

Le Permanent Account Number (PAN) indien est un identifiant fiscal alphanumérique de dix caractères délivré par l'Income Tax Department. Chaque PAN suit une structure publique fixe : cinq lettres, quatre chiffres et une lettre finale. Le quatrième caractère n'est pas une décoration : il encode la classe d'entité du titulaire (personne physique, société, Hindu Undivided Family, firme, association de personnes, trust, body of individuals, autorité locale, personne juridique artificielle ou gouvernement). Les formulaires, flux KYC, imports de paie et scripts d'onboarding ont constamment besoin d'un contrôle structurel rapide avant une consultation plus lente du registre. Ce validateur de carte PAN indienne normalise espaces et tirets, applique le motif officiel, mappe le quatrième caractère vers un type d'entité lisible et renvoie un indicateur valid clair avec les parties décodées.

Structure d'un PAN indien et signification du quatrième caractère

Un Permanent Account Number comporte toujours exactement dix caractères lorsque les séparateurs sont retirés. Les positions un à trois forment une série alphabétique choisie par le système d'attribution.

La position quatre est la lettre de type d'entité définie par l'Income Tax Department : P pour une personne physique, C pour une société, H pour une Hindu Undivided Family, F pour une firme, A pour une association de personnes, T pour un trust, B pour un body of individuals, L pour une autorité locale, J pour une personne juridique artificielle et G pour un organisme gouvernemental. La position cinq est en général la première lettre du nom de famille (personne physique) ou du nom de l'entité (non-personnes).

Les positions six à neuf sont une séquence de quatre chiffres de 0001 à 9999. La position dix est un caractère alphabétique final attribué avec le numéro ; contrairement au chiffre Verhoeff d'Aadhaar ou à la lettre modulo du DNI espagnol, ce caractère final n'est pas une somme de contrôle modulaire publique que vous pourriez recalculer à partir d'une table publiée, aussi cet outil n'en invente pas une.

La validation structurelle capte encore la grande majorité des fautes de frappe : mauvaise longueur, chiffres dans des emplacements de lettres, lettres dans des emplacements de chiffres, et code d'entité hors de l'ensemble officiel.

Quel est le format d'un PAN indien ?

Un PAN compte dix caractères : cinq lettres, quatre chiffres et une lettre finale (par exemple AAAPL1234C). Espaces et tirets peuvent apparaître sur les documents mais ce validateur les ignore.

Que signifie le quatrième caractère d'un PAN ?

C'est le code de type d'entité. P est Individual, C Company, H HUF, F Firm, A Association of Persons, T Trust, B Body of Individuals, L Local Authority, J Artificial Juridical Person et G Government.

Cet outil contacte-t-il l'Income Tax Department ou NSDL ?

Non. Il ne vérifie que le motif structurel public et décode la lettre de type d'entité. Il ne prouve pas qu'un PAN est attribué, actif ou lié à une personne.

Combien coûte le validateur de carte PAN indienne ?

L'outil navigateur est gratuit. Un format valide n'est pas une preuve d'enregistrement fiscal ni d'identité.

L'outil vérifie-t-il la dernière lettre du PAN ?

Seulement qu'il s'agit bien d'une lettre. Contrairement à d'autres identifiants, la lettre finale du PAN n'est pas un contrôle public recalculable à partir d'une table : l'outil vérifie donc la structure et le code d'entité sans inventer de contrôle.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/enc/pan-india

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/enc/pan-india \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"pan":"AAAPL1234C"}'
{
  "pan": "AAAPL1234C"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.pan_india",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Les chaînes complètement mal formées échouent avec invalid_input au lieu d'inventer un numéro. Utilisez-le gratuitement dans le navigateur ou appelez l'API KIT au prix publié ; les deux chemins appliquent les mêmes règles déterministes sans appel réseau à NSDL ni UTIITSL.

Structure d'un PAN indien et signification du quatrième caractère

Lorsque le motif correspond et que le quatrième caractère est l'un des dix codes connus, valid vaut true et entity_type nomme la classe. Lorsque le motif correspond mais que la quatrième lettre n'est pas un code d'entité reconnu, valid vaut false et entity_type vaut Unknown afin que l'appelant puisse surligner le quatrième caractère sans traiter toute la chaîne comme du bruit. Une entrée complètement cassée ne renvoie jamais un PAN synthétique ; elle lève invalid_input avec un message qui nomme le problème de longueur ou de classe de caractères.

Contrat d'entrée, champs de réponse et comportement de la validation

Espaces, points, tirets, underscores et barres obliques sont supprimés et les lettres passées en majuscules avant le contrôle du motif, de sorte que des valeurs comme AAAPL un deux trois quatre C ou AAA-PL-1234-C se parsent encore. Après normalisation, le moteur exige l'expression régulière de cinq lettres majuscules, quatre chiffres et une lettre majuscule. Envoyez en POST un corps JSON avec un champ chaîne obligatoire nommé pan. Les alias text, input, value, number, s et id sont acceptés afin que les clients légers et les zones de texte génériques réutilisent le même endpoint sans renommer les champs. En cas de succès, la réponse renvoie l'input original tronqué, la chaîne pan nettoyée, un champ formatted d'affichage avec des espaces autour du bloc de chiffres, valid true ou false, entity_code comme le quatrième caractère unique, entity_type comme l'étiquette anglaise décodée, series comme les trois premières lettres, name_initial comme le cinquième caractère, sequence comme les quatre chiffres, check_letter comme le dixième caractère, length dix, scheme pan_india et entity_codes listant l'alphabet officiel du quatrième caractère pour les légendes côté client. Chaînes vides, pan manquant, nombres purs, mauvaises longueurs, caractères illégaux mélangés et motifs qui ne sont pas cinq-plus-quatre-plus-un lèvent invalid_input et ne sont pas facturés. Comme le chemin est du parse pur, sans horloge, source aléatoire ni réseau, la même entrée produit toujours le même JSON sur l'outil gratuit du navigateur et sur l'API. Les appels réussis coûtent le prix de base publié de $0.002 par élément ; l'outil dans le navigateur reste gratuit pour les contrôles interactifs. Préférez cet endpoint spécialisé lorsque vous avez besoin du type d'entité décodé dans le corps de la réponse, et non seulement d'un booléen issu d'un vérificateur générique multi-pays d'identifiants fiscaux.

Où les contrôles de format PAN s'intègrent au KYC, à la paie et aux pipelines

Les formulaires d'onboarding et de KYC pour clients indiens demandent souvent de saisir un PAN avant la signature électronique ou le rattachement bancaire. Les sites de contenu qui se positionnent sur validateur de carte pan indienne ou vérificateur de format pan bénéficient d'un outil en direct dont le chemin gratuit du navigateur correspond octet pour octet à l'automatisation payante. Ne traitez pas un contrôle structurel réussi comme une preuve d'identité, d'attribution, de statut fiscal ou d'autorisation d'agir au nom de quelqu'un : il prouve seulement que la chaîne de chiffres et de lettres est cohérente avec la structure publique du PAN et un code de type d'entité reconnu. Valider le motif de dix caractères et la lettre de type d'entité à la bordure du navigateur ou de l'API bloque les fautes de frappe évidentes avant d'écrire un enregistrement et avant d'appeler tout service fiscal ou de paiement en aval. Les imports de paie et RH reçoivent des identifiants d'employés depuis des tableurs où un seul chiffre permuté rejetterait un lot entier ; un oracle déterministe qui renvoie pan, valid et entity_type permet de marquer les lignes sans appeler des portails gouvernementaux pour chaque ligne. Les tests d'intégration de pipelines OCR peuvent affirmer qu'une chaîne nettoyée de dix caractères soit se valide, soit est rejetée avec un message clair invalid_input lorsqu'il reste du bruit.

Filtrer les champs PAN sur formulaires web et mobiles

Lorsqu'un utilisateur soumet un PAN, validez le motif cinq-quatre-un et affichez entity_type pour étiqueter correctement personnes et sociétés avant d'enregistrer le formulaire.

Noter les lignes des imports de paie et CRM

Vérifiez par lot chaque colonne PAN, mettez en quarantaine les lignes où valid est false ou invalid_input est levé, et conservez entity_code pour les rapports par segment.

Construire des fixtures PAN synthétiques pour les tests

Générez des chaînes d'exemple bien formées avec des codes d'entité connus et affirmez que l'API renvoie le entity_type attendu et valid true dans les tests golden.

Que se passe-t-il si la quatrième lettre n'est pas un code d'entité connu ?

Si le motif global reste cinq lettres, quatre chiffres et une lettre, la réponse renvoie valid false et entity_type Unknown. Les chaînes complètement mal formées échouent avec invalid_input.

Consulter la documentation complète du KIT →