Migrating from FingerprintJS to Fingerprint Pro

To migrate your implementation from FingerprintJS to Fingerprint Pro:

  1. Determine your FingerprintJS version if you are not sure.
  2. Follow the migration instructions below specific to your version.

Determine your FingerprintJS version

NPM installation

If you installed FingerprintJS using npm, then your application's package.json will include an entry for either @fingerprintjs/fingerprintjs or @fingerprintjs/fingerprintjs2 along with the exact version that is being used.

"dependencies": {
    "@fingerprintjs/fingerprintjs": "^x.y.z"
}
   

CDN installation

If your application loads FingerprintJS using CDN, then the path specified in script or import will contain the version of FingerprintJS that is being used.

FingerprintJS v2.x

If the path in the script tag includes /fingerprintjs2@2/ , then your application uses FingerprintJS v2.x.

<script src="https://cdn.jsdelivr.net/npm/fingerprintjs2@2/dist/fingerprint2.min.js"></script>

FingerprintJS v3.x and higher

The path segment /vN/ in script or import statements indicates the version of FingerprintJS that is being used. In the below example, the version used is v4.

const fpPromise = import('https://openfpcdn.io/fingerprintjs/v4')
script.src = 'https://openfpcdn.io/fingerprintjs/v3/iife.min.js';
<script src="https://openfpcdn.io/fingerprintjs/v3/iife.min.js"></script>

Migrating from FingerprintJS v2 to Pro

Please see Migrating from FingerprintJS v2 to Pro.

Migrating from FingerprintJS v3 (open-source) to Pro

You can migrate from FingerprintJS v3 (open-source) to Fingerprint Pro in 30 seconds:

  1. Sign up on dashboard.fingerprint.com/signup, create an account, and get your Public API key.

  2. In your package.json or import statement, change the @fingerprintjs/fingerprintjs package to @fingerprintjs/fingerprintjs-pro:

    Run:
    npm remove @fingerprintjs/fingerprintjs
    npm install @fingerprintjs/fingerprintjs-pro
    
    And replace the package name in your JavaScript/TypeScript code:
    - import FingerprintJS from '@fingerprintjs/fingerprintjs'
    + import FingerprintJS from '@fingerprintjs/fingerprintjs-pro'
    
    Run:
    yarn remove @fingerprintjs/fingerprintjs
    yarn add @fingerprintjs/fingerprintjs-pro
    
    And replace the package name in your JavaScript/TypeScript code:
    - import FingerprintJS from '@fingerprintjs/fingerprintjs'
    + import FingerprintJS from '@fingerprintjs/fingerprintjs-pro'
    
    Change the script URL:
      <script>
    -   const fpPromise = import('https://openfpcdn.io/fingerprintjs/v3')
    +   const fpPromise = import('https://fpjscdn.net/v3/<<browserToken>>')
          .then(FingerprintJS => FingerprintJS.load())
    
        // ...
      </script>
    
    Change the script URL:
      <script>
        // Initialize the agent at application startup.
        const fpPromise = new Promise((resolve, reject) => {
          const script = document.createElement('script');
          script.onload = resolve;
          script.onerror = reject;
          script.async = true;
    -     script.src = 'https://openfpcdn.io/fingerprintjs/v3/iife.min.js';
    +     script.src = 'https://fpjscdn.net/v3/<<browserToken>>/iife.min.js';
          document.head.appendChild(script);
        })
          .then(() => FingerprintJS.load());
    
        // ...
      </script>
    
    Change the script URL:
    - <script src="https://openfpcdn.io/fingerprintjs/v3/iife.min.js"></script>
    + <script src="https://fpjscdn.net/v3/<<browserToken>>/iife.min.js"></script>
      <script>
        // ...
      </script>
    
  3. Add the public API key to the FingerprintJS.load() configuration:

    - FingerprintJS.load()
    + FingerprintJS.load({ apiKey: '<<browserToken>>' })
    
    Put the key to the agent script URL:
    https://fpjscdn.net/v3/YOUR_PUBLIC_KEY
    
    For example:
    https://fpjscdn.net/v3/token
    https://fpjscdn.net/v3/token/iife.min.js
    

That's it, your visitor ID has a pro-level accuracy of 99.5% now.

Migrating from FingerprintJS v4 (source-available) to Pro

How to upgrade from FingerprintJS v4 to Fingerprint Identification in 30 seconds:

  1. Sign up on dashboard.fingerprint.com/signup, create an account, and get your Public API key.

  2. Change the @fingerprintjs/fingerprintjs package to @fingerprintjs/fingerprintjs-pro:

    Run:
    npm remove @fingerprintjs/fingerprintjs
    npm install @fingerprintjs/fingerprintjs-pro
    
    And replace the package name in your JavaScript/TypeScript code:
    - import FingerprintJS from '@fingerprintjs/fingerprintjs'
    + import FingerprintJS from '@fingerprintjs/fingerprintjs-pro'
    
    Run:
    yarn remove @fingerprintjs/fingerprintjs
    yarn add @fingerprintjs/fingerprintjs-pro
    
    And replace the package name in your JavaScript/TypeScript code:
    - import FingerprintJS from '@fingerprintjs/fingerprintjs'
    + import FingerprintJS from '@fingerprintjs/fingerprintjs-pro'
    
    Change the script URL:
      <script>
    -   const fpPromise = import('https://openfpcdn.io/fingerprintjs/v4')
    +   const fpPromise = import('https://fpjscdn.net/v3/<<browserToken>>')
          .then(FingerprintJS => FingerprintJS.load())
    
        // ...
      </script>
    
    Change the script URL:
      <script>
        // Initialize the agent at application startup.
        const fpPromise = new Promise((resolve, reject) => {
          const script = document.createElement('script');
          script.onload = resolve;
          script.onerror = reject;
          script.async = true;
    -     script.src = 'https://openfpcdn.io/fingerprintjs/v4/iife.min.js';
    +     script.src = 'https://fpjscdn.net/v3/<<browserToken>>/iife.min.js';
          document.head.appendChild(script);
        })
          .then(() => FingerprintJS.load());
    
        // ...
      </script>
    
    Change the script URL:
    - <script src="https://openfpcdn.io/fingerprintjs/v4/iife.min.js"></script>
    + <script src="https://fpjscdn.net/v3/<<browserToken>>/iife.min.js"></script>
      <script>
        // ...
      </script>
    
  3. Add the public API key to the FingerprintJS.load() configuration:

    - FingerprintJS.load()
    + FingerprintJS.load({ apiKey: '<<browserToken>>' })
    
    Put the key to the agent script URL:
    https://fpjscdn.net/v3/YOUR_PUBLIC_KEY
    
    For example:
    https://fpjscdn.net/v3/token
    https://fpjscdn.net/v3/token/iife.min.js
    

That's it, your visitor ID has an industry-leading accuracy now.

What's next

As a Fingerprint Pro user, you now have access to various resources not available for FingerprintJS: