From be9b3b11de22fb3f96715ade944add08f32bd9e2 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Fri, 26 Aug 2016 02:32:54 +0200 Subject: Clarifications --- articles/ui/ui.tex | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'articles') diff --git a/articles/ui/ui.tex b/articles/ui/ui.tex index 7ed7bf9a3..79653256b 100644 --- a/articles/ui/ui.tex +++ b/articles/ui/ui.tex @@ -815,6 +815,7 @@ X-Taler-Contract-Url: https://shop/generate-contract/42 ... + You do not seem to have Taler installed, here are other payment options: ... @@ -892,6 +893,9 @@ URL in a browser will show the resource associated with the purchase. This resource can be a digital good such as a news article, or simply a confirmation for products that are delivered by other means. +% FIXME: maybe we should have the URL that we are requesting +% in the example, and not just the response? + \begin{figure*}[t!] \lstset{language={}} \begin{lstlisting} @@ -904,6 +908,7 @@ X-Taler-Offer-Url: https://shop/generate-contract/42 ... + You do not seem to have Taler installed, here are other payment options: ... @@ -912,7 +917,8 @@ X-Taler-Offer-Url: https://shop/generate-contract/42 \caption{Sample HTTP response when the user agent navigates to a fulfillment URL without the session state that indicates they have paid for the resource. - Note the minor difference to Listing~\ref{listing:http-contract}.} + Note that unlike in Listing~\ref{listing:http-contract}, the response references + a contract that typically is already known to the wallet via its hash code.} \label{listing:http-execute} \end{figure*} @@ -926,6 +932,9 @@ for example because the session state was lost,\footnote{This can Also, some user agents (such as the TOR browser) do not support persistent (non-session) cookies.} it {\em again} triggers a payment process (either via JavaScript or using {\tt 402 Payment Required}, see Figure~\ref{listing:http-execute}). +Since the fulfillment URL refers to a contract that typically is already known +to the user's wallet, it suffices to pass the contract hash (instead of +full contract) to the wallet. If the wallet remembers paying for the contract previously, this causes the wallet to retransmit the signed coins that are associated with the purchase to the merchant. -- cgit v1.2.3