Voir aussi: les autres codes à barres Un Code 93 Le Code 93 a été développé afin d'améliorer la sécurité et la densité offertes par le code 39. C'est un code alphanumérique de longueur variable comprenant un check digit sur 2 caractères "C" et "K".

Il a été utilisé tout d'abord par la Poste Canadienne pour coder les compléments d'information concernant la distribution du courrier.

Alphanumérique, il permet de codifier : En plus de ces 43 caractères, le code93 définit 5 caractères spéciaux :
 ! , # , & , @ , Start/Stop

Le Code 93 Étendu permet de codifier d'autres caractères en combinant l'un des caractères spéciaux avec 1 caractère du Code 93 Standard.

Le lecteur interprète alors chaque paire de caractères comme un seul.

Un Code93 a toujours la structure suivante :
Start/Stop, "données", CheckDigit "C", CheckDigit "K", Start/Stop

Table des caractères Code 93 :

 Car   Val   Car   Val   Car   Val   Car   Val 
0 0 A 10 N 23 - 36
1 1 B 11 O 24 . 37
2 2 C 12 P 25 Esp 38
3 3 D 13 Q 26 $ 39
4 4 E 14 R 27 / 40
5 5 F 14 S 28 + 41
6 6 G 16 T 29 % 42
7 7 H 17 U 30 ! 43
8 8 I 18 V 31 # 44
9 9 J 19 W 32 & 45
    K 20 X 33 @ 46
    L 21 Y 34    
    M 22 Z 35    

Calcul des check digits :

Pour calculer les check digits "C" et "K", appliquer les règles suivantes :
  1. Prendre la valeur (0 à 46) de chaque caractère composant le code à barres (voir le tableau ci-dessus).
    Les caractères Start/Stop ne font pas partie du calcul des Check Digits.
  2. Assigner à chaque caractère son POIDS. 
    Le 1er caractère de droite a un poids de 1 ,
    le second un poids de 2 et ainsi de suite. 
    Après 20 la séquence recommence avec un poids de 1.
  3. Multiplier la valeur de chaque caractère par son poids et faire la somme de tous les résultats.
  4. Diviser le résultat par 47 le reste de la division est le Check Digit "C", sa valeur indique le caractère qui le représente dans le code93.
  5. Ajouter le CheckDigit "C" à la fin des données et répéter les étapes 1 à 4. MAIS cette fois le poids va de 1 à 15 (et non de 1 à 20 comme pour "C"). 
    Le résultat est le Check Digit "K".

Exemple de calcul :

Données =  C  O  D  E     9  3
Valeurs = 12 24 13 14 38  9  3
POIDS C =  7  6  5  4  3  2  1

Calcul de C :
(1*3) + (2*9) + (3*38) + (4*14) + (5*13) + (6*24) + (7*12) = 484
484 / 47 = 10 reste 14
C = E

Données =  C  O  D  E     9  3  E
Valeurs = 12 24 13 14 38  9  3 14
POIDS K =  8  7  6  5  4  3  2  1

Calcul de K :
(1*14) + (2*3) + (3*9) +(4*38) + (5*14) + (6*13) + (7*24) + (8*12) = 611
611 / 47 = 13 reste 0
K = 0

Le code93 sera donc composé des caractères :

Start/StopCODE 93E0Start/Stop
Code93