Generator · Slovak data
Slovak IČO
Endpoint GET /v1/sk/ico
What it covers
Returns a valid Slovak IČO (identifikačné číslo organizácie) with a correct mod-11 check digit. Set `invalid=true` for an IČO with a deliberately wrong check digit, or `edge=true` for valid edge cases.
How it’s calculated
The Slovak IČO's 8th digit is a weighted mod-11 check digit over the 7 leading digits, read as the 11-complement of the weighted sum modulo 11, then reduced modulo 10 so it is always a single digit.
Algorithm
- Take the 7 payload digits d1 d2 d3 d4 d5 d6 d7 (the IČO without its final check digit). Positions are read left to right.
- Apply the fixed position weights [8, 7, 6, 5, 4, 3, 2]: multiply d1 by 8, d2 by 7, d3 by 6, d4 by 5, d5 by 4, d6 by 3, d7 by 2.
- Sum the seven products to get the weighted sum S.
- Compute base = S mod 11 (a value 0..10).
- Compute the 11-complement: raw = 11 - base (a value 1..11).
- Reduce with the mod10 overflow rule: check = raw mod 10. (So raw 11 -> 1, raw 10 -> 0, otherwise raw unchanged.)
- The check digit is this single digit 0..9; append it as the 8th digit to form the full IČO.
Worked example
IČO 1234567? (7 payload digits 1234567, check digit unknown)
Weights [8,7,6,5,4,3,2] against digits [1,2,3,4,5,6,7].
Products: 8*1=8, 7*2=14, 6*3=18, 5*4=20, 4*5=20, 3*6=18, 2*7=14.
Weighted sum S = 8+14+18+20+20+18+14 = 112.
base = 112 mod 11 = 2 (since 11*10 = 110, 112-110 = 2).
raw = 11 - 2 = 9.
check = 9 mod 10 = 9.The check digit is 9, so the full IČO is 12345679.
Edge cases
- Leading-zero IČOs are valid: the first payload digit may be 0 (the edge generator emits these deliberately), so an IČO parsed as a number and reformatted can lose its leading zero and drop below 8 characters.
- A check digit of 0 is legitimate and occurs whenever the 11-complement raw value is 10 or 11 (both reduce to 0 under the mod-10 rule).
Gotchas
- The overflow rule is mod10, not 'invalid': under 11-complement the raw result can be 10 or 11, and both are folded to a real digit (10->0, 11->1) rather than being treated as unissued. There is therefore always a single-digit answer and no residue is rejected — the code's guard for undefined is unreachable.
- The complement is taken before the mod-10 reduction (check = (11 - (S mod 11)) mod 10), not after; reversing the two operations gives wrong results for the overflow cases.
Parameters
| Parameter | Type | Description |
|---|---|---|
| count | integer1–1000 | Number of records to return, 1–1000 (your plan may lower this). Omitted returns a single record; set it for a batch. |
| edge | boolean | Restrict output to valid edge-case IČOs from the rare corners. |
| extreme | boolean | Return a correct value wrapped in a hostile encoding (untrimmed whitespace, invisible/zero-width characters, BOM, or bidi/combining marks). Homoglyphs are excluded so the value stays machine-parseable; it still validates after normalisation. |
| invalid | boolean | Return an IČO with a deliberately wrong mod-11 check digit. |
| seed | integer | Integer seed for reproducible output: the same seed always yields the same record. |
Response fields
| Field | Type | Description |
|---|---|---|
| value | string | The 8-digit IČO. |
| digits | string | The canonical 8-digit IČO. |
Other generators for Slovakia
Slovak companySlovak company nameSlovak email addressSlovak IBANSlovak IČ DPHSlovak personSlovak person nameSlovak product or service offeringSlovak rodné čísloSlovak vehicle registration plate
See all generators for Slovakia →The same kind of identifier elsewhere
Austrian data · Austrian FirmenbuchnummerAustrian data · Austrian SteuernummerAustrian data · Austrian UIDBelgian data · Belgian OndernemingsnummerBulgarian data · Bulgarian EIKCzech data · Czech IČODanish data · Danish CVRDutch data · Dutch btw-idDutch data · Dutch KvK numberDutch data · Dutch RSINEstonian data · Estonian KMKREstonian data · Estonian registrikoodFrench data · French SIRENGerman data · German HandelsregisternummerGerman data · German Personalausweis numberGerman data · German USt-IdNrGerman data · German Wirtschafts-IdNrHungarian data · Hungarian adószámHungarian data · Hungarian cégjegyzékszámIrish data · Irish CRO numberIrish data · Irish VAT numberItalian data · Italian Partita IVALatvian data · Latvian registracijas numursLithuanian data · Lithuanian įmonės kodasLithuanian data · Lithuanian PVM (VAT) numberLuxembourg data · Luxembourg TVAMaltese data · Maltese identity card numberMaltese data · Maltese VAT numberPolish data · Polish driving licence numberPolish data · Polish ID card numberPolish data · Polish KRS numberPolish data · Polish land and mortgage register numberPolish data · Polish NIPPolish data · Polish passport numberPolish data · Polish REGONPortuguese data · Portuguese Cartão de Cidadão numberRomanian data · Romanian CUI/CIFSpanish data · Spanish CIFSwedish data · Swedish organisationsnummer
Try it