taler
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Taler] Android Taler Wallet bug


From: Slack Coder
Subject: Re: [Taler] Android Taler Wallet bug
Date: Thu, 11 Jan 2024 13:30:42 -0500
User-agent: Mozilla Thunderbird

On 2024-01-09, at 21:28:57, Jonathan Krebs <jonathan.krebs@bruckbu.de> wrote:
On 09.01.24 21:16, Marc Stibane via Taler wrote:
On 2024-01-09, at 20:57:20, Slack Coder <slackcoder@server.ky> wrote:

When the same fulfillment URL is used for a second order, it results in an "You've already paid for this purchase" error.  This feels unexpected because its an entirely different order.
1) May a fulfillment URI be reused?
No: https://docs.taler.net/taler-merchant-api-tutorial.html#repurchase-detection-and-fulfillment-urls

To ensure this mechanism works as designed, merchants must make sure to not use the same fulfillment URL for different products or for physical products where customers may be expected to buy the article repeatedly. Similarly, it is crucial that merchants consistently use the same fulfillment URL for the same digital product where repurchase detection is desired.
Yeah, that’s what I was thinking. You can only use the same fulfillment URL for a virtual good (such as a book chapter on the Taler demo shop), where the customer should get access a second time instead of paying again.

Indeed, I made the wrong assumption about the requirement on my part.

From the documentation, I had read section [4.2 on 'Merchant Payment Processing'](https://docs.taler.net/taler-merchant-api-tutorial.html#merchant-payment-processing), whereas the information on the fulfillment URL is under its on section 4.4.  I checked also the [API documentation on orders](https://docs.taler.net/core/api-merchant.html#tsref-type-Order) which suggests looking at ContractTerms, the link for which directs to the [age restriction section](https://docs.taler.net/design-documents/024-age-restriction.html#tsref-type-ContractTerms).  Contract terms has its [own section elsewhere](https://docs.taler.net/core/api-merchant.html#the-contract-terms) which I had missed.



You can use the token $ORDER_ID in the fulillement url when creating the order, it gets replaced by the merchant backend with the actual order id, to create a unique url.


However the Wallet app/webex shouldn’t show an "error" - but rather a hint to the user that they should be able to get access to the product without paying again.
Its correctly shown as a hint, not an error.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]