Citizen Card Generator
Portuguese Citizen Card document number — 12 characters, digits plus a 3-letter series.
Portugal Validation Generation
How generation works
The Citizen Card generator builds a structurally valid sample using the same rules the validator enforces — check digits included. Use it for test data and fixtures; never for production records.
Install the package
dotnet add package DocumentNumber.Portugal.CitizenCard.Generator
Generator in C#
using DocumentNumber.Portugal.CitizenCard.Generator;
var generator = new CitizenCardNumberGenerator();
var sample = generator.GenerateDocumentNumber();
Console.WriteLine(sample);
Live example
835099610IP8 — a real Citizen Card value accepted by the validator
Try Citizen Card generation
Runs the exact same library code your application uses. Nothing you enter is stored.
Frequently asked questions
What is Citizen Card?
Portuguese Citizen Card document number — 12 characters, digits plus a 3-letter series.
How does Citizen Card generation work?
The generator builds a structurally valid Citizen Card sample using the same rules the validator enforces — including check digits. Generated values are intended for tests and development only.
How do I install the Citizen Card generator package?
dotnet add package DocumentNumber.Portugal.CitizenCard.Generator
Is the value I enter in the demo stored?
No. Demo inputs are processed in memory for the current request only and are never persisted or shared.