View Issue Details

IDProjectCategoryView StatusLast Update
0006522Talerspecificationpublic2021-08-24 14:23
ReporterFlorian Dold Assigned ToFlorian Dold 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
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Target Version0.8Fixed in Version0.8 
Summary0006522: issues with taler://fulfillment-success URIs
DescriptionWe introduced the taler://fulfillment-success URIs as a hack for orders that don't have a meaningful http(s) fulfillment URL, such as the snack machine orders.

However, there are two issues with it:

1. It is not i18n-friendly
2. The /orders/{order_id} page doesn't deal well with it (it will redirect the browser to the taler:// URI, which most browsers don't like)

For scenarios like the snack machine, we have various options:

(a) don't show any customized fulfillment URL message
(b) include the fulfillment success message in the original contract terms, as an i18n-ized field.
(c) return the i18n-ized message as part of both the /pay response and the order status, once the order is paid. The storefront would then set this message when doing POST /private/orders, but it would *not* be part of the order.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2020-08-24 07:29

manager   ~0016729

I like (b).

Florian Dold

2020-08-24 07:51

manager   ~0016730

Agreed. However, we need to make it clear that with this approach, the fulfillment success message may not contain secret data.

If it really turns out somebody needs it, we can implement (c) post-1.0, as it allows purchasing a secret without using a browser.

Christian Grothoff

2020-08-24 10:49

manager   ~0016732

I think putting secret data into the fulfillment-message was never exactly the idea, and I don't have a good use case for that right now. So indeed, IF there is a good use case, we can do it post 1.0. Let me know what fieldname you want to use in the contract, and I'll update taler-mdb.

Florian Dold

2020-08-24 10:51

manager   ~0016733

I'd suggest fulfillment_message (and of course fulfillment_message_i18n).

Christian Grothoff

2020-08-24 11:04

manager   ~0016734

Ok.

Christian Grothoff

2020-08-24 12:22

manager   ~0016741

Implemented in taler-mdb in 5e31cfb..e2dccbd

Florian Dold

2020-08-24 14:51

manager   ~0016749

Implemented in wallet-core and updated wallet docs as well.

Android implementation separately tracked here: 0006528

Issue History

Date ModifiedUsernameFieldChange
2020-08-24 06:41Florian DoldNew Issue
2020-08-24 06:41Florian DoldStatusnew => assigned
2020-08-24 06:41Florian DoldAssigned To => Christian Grothoff
2020-08-24 07:29Christian GrothoffNote Added: 0016729
2020-08-24 07:51Florian DoldNote Added: 0016730
2020-08-24 10:49Christian GrothoffNote Added: 0016732
2020-08-24 10:51Florian DoldNote Added: 0016733
2020-08-24 11:04Christian GrothoffNote Added: 0016734
2020-08-24 12:22Christian GrothoffNote Added: 0016741
2020-08-24 12:30Christian GrothoffAssigned ToChristian Grothoff => Florian Dold
2020-08-24 14:51Florian DoldStatusassigned => informing
2020-08-24 14:51Florian DoldResolutionopen => fixed
2020-08-24 14:51Florian DoldNote Added: 0016749
2020-10-03 12:09Christian GrothoffFixed in Version => 0.8
2020-10-03 12:10Christian GrothoffTarget Version => 0.8
2021-08-24 14:23Christian GrothoffStatusinforming => closed
2024-01-12 13:02Christian GrothoffCategorymerchant backend API (HTTP specification) => specification