commit f3101a8b657ace74f8f7819d758b9a9b030342ad
parent daf4176f5b2dea94728251b6138187b83a73e429
Author: Antoine A <>
Date: Wed, 4 Nov 2026 14:35:14 +0100
wise: fix incomplete transactions breaking the revenu API
Diffstat:
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/adapters/taler-wise/db/wise-procedures.sql b/adapters/taler-wise/db/wise-procedures.sql
@@ -125,11 +125,17 @@ RETURNING tx_in_id INTO out_tx_row_id;
-- Notify new incoming transaction registration
PERFORM pg_notify('tx_in', in_balance_id || ' ' || out_tx_row_id);
+-- Keep unresolved senders in the ledger without publishing or queueing them
+IF in_debit_payto IS NULL THEN
+ out_pending = false;
+ RETURN;
+END IF;
+
IF out_pending THEN
-- Delay talerable registration until mapping again
INSERT INTO pending_recurrent_in (tx_in_id, balance_id, authorization_pub)
VALUES (out_tx_row_id, in_balance_id, local_authorization_pub);
-ELSIF in_type IS NOT NULL AND in_debit_payto IS NOT NULL THEN
+ELSIF in_type IS NOT NULL THEN
UPDATE prepared_in
SET tx_in_id = out_tx_row_id
WHERE balance_id = in_balance_id AND ((
diff --git a/adapters/taler-wise/src/db.rs b/adapters/taler-wise/src/db.rs
@@ -365,7 +365,7 @@ pub async fn revenue_history(
debit_name,
subject
FROM tx_in
- WHERE balance_id =
+ WHERE debit_payto IS NOT NULL AND balance_id =
",
);
query.push_bind(balance_id as i32).push(" AND ");