View Issue Details

IDProjectCategoryView StatusLast Update
0010118Talermerchant backendpublic2025-08-31 17:09
ReporterChristian Grothoff Assigned Toschanzen 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
PriorityurgentSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version1.0 stretch goalsFixed in Version1.0 stretch goals 
Summary0010118: merchant backend should have API to list and revoke access tokens
DescriptionWe probably also want to extend the /token endpoint to allow the user to give a human-readable name to each token.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Relationships

related to 0009644 implementing bank ui should support listing and revoking tokens 
related to 0010108 closedsebasjm customer unable to extract authorization token for WooCommerce integration 

Activities

Christian Grothoff

2025-06-21 19:19

manager   ~0025293

We should ideally make sure the API does not differ from the same API of the bank (see 0009644)

schanzen

2025-06-22 21:16

administrator   ~0025309

Work started in dev/schanzen/issue_10118.
Descripton and serial columns had to be added to the tokens DB.
We deviate from the Bank API because we return the serial as "serial" and not "row_id" row ID seems semantically incorrect.

schanzen

2025-06-22 21:17

administrator   ~0025310

Open tasks:

- Test description (it works but needs proper test)
- Test pagination

Remaining effort: approx 4h

schanzen

2025-06-23 06:11

administrator   ~0025315

API for deletion by serial added, including tests.
Pagination tests added.
Documentation added.

Ready for review.
Major point: Name of pagination argument in this API is "serial". In core bank it is "row_id".

schanzen

2025-06-24 20:29

administrator   ~0025351

I just noticed while browsing issues that 0010108 actually requires an API that returns the token itself. Currently, we do NOT return the token in plain text.
This is because I modeled it after the Bank API, for which this is also the case. Adding the token field is trivial, if wanted/needed.

Christian Grothoff

2025-07-03 11:59

manager   ~0025398

Eh, the LoginTokenSuccessResponse seems to have the token in plain text, see "access_token" field. What am I not understanding?

schanzen

2025-07-08 09:53

administrator   ~0025444

Now that tokens have a serial that is returned I think all is good. This may be merged whenever. from the branch above and the issue resolved

Christian Grothoff

2025-07-09 21:00

manager   ~0025477

Eh, it appears the branch was already merged?
41e05e290d1c2fbf6edec1699ba97cea10887957 says it IS master and this issue-branch.

The "test_merchant_instance_auth.sh" fails for me now in master, which is bad. What happened there?

Christian Grothoff

2025-07-09 21:00

manager   ~0025478

(bumping urgency and target release, as this seems to have broken master).

schanzen

2025-07-10 06:38

administrator   ~0025481

Ups minor last minute regression when filtering expired tokens. Should be fixed in 2da3ea21808c036d8c5889774cb7d5c22d21e522

Christian Grothoff

2025-07-10 23:15

manager   ~0025491

Works for me now.

Issue History

Date ModifiedUsernameFieldChange
2025-06-21 19:18Christian GrothoffNew Issue
2025-06-21 19:18Christian GrothoffRelationship addedrelated to 0009644
2025-06-21 19:19Christian GrothoffNote Added: 0025293
2025-06-21 19:19Christian GrothoffStatusnew => implementing
2025-06-21 19:19Christian GrothoffTarget Version1.1 => 1.5
2025-06-21 20:32schanzenAssigned To => schanzen
2025-06-21 20:32schanzenStatusimplementing => assigned
2025-06-22 21:16schanzenNote Added: 0025309
2025-06-22 21:17schanzenNote Added: 0025310
2025-06-23 06:10schanzenAssigned Toschanzen => Christian Grothoff
2025-06-23 06:11schanzenNote Added: 0025315
2025-06-24 20:28schanzenRelationship addedrelated to 0010108
2025-06-24 20:29schanzenNote Added: 0025351
2025-07-03 11:59Christian GrothoffNote Added: 0025398
2025-07-03 11:59Christian GrothoffAssigned ToChristian Grothoff => schanzen
2025-07-08 09:53schanzenStatusassigned => feedback
2025-07-08 09:53schanzenNote Added: 0025444
2025-07-08 09:54schanzenAssigned Toschanzen => Christian Grothoff
2025-07-09 21:00Christian GrothoffNote Added: 0025477
2025-07-09 21:00Christian GrothoffAssigned ToChristian Grothoff => schanzen
2025-07-09 21:00Christian GrothoffStatusfeedback => assigned
2025-07-09 21:00Christian GrothoffPrioritynormal => urgent
2025-07-09 21:00Christian GrothoffTarget Version1.5 => 1.0 stretch goals
2025-07-09 21:00Christian GrothoffNote Added: 0025478
2025-07-10 06:38schanzenNote Added: 0025481
2025-07-10 23:15Christian GrothoffNote Added: 0025491
2025-07-10 23:15Christian GrothoffStatusassigned => informing
2025-07-10 23:15Christian GrothoffResolutionopen => fixed
2025-07-10 23:15Christian GrothoffFixed in Version => 1.0 stretch goals
2025-08-31 17:09Christian GrothoffStatusinforming => closed