View Issue Details

IDProjectCategoryView StatusLast Update
0009549Talerwallet (all platforms)public2025-05-10 02:11
ReporterChristian Grothoff Assigned ToChristian Grothoff 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
PrioritynormalSeverityblockReproducibilityalways
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version1.0Fixed in Version1.0 
Summary0009549: KYC-weirdness: wallet tries kyc-wallet for 1 CHF
DescriptionI still cannot withdraw from the TOPS exchange. There are several bugs with the KYC process:
1) While /keys clearly states no applicable withdraw or balance limit, the wallet makes a request to /kyc-wallet for just 1 CHF (even though it should be withdrawing 2 CHF!). So the amount is wrong, and the request is also wrong as the public limits of the exchange are clearly higher. Furthermore, the wallet did not even attempt a /withdraw.

2) Incorrectly (IMO), the exchange responds with a 451, despite there not being a wallet balance limit.

3) The wallet then tries to GET /kyc-check/1 which fails with a 400 Bad request, the exchange claiming that a segment in the URL is malformed with respect to "h_payto". The exchange is correct, the spec says /kyc-check/$H_NORMALIZED_PAYTO, which "1" clearly is not.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2025-02-17 07:56

manager   ~0024097

Note that this is with the FireFox WebExtension wallet, 0.13.1 1af7fbfb2d583984e4808f6cc52ad39ea8ef5c3d, which seems rather dated. Why do we have no more recent release?

Christian Grothoff

2025-02-17 08:06

manager   ~0024098

Ok, I overlooked that the exchange configuration DOES have a CHF:1 limit for *testing* configured. So the wallet does OK to request /kyc-wallet, but then does the wrong GET /kyc-check/!

Florian Dold

2025-02-19 22:38

manager   ~0024114

Uploaded the latest Webextension now. Please check if that changes anything for you. The wallet-core tests are all passing, so either we lack some important test or the wallet you tried was outdated.

Christian Grothoff

2025-02-20 08:02

manager   ~0024115

I'm now on 0.14.4, and it shows "KYC check required" -- but gives me no link to begin the process!
kyc-required.png (39,843 bytes)   
kyc-required.png (39,843 bytes)   

Christian Grothoff

2025-02-20 08:03

manager   ~0024116

When a withdraw hangs on KYC, the wallet obviously must allow me to open a tab/follow a link to the KYC SPA! WebExtension on withdraw doesn't do that!

sebasjm

2025-02-20 20:38

developer   ~0024117

Can we have a dump of the wallet database? My guess is that the migration failed.

Webex can do anything if wallet-core doesn't provide the kycURL. Here I think the problem is not in the webex

sebasjm

2025-04-03 19:35

developer   ~0024393

jq '.databases["taler-wallet-main-v10"].stores.transactions.records[0].value.transactionItem.kycUrl' is NULL

the migration from 0.13.1 to 0.14.4 didn't take into accounts transactions in kyc states and the spec for the URL changed.

sebasjm

2025-04-03 19:53

developer   ~0024394

but
jq '.databases["taler-wallet-main-v10"].stores.withdrawalGroups.records[1].value.kycAccessToken' has the kycToken present.
Why do we have kycUrl and accesToken? is kycUrl deprecated?

sebasjm

2025-04-03 20:01

developer   ~0024395

withdrawal status in the db
$ printf "%x\n" 16777222
1000006

-> PendingBalanceKyc

and wallet core is only building the URL for PendingKyc and SuspendedKyc
https://git.taler.net/taler-typescript-core.git/tree/packages/taler-wallet-core/src/withdraw.ts?id=07fc66eff79b8cc8e2325e56ccd269ae25e7a394#n384

sebasjm

2025-04-03 20:01

developer   ~0024396

07fc66eff..a6d2437eb

adds missing status

Christian Grothoff

2025-04-18 13:08

manager   ~0024607

Seems OK now.

Issue History

Date ModifiedUsernameFieldChange
2025-02-17 07:54Christian GrothoffNew Issue
2025-02-17 07:54Christian GrothoffStatusnew => assigned
2025-02-17 07:54Christian GrothoffAssigned To => Florian Dold
2025-02-17 07:55Christian GrothoffDescription Updated
2025-02-17 07:56Christian GrothoffNote Added: 0024097
2025-02-17 07:56Christian GrothoffAssigned ToFlorian Dold => sebasjm
2025-02-17 07:56Christian GrothoffAssigned Tosebasjm => Florian Dold
2025-02-17 08:06Christian GrothoffNote Added: 0024098
2025-02-19 22:37Florian DoldAssigned ToFlorian Dold => Christian Grothoff
2025-02-19 22:38Florian DoldNote Added: 0024114
2025-02-20 08:02Christian GrothoffNote Added: 0024115
2025-02-20 08:02Christian GrothoffFile Added: kyc-required.png
2025-02-20 08:02Christian GrothoffAssigned ToChristian Grothoff => sebasjm
2025-02-20 08:03Christian GrothoffNote Added: 0024116
2025-02-20 20:38sebasjmNote Added: 0024117
2025-02-20 20:38sebasjmAssigned Tosebasjm => Christian Grothoff
2025-02-20 20:38sebasjmStatusassigned => feedback
2025-02-21 15:49Christian GrothoffAssigned ToChristian Grothoff => sebasjm
2025-02-22 20:47Christian GrothoffPriorityurgent => normal
2025-03-21 00:59Christian GrothoffStatusfeedback => assigned
2025-04-03 19:35sebasjmNote Added: 0024393
2025-04-03 19:53sebasjmNote Added: 0024394
2025-04-03 20:01sebasjmNote Added: 0024395
2025-04-03 20:01sebasjmNote Added: 0024396
2025-04-03 20:02sebasjmAssigned Tosebasjm => Florian Dold
2025-04-03 20:02sebasjmStatusassigned => feedback
2025-04-15 15:38Christian GrothoffAssigned ToFlorian Dold => Christian Grothoff
2025-04-18 13:08Christian GrothoffStatusfeedback => informing
2025-04-18 13:08Christian GrothoffResolutionopen => fixed
2025-04-18 13:08Christian GrothoffFixed in Version => 1.0
2025-04-18 13:08Christian GrothoffNote Added: 0024607
2025-05-10 02:11Christian GrothoffStatusinforming => closed