View Issue Details

IDProjectCategoryView StatusLast Update
0009961Talermerchant backendpublic2026-03-20 23:55
ReporterBohdan 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
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Version1.0 
Target Version1.5Fixed in Version1.5 
Summary0009961: Implement unclaim endpoint for merchant [2d]
DescriptionThe merchant backend must be notified when a payment is cancelled, so the associated order can be marked as unclaimed and made available for other wallets to process and pay.

Tagsux

Required notifications

Address or linkRemarkAdded byNotifiedActions

Relationships

related to 0010567 informingFlorian Dold Can't continue from claimed but unpaid order 
child of 0011019 informingFlorian Dold support new unclaim endpoint in wallet-core 

Activities

Christian Grothoff

2025-05-15 11:05

manager   ~0024914

This is a bit brief. We first need to update the merchant spec with the new endpoint (make sure to pass the nonce).
Then wallet-core support, and we need to specify exactly *when* wallet-core is supposed to do the unclaim (on cancel/delete of claimed, unexpired offers).

Christian Grothoff

2025-11-05 19:30

manager   ~0026312

Related: right now, there is no way to detect via the public endpoints that an order was claimed. In today's QC meeting, we discussed that it might be good for the Turnstiles to change the display once the order was claimed -- and possibly even allow the user to force setting up a new order if the existing claimed order cannot be paid for some reason. So when we do this, we should also consider enabling long-polling for the claim/unclaim status in the public GET API.

Christian Grothoff

2026-02-03 08:15

manager   ~0027543

Actually, the public GET /orders/$ID will return a 202/302 for *claimed* orders with the *public_reorder_url* (which is exactly what Turnstile would need) **if** the request is unauthenticated (no claim token, no contract hash) **and** the *public_reorder_url* is set in the contract terms. So the above comment is incorrect, Turnstile should just support the *public_reorder_url* field and that should allow the wallets to do the rest.

Christian Grothoff

2026-02-05 20:05

manager   ~0027611

Endpoint in principle implemented, needs testing!

Issue History

Date ModifiedUsernameFieldChange
2025-05-15 10:26BohdanNew Issue
2025-05-15 11:04Christian GrothoffAssigned To => Bohdan
2025-05-15 11:04Christian GrothoffStatusnew => assigned
2025-05-15 11:04Christian GrothoffTarget Version1.0 stretch goals => post-1.0
2025-05-15 11:05Christian GrothoffNote Added: 0024914
2025-05-15 11:07Christian GrothoffTag Attached: ux
2025-08-29 09:25BohdanAssigned ToBohdan =>
2025-08-30 23:23Christian GrothoffStatusassigned => implementing
2025-11-05 19:30Christian GrothoffNote Added: 0026312
2026-01-26 06:45Christian GrothoffAssigned To => Christian Grothoff
2026-01-26 06:45Christian GrothoffStatusimplementing => assigned
2026-01-26 06:45Christian GrothoffStatusassigned => implementing
2026-02-02 17:37Christian GrothoffStatusimplementing => assigned
2026-02-03 08:15Christian GrothoffNote Added: 0027543
2026-02-04 08:26Christian GrothoffRelationship addedrelated to 0010567
2026-02-04 21:39Christian GrothoffSummaryImplement unclaim endpoint for merchant => Implement unclaim endpoint for merchant [2d]
2026-02-05 20:05Christian GrothoffNote Added: 0027611
2026-02-06 20:24Christian GrothoffRelationship addedchild of 0011019
2026-02-06 21:12Christian GrothoffStatusassigned => informing
2026-02-06 21:12Christian GrothoffResolutionopen => fixed
2026-02-06 21:12Christian GrothoffFixed in Version => 1.5
2026-02-06 21:12Christian GrothoffTarget Versionpost-1.0 => 1.5
2026-03-20 23:55Christian GrothoffStatusinforming => closed