[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-docs] 16/36: add tables for configuration related to p2p payments
From: |
gnunet |
Subject: |
[taler-docs] 16/36: add tables for configuration related to p2p payments |
Date: |
Tue, 22 Jun 2021 19:35:12 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository docs.
commit a9e4a611c51d5a34c8c363a8abf52276edbcc127
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun May 16 15:24:54 2021 +0200
add tables for configuration related to p2p payments
---
design-documents/013-peer-to-peer-payments.rst | 53 ++++++++++++++++++++++++--
1 file changed, 50 insertions(+), 3 deletions(-)
diff --git a/design-documents/013-peer-to-peer-payments.rst
b/design-documents/013-peer-to-peer-payments.rst
index 7be2021..c0308bc 100644
--- a/design-documents/013-peer-to-peer-payments.rst
+++ b/design-documents/013-peer-to-peer-payments.rst
@@ -631,6 +631,34 @@ database.)
-- Check patch versioning is in place.
SELECT _v.register_patch('exchange-TBD', NULL, NULL);
--
+ CREATE TABLE IF NOT EXISTS partners
+ (partner_serial_id BIGSERIAL UNIQUE
+ ,partner_master_pub BYTEA NOT NULL CHECK(LENGTH(reserve_pub)=32)
+ ,start_date INT8 NOT NULL
+ ,end_date INT8 NOT NULL
+ ,wad_frequency INT8 NOT NULL
+ ,wad_fee_val INT8 NOT NULL
+ ,wad_fee_frac INT4 NOT NULL
+ ,master_sig BYTEA NOT NULL CHECK (LENGTH(master_sig)=64))
+ ,partner_base_url TEXT NOT NULL
+ );
+ COMMENT ON TABLE partners
+ IS 'exchanges we do wad transfers to';
+ COMMENT ON COLUMN partners.partner_master_pub
+ IS 'offline master public key of the partner';
+ COMMENT ON COLUMN partners.start_date
+ IS 'starting date of the partnership';
+ COMMENT ON COLUMN partners.end_date
+ IS 'end date of the partnership';
+ COMMENT ON COLUMN partners.wad_frequency
+ IS 'how often do we promise to do wad transfers';
+ COMMENT ON COLUMN partners.wad_fee_val
+ IS 'how high is the fee for a wallet to be added to a wad to this partner';
+ COMMENT ON COLUMN partners.partner_base_url
+ IS 'base URL of the REST API for this partner';
+ COMMENT ON COLUMN partners.master_sig
+ IS 'signature of our master public key affirming the partnership, of
purpose TALER_SIGNATURE_MASTER_PARTNER_DETAILS';
+ --
ALTER TABLE reserves
ADD COLUMN kyc_needed BOOLEAN NOT NULL DEFAULT (false)
ADD COLUMN kyc_passed BOOLEAN NOT NULL DEFAULT (false)
@@ -674,7 +702,9 @@ database.)
CREATE TABLE IF NOT EXISTS mergers
(merge_request_serial_id BIGSERIAL UNIQUE
,reserve_uuid BYTEA NOT NULL REFERENCES reserves (reserve_uuid) ON DELETE
CASCADE
+ ,partner_serial_id INT8 REFERENCES partners(partner_serial_id) ON DELETE
CASCADE,
,reserve_url TEXT NOT NULL,
+ ,reserve_pub BYTEA NOT NULL CHECK (LENGTH(reserve_pub)=32),
,purse_pub BYTEA NOT NULL CHECK (LENGTH(purse_pub)=32),
,reserve_sig BYTEA NOT NULL CHECK (LENGTH(reserve_sig)=64))
,purse_sig BYTEA NOT NULL CHECK (LENGTH(purse_sig)=64))
@@ -689,8 +719,12 @@ database.)
IS 'Merge requests where a purse- and account-owner requested merging the
purse into the account';
COMMENT ON COLUMN mergers.reserve_uuid
IS 'identifies the reserve';
+ COMMENT ON COLUMN mergers.partner_serial_id
+ IS 'identifies the partner exchange, NULL in case the target reserve lives
at this exchange';
COMMENT ON COLUMN mergers.reserve_url
IS 'payto://-URL of the reserve, identifies the exchange and the reserve';
+ COMMENT ON COLUMN mergers.reserve_pub
+ IS 'public key of the target reserve';
COMMENT ON COLUMN mergers.purse_pub
IS 'public key of the purse';
COMMENT ON COLUMN mergers.reserve_sig
@@ -810,7 +844,7 @@ database.)
CREATE TABLE IF NOT EXISTS wads_out
(wad_out_serial_id BIGSERIAL UNIQUE
,wad_id BYTEA PRIMARY KEY CHECK (LENGTH(wad_id)=24)
- ,target_exchange_url TEXT NOT NULL
+ ,partner_serial_id INT8 NOT NULL REFERENCES partners(partner_serial_id) ON
DELETE CASCADE,
,amount_val INT8 NOT NULL
,amount_frac INT4 NOT NULL
,execution_time INT8 NOT NULL
@@ -820,8 +854,8 @@ database.)
IS 'Wire transfers made to another exchange to transfer purse funds';
COMMENT ON COLUMN wads_out.wad_id
IS 'Unique identifier of the wad, part of the wire transfer subject';
- COMMENT ON COLUMN wads_out.target_exchange_url
- IS 'Base URL of the target exchange';
+ COMMENT ON COLUMN wads_out.partner_serial_id
+ IS 'target exchange of the wad';
COMMENT ON COLUMN wads_out.amount_val
IS 'Amount that was wired';
COMMENT ON COLUMN wads_out.execution_time
@@ -940,6 +974,19 @@ database.)
IS 'needed to lookup all transfers associated with a wad';
COMMENT ON INDEX wad_in_entries_reserve_pub
IS 'needed to compute reserve history';
+ --
+ CREATE TABLE IF NOT EXISTS partners
+ (partner_serial_id BIGSERIAL UNIQUE
+ ,wad_in_serial_id INT8 REFERENCES wads_in (wad_serial_id) ON DELETE CASCADE
+ ,partner_master_pub BYTEA NOT NULL CHECK(LENGTH(reserve_pub)=32)
+ ,start_date INT8 NOT NULL
+ ,end_date INT8 NOT NULL
+ ,wad_frequency INT8 NOT NULL
+ ,wad_fee_val INT8 NOT NULL
+ ,wad_fee_frac INT4 NOT NULL
+ ,master_sig BYTEA NOT NULL CHECK (LENGTH(master_sig)=64))
+ ,partner_base_url TEXT NOT NULL
+ );
-- Complete transaction
COMMIT;
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-docs] 01/36: first cut at DD13 spec writing, (continued)
- [taler-docs] 01/36: first cut at DD13 spec writing, gnunet, 2021/06/22
- [taler-docs] 06/36: add inbound wad tables, gnunet, 2021/06/22
- [taler-docs] 05/36: document test vector for #6855, gnunet, 2021/06/22
- [taler-docs] 03/36: work on w2w spec, gnunet, 2021/06/22
- [taler-docs] 09/36: clarifications, gnunet, 2021/06/22
- [taler-docs] 07/36: define merchant-bank facade, gnunet, 2021/06/22
- [taler-docs] 04/36: more dd13 spec updates, gnunet, 2021/06/22
- [taler-docs] 30/36: clarify merchant api, gnunet, 2021/06/22
- [taler-docs] 02/36: update spec for W2W, gnunet, 2021/06/22
- [taler-docs] 15/36: add missing configuration endpoints, gnunet, 2021/06/22
- [taler-docs] 16/36: add tables for configuration related to p2p payments,
gnunet <=
- [taler-docs] 22/36: revise purse amount handling, gnunet, 2021/06/22
- [taler-docs] 24/36: more detailed 401 error, gnunet, 2021/06/22
- [taler-docs] 33/36: simplify/cleaner docs, gnunet, 2021/06/22
- [taler-docs] 19/36: clarify, gnunet, 2021/06/22
- [taler-docs] 27/36: document wallet transaction deletion, gnunet, 2021/06/22
- [taler-docs] 10/36: misc spec fixes, gnunet, 2021/06/22
- [taler-docs] 28/36: doc update for #6889, gnunet, 2021/06/22
- [taler-docs] 18/36: add endpoint to delete bogus wire transfers, gnunet, 2021/06/22
- [taler-docs] 35/36: update manuals, gnunet, 2021/06/22
- [taler-docs] 11/36: remove dangerous API as per discussion with FD, gnunet, 2021/06/22