diff --git a/packages/loot-core/jest.config.js b/packages/loot-core/jest.config.js
index 26ee7650b688513edd5dfe2b00f30148b75a777b..30b560f28b9464ac653df2983408bc35e6f7479e 100644
--- a/packages/loot-core/jest.config.js
+++ b/packages/loot-core/jest.config.js
@@ -1,6 +1,7 @@
 const isReactNative = process.env.REACT_APP_IS_REACT_NATIVE;
 
 module.exports = {
+  preset: 'ts-jest/presets/js-with-ts-esm',
   moduleFileExtensions: ['testing.js', 'electron.js']
     .concat(isReactNative ? ['ios.js', 'mobile.js'] : [])
     .concat(['mjs', 'js', 'ts', 'json']),
diff --git a/packages/loot-core/jest.web.config.js b/packages/loot-core/jest.web.config.js
index 9454d4c41a926787f8006ab34b630cf8b61694f7..84b38b628b17570b7cd3731040507b35cb2471d6 100644
--- a/packages/loot-core/jest.web.config.js
+++ b/packages/loot-core/jest.web.config.js
@@ -1,4 +1,5 @@
 module.exports = {
+  preset: 'ts-jest/presets/js-with-ts-esm',
   moduleFileExtensions: ['testing.js', 'web.js', 'mjs', 'js', 'ts', 'json'],
   testEnvironment: 'jsdom',
   testPathIgnorePatterns: ['/node_modules/', '/lib/'].filter(Boolean),