Skip to main content
Not sure which Scandit product fits your use case?

Install our data-capture-sdk skill so your coding agent can answer questions about Scandit products and recommend the right one for your use case, directly from your editor. More info →

Run this in a terminal in your project directory, then follow the instructions to select your coding agent.

npx skills add https://github.com/scandit/skills --skill data-capture-sdk

Your coding agent loads the skill automatically based on your prompt; to invoke it explicitly, call /data-capture-sdk followed by your task.

Already installed? Update steps differ by agent — see how to keep your skills up to date.

Document Selection

ID Bolt allows you to specify which types of documents are acceptable for scanning. Documents are selected using the DocumentSelection class.

Creating a Document Selection

Use DocumentSelection.create() to define which types of documents the ID Bolt will accept:

const documentSelection = DocumentSelection.create({
accepted: [
new Passport(Region.Any),
new IdCard(Region.FRA),
new DriverLicense(Region.France),
],
rejected: [
// You can explicitly reject certain documents that would otherwise be included
new Passport(Region.Switzerland),
],
});

Documents not on the list may trigger the scanner, but will not be accepted.

Standard Document Types

Passport

Includes all passports.

new Passport(Region.USA); // US passports only
new Passport(Region.Any); // Any passport

ID Card

Includes national identity cards.

new IdCard(Region.Germany); // German identity cards only
new IdCard(Region.Any); // Identity cards from any country

Driver License

Includes driver licenses.

new DriverLicense(Region.France); // French driver licenses only
new DriverLicense(Region.Any); // Driver licenses from any country

Visa (ICAO)

Includes visas that comply with International Civil Aviation Organization (ICAO) standards.

new VisaIcao(Region.USA); // US ICAO-compliant visas
new VisaIcao(Region.Any); // Any ICAO-compliant visa

Residence Permit

Includes residence permits.

new ResidencePermit(Region.USA); // US residence permits
new ResidencePermit(Region.Any); // Residence permits from any country

Health Insurance Card

Includes health insurance cards.

new HealthInsuranceCard(Region.Germany); // German health insurance cards
new HealthInsuranceCard(Region.Any); // Health insurance cards from any country

Region Specific Documents

For specialized document types that are specific to certain regions, use the RegionSpecific class with a RegionSpecificSubtype argument:

new RegionSpecific(RegionSpecificSubtype.BelgiumMinorsId); // Belgian minors ID
new RegionSpecific(RegionSpecificSubtype.MexicoTaxId); // Mexican tax ID

Supported Region Specific Documents

The following region-specific document types are supported:

United States

  • UsBorderCrossingCard
  • UsGlobalEntryCard
  • UsNexusCard
  • UsCommonAccessCard
  • UsUniformedServicesId
  • UsVeteranId
  • UsWorkPermit
  • UsSocialSecurityCard
  • UsTwicCard
  • UsWeaponPermit
  • UsMedicalMarijuanaCard
  • UsMunicipalId

Asia

  • ChinaExitEntryPermit
  • ChinaMainlandTravelPermitTaiwan
  • ChinaMainlandTravelPermitHongKongMacau
  • ChinaOneWayPermit
  • PakistanAfghanCitizenCard
  • PakistanProofOfRegistration
  • PakistanConsularId
  • SingaporeFinCard
  • SingaporeWorkPermit
  • SingaporeEmploymentPass
  • SingaporeSPass
  • IndiaPanCard
  • MalaysiaIkad
  • MalaysiaMykad
  • MalaysiaMypr
  • MalaysiaMykas
  • MalaysiaMykid
  • MalaysiaMytentera
  • MalaysiaRefugeeId
  • MalaysiaMypolis
  • PhilippinesMultipurposeId
  • PhilippinesWorkPermit
  • PhilippinesSocialSecurityCard
  • PhilippinesNbiClearance
  • PhilippinesPostalId
  • PhilippinesTaxId

Europe

  • GermanyEid
  • BelgiumMinorsId
  • HungaryAddressCard
  • UkAsylumRequest
  • UkMilitaryId
  • SwedenSocialSecurityCard
  • SwedenSisId
  • IrelandPublicServicesCard

Americas

  • MexicoConsularVoterId
  • MexicoProfessionalId
  • MexicoConsularId
  • MexicoTaxId
  • CanadaTribalId
  • CanadaSocialSecurityCard
  • CanadaCitizenshipCertificate
  • CanadaMinorsPublicServicesCard
  • CanadaWeaponPermit
  • CanadaPublicServicesCard
  • ColombiaMinorsId
  • ColombiaTemporaryProtectionPermit
  • PeruMinorsId
  • BoliviaMinorsId
  • GuatemalaConsularId

Other

  • ApecBusinessTravelCard
  • AustraliaAsicCard
  • UaeVehicleRegistrationCard
  • UaeEsaadCard

Working with Regions

Regions are used to define the geographic scope of a document. They can be specified using the Region enum, which contains both ISO codes and region names.

// These are equivalent
Region.FRA;
Region.France;
("FRA");

// For any region
Region.Any;

Two-letter ISO Codes

If you have a two-letter ISO code, you can convert it to a region:

const region = Region.fromShortCode("FR"); // == Region.France == "FRA"
const shortCode = Region.toShortCode(Region.FRA); // == "FR"

If the provided short code is invalid, the methods will throw an exception.