View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0011168 | Taler | merchant backoffice SPA | public | 2026-02-27 22:43 | 2026-02-28 20:15 |
| Reporter | Christian Grothoff | Assigned To | sebasjm | ||
| Priority | immediate | Severity | block | Reproducibility | always |
| Status | resolved | Resolution | fixed | ||
| Platform | i7 | OS | Debian GNU/Linux | OS Version | squeeze |
| Product Version | git (master) | ||||
| Target Version | 1.5 | Fixed in Version | 1.5 | ||
| Summary | 0011168: SPC QR code shown in merchant SPA is invalid! | ||||
| Description | My bank app rejects the SPC QR code shown by my.taler-ops.ch as invalid. Note that it should also be shown by default and more prominently, but the fact that it may not be recognized is the blocker. | ||||
| Tags | No tags attached. | ||||
|
|
QR code decodes to: "" SPC 0200 1 CHXXXXXXXXXXXXXXXX S Taler Operations AG 2502 Biel-Bienne CH NON KYC:2Q4QKY2KBD3NPKQS9GMGX59W4N00JD9F1398N80C9YEG6JHH3PC0 EPD "" |
|
|
Clear problems: amount and currency are missing (but mandatory)! |
|
|
This scans, but still fails later: """ SPC 0200 1 CH6208704XXXXXXXXXX S Taler Operations AG 2502 Biel-Bienne CH 0.01 CHF NON KYC:2Q4QKY2KBD3NPKQS9GMGX59W4N00JD9F1398N80C9YEG6JHH3PC0 EPD """ (note: no new-line after EPD). |
|
|
Ah, found the issue: the bank account encoded is NOT the TOPS account, but the *origin* account. That's bad! You need to put the TOPS IBAN, not the IBAN of the *sender* in that position! |
|
|
iban seems to be right but amount added after in fe23834e4..0b15b3567 the currency is taken by the default currency of the merchant /config and value 1 |
|
|
I sent you some screenshot for testing, i don't have a swiss banking app |
|
|
The new QR code works, but the amount should be CHF 0.01, not CHF 1. Also, the QR code should be above the manual wire transfer instructions (and always visible), and not at the bottom. |
|
|
I think we need to *soon* get the 'tiny amount' from the /keys of the exchange (because it won't always be 0.01 for all currencies) and to support short wire transfer subjects (0010392) we anyway need to dynamically talk to the bank (!). So probably better to move the entire QR code generation logic into the C code base and give you an API to request the QR code from the merchant backend. WDYT? |
|
|
Q: should such an endpoint return an image or just the *text* to be encoded in the QR code? The C backend already contains libqrencode, so it *can* generate the image. Might make the JavaScript part more lightweight, right? |
|
|
only the text, the client software can encode that as a SVG or what's better for the device |
|
|
9513fe00..0edd1dd3 adds a new endpoint for this to the specification (not yet implemented). |
|
|
I think we can declare the urgent issue as done, and leave the rest for 0011169. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-02-27 22:43 | Christian Grothoff | New Issue | |
| 2026-02-27 22:43 | Christian Grothoff | Status | new => assigned |
| 2026-02-27 22:43 | Christian Grothoff | Assigned To | => sebasjm |
| 2026-02-27 22:45 | Christian Grothoff | Note Added: 0027936 | |
| 2026-02-27 22:47 | Christian Grothoff | Note Added: 0027937 | |
| 2026-02-27 23:05 | Christian Grothoff | Note Added: 0027938 | |
| 2026-02-27 23:07 | Christian Grothoff | Note Added: 0027939 | |
| 2026-02-28 00:24 | sebasjm | Note Added: 0027940 | |
| 2026-02-28 00:25 | sebasjm | Status | assigned => feedback |
| 2026-02-28 00:25 | sebasjm | Note Added: 0027941 | |
| 2026-02-28 00:25 | sebasjm | Assigned To | sebasjm => Christian Grothoff |
| 2026-02-28 11:41 | Christian Grothoff | Note Added: 0027942 | |
| 2026-02-28 11:41 | Christian Grothoff | Assigned To | Christian Grothoff => sebasjm |
| 2026-02-28 11:41 | Christian Grothoff | Status | feedback => assigned |
| 2026-02-28 11:46 | Christian Grothoff | Note Added: 0027943 | |
| 2026-02-28 11:47 | Christian Grothoff | Note Added: 0027944 | |
| 2026-02-28 17:52 | sebasjm | Note Added: 0027945 | |
| 2026-02-28 17:52 | sebasjm | Assigned To | sebasjm => Christian Grothoff |
| 2026-02-28 18:33 | Christian Grothoff | Note Added: 0027946 | |
| 2026-02-28 20:15 | Christian Grothoff | Note Added: 0027948 | |
| 2026-02-28 20:15 | Christian Grothoff | Assigned To | Christian Grothoff => sebasjm |
| 2026-02-28 20:15 | Christian Grothoff | Status | assigned => resolved |
| 2026-02-28 20:15 | Christian Grothoff | Resolution | open => fixed |
| 2026-02-28 20:15 | Christian Grothoff | Fixed in Version | => 1.5 |