Dígito de control del número CAS
Escriba 7732-18 y obtendrá el dígito de control 5, es decir, 7732-18-5, el número CAS del agua; si teclea 7732-18-6, la validación falla. Detecta errores de tecleo en inventarios, fichas de seguridad y registros de laboratorio. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Cas
- 7732-18
- Modo de cálculo
- Compute
- Entrada
- 773218
- Dígito de control
- 5
- Con dígito de control
- 7732185
Los números de registro de Chemical Abstracts Service (CAS) identifican sustancias en inventarios, hojas SDS, cuadernos de laboratorio y expedientes regulatorios. Cada CAS RN termina con un único dígito de control obtenido de una suma ponderada de derecha a izquierda de los dígitos anteriores. Un dígito intermedio mal tecleado o un par intercambiado suele romper esa suma de verificación, de modo que validar el dígito de control antes de buscar un compuesto detecta muchos errores de tecleo a tiempo. Esta capacidad calcula el dígito de control CAS a partir de los dígitos precedentes (con o sin los guiones habituales), o valida un número CAS completo que ya incluye el dígito final, e informa de entradas mal formadas en lugar de eliminar caracteres inválidos en silencio.
Qué es el dígito de control de un número de registro CAS y por qué importa
Un número de registro CAS es un identificador numérico único asignado a una sustancia química. La forma impresa agrupa los dígitos con guiones en tres partes: un primer bloque de longitud variable, un bloque intermedio de dos dígitos y un dígito de control final. Ese último dígito no es un adorno arbitrario: se calcula de modo que una suma ponderada de todos los dígitos precedentes, de derecha a izquierda con multiplicadores uno, dos, tres, y así sucesivamente, sea congruente con el dígito de control módulo diez.
Cuando alguien escribe 7732-18-5 (agua) como 7732-18-6, la suma ya no coincide y la validación falla. La misma regla detecta muchas sustituciones de un solo dígito en importaciones de inventario, analizadores de SDS y campos LIMS donde los operadores reescriben números desde papel. Esta herramienta aplica esa regla estándar del dígito de control del CAS RN sobre dígitos puros tras quitar guiones opcionales.
No consulta el registro CAS, no resuelve un nombre a un número ni demuestra que una sustancia exista: solo que la cadena de dígitos está bien formada según el algoritmo de control publicado. Frente al Luhn mod-10 usado en cadenas de pago y cuentas, el esquema CAS usa pesos de posición crecientes desde la derecha en lugar de duplicación alternada, por lo que no debe reutilizar un validador Luhn en campos CAS.
Frente a dígitos de control de ISBN o códigos de barras, el CAS es específico de la química y espera el formato familiar N-NN-C al formatear el resultado. Saber qué esquema necesita evita una falsa confianza cuando una utilidad genérica de dígito de control acepta una cadena que no es un CAS RN.
Dónde encajan los dígitos de control CAS en laboratorio, inventario y cumplimiento
Los sistemas de información de laboratorio guardan CAS RN en registros maestros de reactivos y materiales; un solo dígito mal tecleado al dar de alta puede asociar el perfil de peligro equivocado a un código de barras de frasco. Las importaciones de inventario químico y ERP suelen llegar como columnas CSV de números CAS con guiones inconsistentes; elimine o conserve guiones a su criterio, llame a validate en cada fila y ponga en cuarentena los fallos en lugar de cargar claves erróneas silenciosas.
Las canalizaciones de SDS y documentos regulatorios extraen cadenas CAS del texto libre; recalcular el dígito de control filtra ruido de OCR y capturas parciales antes del enriquecimiento contra un registro comercial. Los equipos de producto que ya exponen herramientas generales Luhn o de códigos de barras deben usar igualmente esta capacidad específica de CAS en campos de química para que pesos, límites de longitud y formato de guiones coincidan con el dominio.
No trate un dígito de control CAS válido como prueba de que la sustancia esté bien identificada, autorizada para uso o presente en un registro oficial: solo demuestra que la cadena de dígitos es coherente con el algoritmo de control del CAS RN.
Qué puede hacer con ella
Auditar columnas CAS en importaciones CSV
Valide por lotes cada CAS RN de una exportación de socio o ERP y ponga en cuarentena las filas cuyo dígito de control ya no coincida con el valor esperado recalculado.
Preguntas frecuentes
¿Qué es el dígito de control de un número de registro CAS?
Es el dígito final único de un CAS RN, calculado de modo que una suma ponderada de derecha a izquierda de los dígitos precedentes módulo diez sea igual a ese dígito, detectando muchos errores de tecleo de un solo dígito.
¿Qué ocurre con letras o guiones incorrectos?
Proporcione solo dígitos 0-9 y guiones simples opcionales; las tareas de validación fallidas no se facturan.
¿Es gratuita la herramienta de dígito de control del número CAS?
La herramienta del navegador es gratuita y se ejecuta en local.
¿Un dígito de control válido significa que la sustancia existe?
No. La herramienta no consulta el registro CAS ni convierte un nombre en número. Un dígito correcto solo indica que la secuencia de cifras está bien formada según la regla publicada.
¿Puedo comprobar números CAS con un validador Luhn?
No. Luhn duplica una cifra de cada dos, mientras que la regla CAS multiplica cada cifra por un peso creciente contado desde la derecha. Un validador genérico puede aceptar una secuencia que no es un número CAS válido.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/cas-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cas":"7732-18"}'const res = await fetch("https://api.kit.forhosting.com/enc/cas-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cas": "7732-18"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/cas-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cas": "7732-18"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/cas-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cas":"7732-18"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cas":"7732-18"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/cas-number", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"cas": "7732-18"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.cas_number",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Úselo gratis en el navegador o llame a la API de KIT al precio publicado; ambas vías ejecutan la misma aritmética determinista sin consulta de red y sin datos de registro almacenados.
Cómo calcular un dígito de control o validar un número CAS completo
Envíe un campo cas con dígitos del cero al nueve, opcionalmente separados por los guiones estándar. El modo validate espera un CAS RN completo de al menos cinco dígitos incluyendo el dígito de control final (por ejemplo 7732-18-5 o 7732185). Cadenas vacías, cas ausente, valores de mode inválidos, cargas demasiado cortas o largas y basura no numérica fallan antes de cualquier suma ponderada y no se facturan. Prefiera compute cuando arme una cadena CAS a partir de dígitos de cuerpo conocidos; prefiera validate cuando un usuario, un archivo de socio o una etiqueta escaneada aporte un RN completo y necesite un filtro booleano antes de una consulta al registro. Los espacios alrededor del valor se recortan; otras letras, puntuación o guiones dobles se rechazan como entrada mal formada con invalid_input, de modo que nunca acepte un valor limpiado en silencio. El modo compute es el predeterminado: proporcione los dígitos que preceden al dígito de control (por ejemplo 7732-18 o 773218) y el motor devuelve check_digit como cadena de un carácter, with_check como la cadena completa de dígitos incluyendo ese dígito, y formatted como la forma CAS con guiones cabeza-medio-control. La respuesta indica valid true cuando el dígito de control recalculado coincide con el último dígito, e incluye siempre check_digit, expected_check_digit, payload sin el último dígito y formatted para una presentación coherente. Como la ruta es parse puro sin reloj, fuente aleatoria ni red, la misma entrada produce siempre el mismo JSON en la herramienta gratuita del navegador y en la API. A $0.002 por solicitud correcta puede controlar importaciones masivas de sustancias, campos de formulario y trabajos ETL sin negociar un nivel personalizado.
Dónde encajan los dígitos de control CAS en laboratorio, inventario y cumplimiento
El modo validate a la entrada bloquea el guardado cuando valid es false y puede mostrar expected_check_digit para que el técnico corrija el formulario antes de escribir el registro.
Casos de integración
Controlar campos CAS en formularios de laboratorio e inventario
Cuando un usuario escribe un CAS RN completo, llame al modo validate y bloquee el guardado si valid es false, mostrando expected_check_digit para corregir un solo error de tecleo antes de almacenar el registro.
Construir o reparar cadenas CAS a partir de dígitos del cuerpo
Desde una carga conocida sin el dígito final, llame al modo compute y almacene with_check o formatted para que etiquetas y exportaciones lleven siempre un dígito de control correcto.
Preguntas técnicas
¿Cómo calculo un dígito de control CAS con esta API?
Haga POST con cas igual a los dígitos anteriores al de control (guiones opcionales) y mode compute (o omita mode). La respuesta incluye check_digit, with_check y formatted.
¿Cómo valido un número CAS completo?
Haga POST con el CAS RN completo (con o sin guiones) y mode validate. La respuesta incluye valid, check_digit, expected_check_digit, payload y formatted.