🇪🇨 La cédula ecuatoriana no está en Soulprint. 10 dÃgitos, dÃgito verificador mod-10. ¿La agregas?
const EC: CountryVerifier = {
countryCode: "EC", countryName: "Ecuador", documentTypes: ["cedula"],
parse(ocrText: string): DocumentResult {
const ced = ocrText.match(/(\d{10})/)?.[1] ?? "";
return { valid: !!ced, doc_number: ced, country: "EC" };
},
validate(docNumber: string): NumberValidation {
if(!/^\d{10}$/.test(docNumber)) return {valid:false};
const p = Number(docNumber.slice(0,2));
if(p<1||p>24) return {valid:false};
const d = docNumber.split("").map(Number);
const coef=[2,1,2,1,2,1,2,1,2];
const sum=coef.reduce((s,c,i)=>{let v=c*d[i];return s+(v>=10?v-9:v);},0);
return { valid: (10-(sum%10))%10 === d[9] };
},
};
export default EC;
💻 GitHub · Un PR. Un paÃs.
Top comments (0)