View Issue Details

IDProjectCategoryView StatusLast Update
0007581Talerwallet-corepublic2024-08-28 21:31
ReporterFlorian Dold Assigned ToFlorian Dold Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PriorityhighSeverityfeatureReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.13Fixed in Version0.13 
Summary0007581: implement soft KYC for balance limits [estimate 2d]
DescriptionThe wallet should request a KYC check when the balance exceeds a threshold
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2024-01-06 21:26

manager   ~0020821

Bumping priority to 'high' as this is Milestone #7 on the KYC grant and thus should be finished by April at the latest.

Florian Dold

2024-06-26 15:37

manager   ~0022727

Needs the following:
1. querying and storing the limit announced by the exchange in /keys
2. in certain checkXXX operations, the wallet should return a flag to the UI to say that the KYC balance limit will be exceeded
3. when that is ignored, creating the operation must either:
 (a) raise an error
 (b) result in a transaction that is blocked for KYC

Florian Dold

2024-06-27 10:04

manager   ~0022742

=> We should have a transaction state for balance KYC

Florian Dold

2024-06-28 08:41

manager   ~0022754

Updating the estimate since it's rather complex and requires tx fsm changes.

Florian Dold

2024-07-08 14:44

manager   ~0022795

Last edited: 2024-07-08 14:49

Subtasks:
1. Store the exchange's balance thresholds in the wallet's database
2. Exchange entries must optionally have a KYC reserve associated with them. This reserve will be used for the merge operation of p2p payments *and* for KYC of withdrawals.
3. Threshold for withdrawals:
 - whenever a withdrawal exceeds the threshold, put the tx into a KYC state and create a KYC reserve (*not* the same reserve as the withdrawal reserve)
4. Threshold for p2p pull credit
5. Threshold for p2p push credit
6. Threshold for refunds

In wallet-core, we call the reserve that has KYC information associated with it the "merge reserve".
What's important: For withdrawals that exceed the withdrawal threshold, we don't do KYC on the reserve for the withdrawal, but on the P2P merge reserve for the involved exchange.

Florian Dold

2024-08-21 17:19

manager   ~0023022

Re-opening this, as the wallet-core transaction state should also reflect the balance-kyc status, the UIs should not have to query the exchange entry.

Florian Dold

2024-08-21 18:49

manager   ~0023024

The state machine now has been made simpler for the UIs, they just need to track the transaction's state, not the exchange entry state.

Issue History

Date ModifiedUsernameFieldChange
2023-01-13 01:26Florian DoldNew Issue
2023-01-13 01:26Florian DoldStatusnew => assigned
2023-01-13 01:26Florian DoldAssigned To => Florian Dold
2023-01-13 16:03Christian GrothoffSeverityminor => feature
2023-01-13 16:03Christian GrothoffTarget Version0.9.3 => 0.9.4
2023-04-13 18:36Florian DoldCategorywallet (TS core) => wallet-core
2023-04-21 12:50Florian DoldTarget Version0.9.4 => post-1.0
2023-08-24 14:28Florian DoldAssigned ToFlorian Dold =>
2023-08-24 14:28Florian DoldStatusassigned => acknowledged
2024-01-06 21:26Christian GrothoffPrioritynormal => high
2024-01-06 21:26Christian GrothoffNote Added: 0020821
2024-01-06 21:27Christian GrothoffStatusacknowledged => implementing
2024-01-06 21:27Christian GrothoffProduct Version => git (master)
2024-03-07 23:43Florian DoldAssigned To => Florian Dold
2024-03-07 23:43Florian DoldStatusimplementing => assigned
2024-03-07 23:43Florian DoldTarget Versionpost-1.0 => 0.11
2024-03-27 20:21Florian DoldSummaryimplement soft KYC for balance limits => implement soft KYC for balance limits [estimate 5h]
2024-05-13 19:23Christian GrothoffTarget Version0.11 => 0.13
2024-06-26 15:37Florian DoldNote Added: 0022727
2024-06-27 10:04Florian DoldNote Added: 0022742
2024-06-28 08:41Florian DoldSummaryimplement soft KYC for balance limits [estimate 5h] => implement soft KYC for balance limits [estimate 8-12h]
2024-06-28 08:41Florian DoldNote Added: 0022754
2024-07-08 14:20Florian DoldAssigned ToFlorian Dold => avalos
2024-07-08 14:44Florian DoldNote Added: 0022795
2024-07-08 14:46Florian DoldNote Edited: 0022795
2024-07-08 14:47Florian DoldNote Edited: 0022795
2024-07-08 14:49Florian DoldNote Edited: 0022795
2024-07-31 16:29Florian DoldAssigned Toavalos => Florian Dold
2024-08-05 16:58Florian DoldSummaryimplement soft KYC for balance limits [estimate 8-12h] => implement soft KYC for balance limits [estimate 2d]
2024-08-21 13:59Florian DoldStatusassigned => informing
2024-08-21 13:59Florian DoldResolutionopen => fixed
2024-08-21 17:19Florian DoldStatusinforming => assigned
2024-08-21 17:19Florian DoldNote Added: 0023022
2024-08-21 18:49Florian DoldStatusassigned => informing
2024-08-21 18:49Florian DoldNote Added: 0023024
2024-08-26 20:29Christian GrothoffFixed in Version => 0.13
2024-08-28 21:31Christian GrothoffStatusinforming => closed