Cifra di controllo IMEI
Le 14 cifre 49015420323751 ricevono la cifra di controllo 8, quindi l'IMEI completo è 490154203237518. Completi il numero di un dispositivo per un'etichetta o un database, oppure verifichi l'IMEI di 15 cifre di un cliente prima di salvarlo. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Numero
- 49015420323751
- Modalità di calcolo
- Compute
- Input
- 49015420323751
- Cifra di controllo
- 8
- Con cifra di controllo
- 490154203237518
Ogni telefono mobile e molti moduli cellulari portano un’identità internazionale di apparecchiatura mobile di quindici cifre. Le prime quattordici identificano il codice di assegnazione del tipo e il seriale; la quindicesima è una cifra di controllo Luhn che intercetta errori di una sola cifra e la maggior parte delle trasposizioni adiacenti prima che un numero venga memorizzato, stampato sulla confezione o inviato a un portale dell’operatore.
Come si calcola la cifra di controllo Luhn dell’IMEI
Un IMEI ha sempre quindici cifre decimali secondo il piano di numerazione 3GPP usato per apparecchiature GSM, UMTS, LTE e 5G. Le prime otto formano il codice di assegnazione del tipo (TAC), le sei successive sono un seriale del produttore entro quel TAC, e la quindicesima è la cifra di controllo. Quando il doppio di una cifra è maggiore di nove, sottragga nove (in modo equivalente, sommi le decine e le unità del prodotto).
Sommi i quattordici valori ponderati; la cifra di controllo è (10 meno quella somma modulo 10) modulo 10 così che il numero completo di quindici cifre abbia una somma Luhn divisibile per dieci. La convalida ricalcola la cifra attesa dai primi quattordici caratteri e la confronta con la quindicesima, equivalente a una somma Luhn completa su tutte e quindici le cifre. L’algoritmo è deterministico e locale: nessuna chiamata al registro TAC, nessun orologio e nessuna casualità.
Contratto di input, modalità e comportamento di errore
Invii un campo number che contenga solo i caratteri da zero a nove. Una lunghezza errata è un errore esplicito che nomina la modalità e la lunghezza inviata —quattordici per compute, quindici per validate— così i form client possono mostrare «servono quattordici cifre» senza indovinare. Stringhe vuote, number mancante e valori di mode non validi falliscono prima di qualsiasi somma Luhn e non vengono addebitati.
Preferisca compute quando crea o completa numeri di dispositivo per etichette e database; preferisca validate quando condiziona una ricerca, uno swap o un import a un IMEI completo da un utente, un file partner o uno scanner. Le attività di validazione che rifiutano una forma errata non sono addebitate; una stringa ben formata di quindici cifre che ha semplicemente la cifra di controllo sbagliata restituisce valid false senza eccezione.
Casi d'uso
Revisionare colonne IMEI negli inventari di dispositivi
Convalidi in batch ogni IMEI di quindici cifre in un CSV di MDM, ERP o RMA e metta in quarantena le righe la cui cifra di controllo non coincide più con il valore atteso ricalcolato.
Domande frequenti
Che cos’è una cifra di controllo IMEI?
È la quindicesima cifra di un IMEI, calcolata con l’algoritmo di Luhn sulle prime quattordici cifre, così gli errori di una sola cifra in digitazione o scansione di solito vengono intercettati prima di memorizzare o stampare il numero.
Cosa succede con lunghezza errata, lettere o trattini?
Le attività di validazione fallite non vengono addebitate.
Lo strumento della cifra di controllo IMEI è gratuito?
Lo strumento browser è gratuito e gira in locale.
Cosa indicano le cifre di un IMEI?
Le prime otto formano il codice di assegnazione del tipo (TAC), le sei successive sono il numero di serie del produttore all'interno di quel codice e la quindicesima è la cifra di controllo, calcolata dalle altre quattordici.
Quali errori intercetta la cifra di controllo?
Intercetta ogni errore di battitura su una singola cifra e la maggior parte degli scambi tra due cifre vicine. Così molti errori vengono scoperti prima che il numero finisca in un archivio, su una confezione o nel portale di un operatore.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/enc/imei \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"49015420323751"}'const res = await fetch("https://api.kit.forhosting.com/enc/imei", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "49015420323751"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/imei",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "49015420323751"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/imei", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"49015420323751"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"49015420323751"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/imei", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"number": "49015420323751"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.imei",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Questa capacità implementa quella regola Luhn standard solo per IMEI: la modalità compute accetta esattamente quattordici cifre di payload e restituisce la cifra di controllo più la stringa completa di quindici; la modalità validate accetta un IMEI completo di quindici cifre e indica se la cifra finale coincide con il valore atteso ricalcolato. Input non numerici e lunghezze errate falliscono con invalid_input invece di un taglio silenzioso, così Lei non persiste mai un identificatore a metà. La stessa aritmetica pura gira gratis nel browser e al prezzo API pubblicato, senza consultazione di rete a database dei produttori e senza affermare che un checksum valido significhi che il dispositivo sia registrato o sbloccato.
Come si calcola la cifra di controllo Luhn dell’IMEI
Per calcolarla, prenda il payload di quattordici cifre e applichi l’algoritmo di Luhn da destra: raddoppi ogni seconda cifra partendo dalla cifra di payload più a destra (perché quella cifra occupa la posizione due della stringa completa di quindici quando il controllo è in posizione uno da destra). Rispetto ai validatori Luhn generici per carte, l’intento di ricerca qui è stretto: chi ha bisogno di un calcolatore di cifra di controllo IMEI per payload di quattordici cifre o di un verificatore IMEI mobile a quindici, non di uno strumento per carte di pagamento.
Contratto di input, modalità e comportamento di errore
Spazi, trattini, lettere e punti decimali sono rifiutati come input non numerico con invalid_input affinché un valore troncato in silenzio non raggiunga mai lo storage. La modalità compute è il default: il motore richiede esattamente quattordici cifre, restituisce check_digit come stringa di un carattere e restituisce with_check come l’IMEI di quindici cifre che Lei può stampare o persistere. La modalità validate richiede esattamente quindici cifre; la risposta riporta valid true quando la cifra finale coincide con expected_check_digit ricalcolato, e include sempre payload (le prime quattordici cifre), check_digit, expected_check_digit e length quindici. Alias come digits, imei e code sono accettati per lo stesso campo payload, così le integrazioni che già parlano di «imei» non devono rinominare. Poiché il percorso è parse puro senza orologio, sorgente casuale o rete, lo stesso corpo JSON produce sempre lo stesso risultato JSON sullo strumento browser gratuito e sull’API a $0.002 per richiesta riuscita.
Dove le cifre di controllo IMEI entrano nei flussi reali
I produttori di dispositivi e gli ODM ricevono seriali interni di quattordici cifre e devono aggiungere la cifra di controllo Luhn ufficiale prima di stampare l’IMEI sulla confezione, sul cassetto SIM o sull’etichetta normativa. I portali di operatori e MVNO convalidano IMEI di quindici cifre all’attivazione affinché una sola trasposizione non crei un dispositivo fantasma e un provisioning fallito. I sistemi di gestione asset e MDM scorrono ogni colonna IMEI di un export CSV, chiamano la modalità validate e mettono in quarantena le righe dove valid è false, catturando sia modifiche umane sia bug dei generatori. Le officine di riparazione e gli sportelli RMA ricalcolano expected_check_digit quando un cliente legge il numero al telefono, intercettando errori di battitura prima di aprire un ticket contro il terminale sbagliato. Non tratti un IMEI che passa il controllo come prova che il dispositivo sia genuino, sbloccato o libero da blacklist dell’operatore; prova solo che la cifra Luhn è coerente con il payload sotto i pesi standard dell’identità di apparecchiatura mobile.
Casi di integrazione
Completare un numero di dispositivo a 14 cifre per le etichette
Chiami la modalità compute con il payload di quattordici cifre, memorizzi with_check e stampi l’IMEI di quindici cifre su imballaggi, cassetti SIM o etichette normative.
Convalidare IMEI digitato o scansionato in ingresso
Quando un form, uno scanner o un file partner invia quindici cifre, chiami la modalità validate e blocchi la ricerca se valid è false, mostrando expected_check_digit per correggere un solo errore di battitura.
Domande tecniche
Come calcolo una cifra di controllo IMEI con questa API?
Esegua un POST con number impostato a esattamente quattordici cifre e mode compute (oppure ometta mode). La risposta include check_digit e with_check (l’IMEI completo di quindici cifre).
Come convalidare un IMEI completo di quindici cifre?
Esegua un POST con la stringa di quindici cifre e mode validate. La risposta include valid, check_digit, expected_check_digit e payload (cifre senza l’ultima).