View Issue Details

IDProjectCategoryView StatusLast Update
0006921Talermerchant backend API (C)public2021-08-24 16:22
ReporterChristian Grothoff Assigned ToFlorian Dold  
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version0.8Fixed in Version0.8 
Summary0006921: merchant backend does not accept payments for 0-valued contracts
DescriptionFlorian writes:

I've just added an integration test for this, fixed processing of zero-value orders in the wallet and improved error reporting during DB transactions a bit.

The merchant, however, doesn't like /pay with zero coins *at all*: It doesn't even return a proper error message, but just resets the connection!

Jul 12 15:52:55-824536 taler-merchant-httpd-63937(58CZPKRCHKDFWNHEVC6ZEBNTCM) ERROR Assertion failed at taler-merchant-httpd_post-orders-ID-pay.c:1071. Aborting.

I would argue that the merchant *ought* to accept this request, for two reasons:
1. It allows the wallet to obtain the payment signature. Sure, the product might've been free (e.g. 100% special discount), but the wallet must still be able to prove that it paid for it, *not* just claimed it
2. Related, the session-bound payments also need /pay to work, think of a "temporarily 100% discounted blog article".

You can easily reproduce the merchant issue with the latest git wallet by running

$ taler-wallet-cli testing run-integrationtests payment-zero

- Florian
TagsNo tags attached.


Florian Dold

2021-07-22 19:04

manager   ~0018005

Fixed during the oec workshop.

Issue History

Date Modified Username Field Change
2021-07-13 06:46 Christian Grothoff New Issue
2021-07-13 06:46 Christian Grothoff Status new => assigned
2021-07-13 06:46 Christian Grothoff Assigned To => Christian Grothoff
2021-07-13 06:46 Christian Grothoff Assigned To Christian Grothoff =>
2021-07-13 06:46 Christian Grothoff Status assigned => confirmed
2021-07-22 19:04 Florian Dold Assigned To => Florian Dold
2021-07-22 19:04 Florian Dold Status confirmed => resolved
2021-07-22 19:04 Florian Dold Resolution open => fixed
2021-07-22 19:04 Florian Dold Note Added: 0018005
2021-07-30 13:56 Christian Grothoff Fixed in Version => 0.8
2021-07-30 13:59 Christian Grothoff Target Version => 0.8.1
2021-07-30 14:01 Christian Grothoff Target Version 0.8.1 => 0.8
2021-08-24 16:22 Christian Grothoff Status resolved => closed