View Issue Details

IDProjectCategoryView StatusLast Update
0005245Talermerchant backendpublic2024-01-12 13:04
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
PrioritynormalSeverityfeatureReproducibilityhave not tried
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.5Fixed in Version0.5 
Summary0005245: make /proposal easier to use
DescriptionRight now too much information that could be specified in the backend must be given in the frontend.

Ideally /proposal works by only giving:
* product name
* amount to pay (even as string!)
* fulfillment URL
(* echoed nonce)

All other fields (product list with single item) can then be inferred or looked up from the backend configuration.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Relationships

related to 0005198 closedChristian Grothoff merchant should check a reserve's status before adding it as a tipping reserve 

Activities

Florian Dold

2018-01-04 12:37

manager   ~0012724

Note that I'm not suggesting any restrictions on the current API, just some convenience features. You should still be able to specify things / override defaults if desired.

Christian Grothoff

2018-01-13 15:37

manager   ~0012783

As for address/location data, I had discussed with Florian using something like:

[merchant-location-FOO]
street = FooStreet 4
city = FooCity
country = Fooland

[merchant-location-BAR]
street = BarStreet 4
city = BarCity
country = Barland

to generate the 'name->location' map in the contract. "FOO/BAR" would be the labels we can use in the rest of the contract (jurisdiction, shipping address, etc.). Naturally, the frontend must still be able to _extend_ the location set, as the customer's shipping address won't be known to the backend. So a common config might be:

[merchant-location-jurisdiction]
street = High Street 1
city = BarCity
country = Bahamas

[merchant-location-shipsfrom]
street = FactoryStreet 4
city = BarCity
country = China

[merchant-location-billing]
street = Bank Street 3
city = London
country = Divided Kingdom

Which would be turned into

locations = {
  "billing" = { "street" : "Bank Street 3",
                "city" : "London" },
  "..." = "..."
}
(pardon my JSON syntax, likely some brackets wrong, but you get the idea).

Florian Dold

2018-01-17 22:56

manager   ~0012794

Fixed in f52a678f

Issue History

Date ModifiedUsernameFieldChange
2018-01-04 12:37Florian DoldNew Issue
2018-01-04 12:37Florian DoldStatusnew => assigned
2018-01-04 12:37Florian DoldAssigned To => Marcello Stanisci
2018-01-04 12:37Florian DoldNote Added: 0012724
2018-01-13 15:37Christian GrothoffNote Added: 0012783
2018-01-13 15:37Christian GrothoffSeverityminor => feature
2018-01-13 15:37Christian GrothoffProduct Version => git (master)
2018-01-13 15:37Christian GrothoffTarget Version => 0.5
2018-01-15 12:12Florian DoldAssigned ToMarcello Stanisci => Florian Dold
2018-01-15 14:35Christian GrothoffRelationship addedrelated to 0005198
2018-01-17 22:56Florian DoldStatusassigned => informing
2018-01-17 22:56Florian DoldResolutionopen => fixed
2018-01-17 22:56Florian DoldNote Added: 0012794
2018-04-15 18:35Christian GrothoffFixed in Version => 0.5
2018-04-15 18:36Christian GrothoffStatusinforming => closed
2024-01-12 13:04Christian GrothoffCategorymerchant backend API (C) => mechant backend
2025-03-22 13:09Christian GrothoffCategorymechant backend => merchant backend