exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 7a747a240f3be968ea38c6d8bbdf1c8bfd933259
parent 4ebee4ebbc7dc4b3710f452a01eaa6309fc0015c
Author: Christian Grothoff <christian@grothoff.org>
Date:   Wed, 12 Aug 2026 23:52:55 +0200

implement protocol v39 for #10713: missing files

Diffstat:
Mmeson.build | 2+-
Asrc/exchangedb/sql-schema/exchange-0014.sql | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/meson.build b/meson.build @@ -293,7 +293,7 @@ if not get_option('only-doc') ['libtalerkyclogic', '3:0:0'], ['libtalerexchangedb', '2:0:0'], ['libtalerauditordb', '1:0:0'], - ['libtalerexchange', '23:0:1'], + ['libtalerexchange', '24:0:2'], ['libtalerauditor', '1:0:1'], ['libtalertesting', '4:0:0'], ['libtalertwistertesting', '0:1:0'], diff --git a/src/exchangedb/sql-schema/exchange-0014.sql b/src/exchangedb/sql-schema/exchange-0014.sql @@ -0,0 +1,56 @@ +-- +-- This file is part of TALER +-- Copyright (C) 2026 Taler Systems SA +-- +-- TALER is free software; you can redistribute it and/or modify it under the +-- terms of the GNU General Public License as published by the Free Software +-- Foundation; either version 3, or (at your option) any later version. +-- +-- TALER is distributed in the hope that it will be useful, but WITHOUT ANY +-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +-- A PARTICULAR PURPOSE. See the GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License along with +-- TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> +-- + +BEGIN; + +SELECT _v.register_patch('exchange-0014', NULL, NULL); + +SET search_path TO exchange; + +CREATE FUNCTION alter_table_wire_out14() +RETURNS void +LANGUAGE plpgsql +AS $$ +DECLARE +BEGIN + -- Which of our own bank accounts did we debit for this transfer? Merchants + -- are shown this so that they can find the credit in their bank statement + -- by filtering on the originating account. NULL for rows written before + -- this column existed, so consumers must treat it as optional forever. + ALTER TABLE wire_out + ADD COLUMN exchange_payto_uri + TEXT DEFAULT (NULL); + COMMENT ON COLUMN wire_out.exchange_payto_uri + IS 'full payto://-URI of the exchange bank account that was debited; NULL if unknown (transfer predates this column)'; +END +$$; + + +INSERT INTO exchange_tables + (name + ,version + ,action + ,partitioned + ,by_range) + VALUES + ('wire_out14' + ,'exchange-0014' + ,'alter' + ,TRUE + ,FALSE); + + +COMMIT;