View Issue Details

IDProjectCategoryView StatusLast Update
0009142Talerexchangepublic2024-09-17 16:29
ReporterFlorian Dold Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Target Version0.14Fixed in Version0.14 
Summary0009142: exchange is storing KYC attributes in a weird, undocumented JSON format [4-8h]
DescriptionWhen doing a POST to /kyc-upload/... via "Content-Type: application/x-www-form-urlencoded", the exchange is storing the data in a rather weird and undocumented format.

For example, POSTing the following payload

  full_name=Alice+Abc&birthdate=2000-01-01

will result in the following attributes JSON:

{
  "full_name": {
    "text": "Alice Abc"
  },
  "birthdate": {
    "text": "2020-01-01"
  }
}

For file uploads, the exchange is using a much saner format ({filename, content_type, data}) and not this weird "type as key" format.

Ideally the exchange should store plain attributes just as a string:

{
  "full_name": "Alice Abc",
  "birthdate": "2020-01-01"
}
TagsNo tags attached.

Activities

Christian Grothoff

2024-09-12 10:21

manager   ~0023262

Ah, it's not that. The format is always the same!

content_type?: string; // unavailable in your case
filename?: string; // unavailable in your case
text?: string; // non-binary data // you got this one!
data? string; // base32-encoded binary data

Christian Grothoff

2024-09-12 12:03

manager   ~0023266

docs.git::52fcb58d..4a8ae565 documents the FORM attribute data format (see KycStructuredFormData) and also gives a proper reference to GANA for the KYC provider (LINK-check) style attribute specification.

Issue History

Date Modified Username Field Change
2024-08-27 16:25 Florian Dold New Issue
2024-08-27 16:25 Florian Dold Status new => assigned
2024-08-27 16:25 Florian Dold Assigned To => Christian Grothoff
2024-09-05 13:38 Christian Grothoff Summary exchange is storing KYC attributes in a weird, undocumented JSON format => exchange is storing KYC attributes in a weird, undocumented JSON format [4-8h]
2024-09-12 10:21 Christian Grothoff Note Added: 0023262
2024-09-12 12:03 Christian Grothoff Note Added: 0023266
2024-09-12 12:03 Christian Grothoff Status assigned => resolved
2024-09-12 12:03 Christian Grothoff Resolution open => fixed
2024-09-12 12:03 Christian Grothoff Fixed in Version => 0.14
2024-09-17 16:29 Christian Grothoff Status resolved => closed