Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

luhn-js

EDumdum36.3kMIT1.1.2TypeScript support: included

Validation and control key generation for credit cards (and more) using Luhn algorithm

Luhn, ISO 7812, IEC 7812, ISO/IEC 7812, card validation, card, credit, validation, credit card, checksum, check digit

readme

npm version Build Status GitHub license

luhn

Validation and control key generation for credit cards (and more) using Luhn algorithm.

Usage

In node.js

var Luhn = require('luhn-js');

Luhn.isValid('44542738505150162'); // false
Luhn.isValid('44540661970241257'); // true

Luhn.generate('4454066197024125'); // 44540661970241257

Luhn.getRemainder('44543353847144279'); // 8

API

isValid(value) -> Boolean

Check requirements.
Returns if the Luhn check digit is valid.

Required

  • Value must be not Null
  • Value must be of type String
  • Value must respect format ^[0-9]{2,}$

generate(value) -> String

Check requirements.
Returns the Luhn check digit appended to the value.

Required

  • Value must be not Null
  • Value must be of type String
  • Value must respect format ^[0-9]{1,}$

getRemainder(value) -> Number

Does NOT check requirements.
Returns the Luhn remainder.

Note: getRemainder(value) === 0 is equivalent to isValid(value). You may want to use this method instead of isValid if you ensure argument requirements on your side.

Required

  • Value must be not Null
  • Value must be of type String