Skip to main content

Crate ec_validator

Crate ec_validator 

Source
Expand description

Validation utilities for Ecuadorian government IDs and financial data.

This crate provides validation for:

  • Cédula de Identidad: Ecuadorian national ID (10 digits)
  • RUC: Registro Único de Contribuyentes (taxpayer ID)
  • IBAN: International Bank Account Number for Ecuador

§Features

FeatureDescriptionDefault
serdeEnable serialization/deserialization derive macrosNo
wasmEnable WebAssembly bindings with wasm-bindgenNo

§Validators

ModuleDocument TypeLengthAlgorithm
cedulaCédula de Identidad10 digitsMod-10
rucRUC (Natural Person)13 digitsMod-10 (first 10 as cédula)
rucRUC (Juridical Entity)13 digitsMod-11
rucRUC (Public Entity)13 digitsMod-11
ibanIBAN (Ecuador)24 charsMod-97

§Example

use ec_validator::{cedula, ruc, iban};

// Validate an Ecuadorian Cédula
let cedula_result = cedula::validate("1713175071");
assert!(cedula_result.is_ok());

// Validate an Ecuadorian RUC
let ruc_result = ruc::validate("1713175071001");
assert!(ruc_result.is_ok());

// Validate an Ecuadorian IBAN
// Note: Use a properly formatted EC IBAN with valid check digits
let iban_result = iban::validate("EC8912345678901234567890");
// Result depends on check digit validity

§Errors

All validators return a ValidationError enum indicating the specific failure reason:

Re-exports§

pub use error::ValidationError;

Modules§

cedula
error
iban
ruc