ravelinjs JavaScript Library

Releases

Full release notes are available on GitHub

v2.3.0 - August 11, 2026 (Latest)

New features

Add support for detecting whether a user is a bot. This data is automatically captured for clients using the track module.

v2.2.0 - May 1, 2026

Minor updates

Removed bot detection functionality; to be re-introduced in the next release version.

v2.1.0 - April 28, 2026

New features

Add a way to programmatically disable the automatically added event listeners that are added by the track module. The listeners can then be re-enabled by calling the init function.

e.g.

const ravelin = new Ravelin({ key: 'api_key', track: false });

...

// Disable tracking
ravelin.track.disable();

...

// Re-enable tracking
ravelin.track.init();

v2.0.0 - March 4, 2026

New features

Add support for detecting whether a user is a bot. This data is automatically captured for clients using the track module.

Major updates

Remove support for Internet Explorer, which itself was retired in 2022. As such, the ability to inject a custom promise has been removed as it is no longer needed. Please see our upgrading documentation for information on moving to version 2.

The codebase has been fully migrated to TypeScript to increase reliability, maintainability, and provide better IDE support for developers.

Bug fixes

Instantiating RavelinJS with cookieExpiryDays set to zero i.e.

const rav = new Ravelin({ key: "publishable_key_...", cookieExpiryDays: 0 });

will now properly treat the named cookie as read-only and will not default its expiry to 365 days.

v1.10.0 - April 3, 2025

New features

Add a new cookieSameSite config option to allow customising the cookies’ SameSite attribute. This can be used to control how cookies are sent in cross-site requests.

If not provided, the default behaviour will continue to use SameSite=None;Secure for HTTPS connections. This is to support clients who process card payments in iframes or WebViews.

Example usage:

new Ravelin({
    key: "...",
    cookieSameSite: "Strict;Secure",
});

v1.9.0 - March 11, 2025

New features

Add support for tracking if the browser is in incognito or private mode. This data is automatically captured for clients using the track module, and no integration changes are required.

v1.8.1 - June 21, 2023

Bug fixes

Fixed an issue with the npm package for v1.8.0.

v1.8.0 - June 6, 2023

New features

RavelinJS now includes the browser’s timezone offset in the metadata of track events sent to Ravelin. No integration changes are required by developers using the library.

v1.7.1 - June 1, 2023

New features

RavelinJS is only designed to be run in a browser, so it will error if you attempt to initialise it in an environment like node or deno where window is not defined. However, we now support importing the library without erroring during SSR, for example. #332

Minor changes

Upgraded node to the latest LTS v18, and many of the other test packages to their latest versions. This won’t have changed the final product.

v1.7.0 - May 11, 2022

New features

A new prefix configuration option has been added for overriding the default “rjs-” deviceId prefix. We plan to use this for backwards-compatibility in some environments where the deviceId is expected to be a UUID.

Full release notes are available on GitHub

Feedback