DEV Community

yas
yas

Posted on • Updated on

Predictable Pan Card Generation Algorithm.

In any fintech company in India, an important data point is the user's pan number which is used as primary identification.

A common strategy used in creating test users in such an application is generating a random pan number but one drawback with this approach is any newly generated pan should be checked against the database if it already exists to avoid a collision.

The better way is to serially generate the pan numbers to avoid a collision.

I believe it's an interesting problem of generating Pan Card numbers serially so I wrote an algorithm to do the same which would predictably generate a pan card number for a given number x.

Github: pan-number-generator

This could be used be imported in test cases to generate unique pan numbers and while masking pan data for production dumps.

The series would go as:

  'AAAAA0000A',
  'AAAAA0000B',
  'AAAAA0000C',
  'AAAAA0000D',
  'AAAAA0000E',
  'AAAAA0000F',
  'AAAAA0000G',
  'AAAAA0000H',
  'AAAAA0000I',
  'AAAAA0000J',
  'AAAAA0000K',
  'AAAAA0000L',
  'AAAAA0000M',
  'AAAAA0000N',
  'AAAAA0000O',
  'AAAAA0000P',
  'AAAAA0000Q',
  'AAAAA0000R',
  'AAAAA0000S',
  'AAAAA0000T',
  'AAAAA0000U',
  'AAAAA0000V',
  'AAAAA0000W',
  'AAAAA0000X',
  'AAAAA0000Y',
  'AAAAA0000Z',
  'AAAAA0001A',
  'AAAAA0001B',
  'AAAAA0001C',
  'AAAAA0001D',
  'AAAAA0001E'
Enter fullscreen mode Exit fullscreen mode

Top comments (0)