diff --git a/packages/loot-core/src/server/accounts/sync.js b/packages/loot-core/src/server/accounts/sync.js
index 7a64ebee0e9e761d53e506f7b717c12e4f2b8dd0..43fd7d1b2cfb3d4bb99a439243acd769d0f3a0e0 100644
--- a/packages/loot-core/src/server/accounts/sync.js
+++ b/packages/loot-core/src/server/accounts/sync.js
@@ -312,7 +312,10 @@ async function normalizeNordigenTransactions(transactions, acctId) {
     }
 
     let payee_name;
-    if (trans.amount >= 0) {
+    // When the amount is equal to 0, we need to determine
+    // if this is a "Credited" or "Debited" transaction. This means
+    // that it matters whether the amount is a positive or negative zero.
+    if (trans.amount > 0 || Object.is(Number(trans.amount), 0)) {
       const nameParts = [];
       nameParts.push(
         title(