Skip to content

NISN

A NISN has 10 digits. No official document describes an internal structure or check digit, so NusaIndex checks length, characters, and that the number is not all zeros.

Go TypeScript Returns
nisn.Valid(s) nisn.isValid(s) Whether s is a well-formed NISN
nisn.Parse(s) nisn.parse(s) { nisn } with separators removed
nisn.Format(s) nisn.format(s) 10 digits
nisn.Mask(s) nisn.mask(s) Last 4 digits visible

Accepted separators: space, . and -.

length, charset, serial.

package main
import (
"fmt"
"github.com/haikalmumtaz233/nusaindex/nisn"
)
func main() {
fmt.Println(nisn.Valid("6299763315"))
parsed, err := nisn.Parse(" 6299763315 ")
if err == nil {
fmt.Println(parsed.Number)
}
formatted, err := nisn.Format("6299763315")
if err == nil {
fmt.Println(formatted)
}
fmt.Println(nisn.Mask("6299763315"))
}
Output
true
6299763315
6299763315
******3315