View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006616 | Taler | mechant backend | public | 2020-10-02 12:19 | 2024-01-12 14:04 |
Reporter | Florian Dold | Assigned To | Florian Dold | ||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Target Version | 0.8 | Fixed in Version | 0.8 | ||
Summary | 0006616: GET /private/orders/{order_id} should return different response for claimed orders | ||||
Description | In case of claimed (but unpaid!) orders, we do not want to return an order_status=="unpaid" response with taler_pay_uri or a order_status_url. Instead, we should have a new subtype of the response with the tag order_status=="claimed" and without the URIs for the wallet / customer's browser, as we don't want to show the QR code for a claimed order. If the customer wants to pay for the already claimed order, this should be done from the wallet (once supported). Storefronts should create a new order when the current order of the customer is claimed but unpaid. | ||||
Tags | No tags attached. | ||||
|
62c251a..75af774 updates the merchant API specification. |
|
75af774..aaa614e updates the payment flow specification (with a new step 6 to handle the new claimed order status). |
|
fc51e02..e240640 implements the required support in the merchant backend. |
|
2cfe234..120d5d4 implements the new logic in the demo frontend. |
|
Should be fixed, please double-check. |
|
The frontend is currently broken, likely due to an incomplete merge of the i18n branch. The following integration tests of the wallet are broken (I'll look into that, likely expectations of the test harness are wrong due to API changes): lib/test-merchant-refund-api.js lib/test-pay-paid.js lib/test-paywall-flow.js lib/test-refund-auto.js lib/test-refund-incremental.js lib/test-refund.js lib/test-timetravel.js |
|
I've fixed the frontend issue due to the incomplete i18n code. |
|
The wallet integration tests now all work again. However, we still need to decide if what we include right now in the order_status=="claimed" response is sufficient. Once that's done (either no action or change in the merchant backend), this bug can be closed. |
|
Do you agree with my suggestion via e-mail to NOT change the merchant and instead kill the test, to avoid returning information that as you can only result in confused/bad use of the API? |
|
I don't think it can *only* result in confused use of the API. There are legitimate use cases (like a ticket shop, where you do *not* use session IDs, but want the user to finish paying for an existing, claimed order) where the storefront needs the order_status_url / taler_pay_uri. Let's say we would implement Taler integration for pretix --- how would you handle claimed orders here? I don't think it's a good idea to have the pretix Taler plugin re-implement the logic to generate the taler_pay_uri / order_status_url, right? |
|
Discussed offline: Shops will never allow to "continue" a payment via a QR code, but instead only allow a new order to be created (if products are available) or ask the user to continue paying via their wallet. Offering a "continue paying" QR code could be confusing if you have a browser wallet but previously paid with your phone, which is why we're ditching the idea! |
Date Modified | Username | Field | Change |
---|---|---|---|
2020-10-02 12:19 | Florian Dold | New Issue | |
2020-10-02 12:19 | Florian Dold | Status | new => assigned |
2020-10-02 12:19 | Florian Dold | Assigned To | => Christian Grothoff |
2020-10-02 19:41 | Christian Grothoff | Note Added: 0016990 | |
2020-10-02 19:44 | Christian Grothoff | Note Added: 0016991 | |
2020-10-02 19:44 | Christian Grothoff | Note Edited: 0016991 | |
2020-10-02 20:29 | Christian Grothoff | Note Added: 0016992 | |
2020-10-02 21:55 | Christian Grothoff | Note Added: 0016993 | |
2020-10-02 22:01 | Christian Grothoff | Assigned To | Christian Grothoff => Florian Dold |
2020-10-02 22:01 | Christian Grothoff | Status | assigned => feedback |
2020-10-02 22:01 | Christian Grothoff | Note Added: 0016994 | |
2020-10-08 18:53 | Florian Dold | Note Added: 0017006 | |
2020-10-09 19:35 | Christian Grothoff | Note Added: 0017007 | |
2020-11-03 16:05 | Florian Dold | Assigned To | Florian Dold => Christian Grothoff |
2020-11-03 16:06 | Florian Dold | Note Added: 0017090 | |
2020-11-03 16:06 | Florian Dold | Status | feedback => assigned |
2020-11-04 13:12 | Christian Grothoff | Assigned To | Christian Grothoff => Florian Dold |
2020-11-04 13:12 | Christian Grothoff | Note Added: 0017103 | |
2020-11-04 13:58 | Florian Dold | Note Added: 0017104 | |
2020-11-04 15:09 | Florian Dold | Note Added: 0017105 | |
2020-11-04 15:09 | Florian Dold | Status | assigned => resolved |
2020-11-04 15:09 | Florian Dold | Resolution | open => fixed |
2021-07-30 13:57 | Christian Grothoff | Fixed in Version | => 0.8 |
2021-08-24 16:23 | Christian Grothoff | Status | resolved => closed |
2024-01-12 14:04 | Christian Grothoff | Category | merchant backend API (C) => mechant backend |