View Issue Details

IDProjectCategoryView StatusLast Update
0010545Talerspecificationpublic2026-04-06 19:45
Reportersebasjm Assigned ToChristian Grothoff  
PriorityhighSeveritytextReproducibilityalways
Status resolvedResolutionfixed 
Product Version1.0 
Target Version1.6Fixed in Version1.6 
Summary0010545: add error code in merchant spec
DescriptionIn order to handle failure gracefully.

Right now we are only showing the hint that comes from the server which is not good for end users. Maybe good for admins.

We need the same that we did on libeufin: all the possible error codes must be on the spec. Any code returned by the server that is not part of the spec will fall back to the present behavior which shows a generic error and the hint from the server.

With this enumeration the client must cover this path with a meaningful error with i18n or event create special ui to handle the failure better.

For example:

$ curl 'http://merchant.taler.test/private/orders' -H 'Authorization: Bearer secret-token:CEQDN7P9217ZWEDG46PKFKXGXMVY3P6VFFJX6ZCYNFG2SXETF3N0' --data-raw '{"order":{"amount":"KUDOS:2","summary":"w","products":[],"pay_deadline":{"t_s":1762289268},"wire_transfer_deadline":{"t_s":1762454868},"refund_deadline":{"t_s":1762454868}},"inventory_products":[],"create_token":true}'
{
  "code": 2500,
  "hint": "The merchant instance has no active bank accounts configured. However, at least one bank account must be available to create new orders."
}

https://docs.taler.net/core/api-merchant.html#post-[-instances-$INSTANCE]-private-orders

TagsNo tags attached.

Relationships

related to 0011104 closedChristian Grothoff backend return 500 when script failed, spec mandate 502 
related to 0010546 closedChristian Grothoff merchant backend should report the status of each exchange for each bank account [3d] 

Activities

Christian Grothoff

2026-04-06 19:45

manager   ~0028377

Most error codes should now be in the spec. There might be a few missing, but the big work is IMO done.

Issue History

Date Modified Username Field Change
2025-11-04 19:56 sebasjm New Issue
2025-11-04 20:20 Christian Grothoff Assigned To => Christian Grothoff
2025-11-04 20:20 Christian Grothoff Status new => assigned
2025-11-04 20:21 Christian Grothoff Target Version => 1.5
2025-11-04 22:01 Christian Grothoff Relationship added related to 0010546
2025-11-11 12:25 Christian Grothoff Summary add error code in merchant spec => add error code in merchant spec [30d]
2025-11-15 18:51 Christian Grothoff Target Version 1.5 => 1.7
2025-11-15 18:51 Christian Grothoff Status assigned => confirmed
2025-11-18 21:31 Stefan Relationship added related to 0010630
2025-12-03 10:32 Stefan Relationship deleted related to 0010630
2025-12-21 20:03 Christian Grothoff Assigned To Christian Grothoff =>
2025-12-21 20:03 Christian Grothoff Severity major => text
2025-12-21 20:03 Christian Grothoff Product Version => 1.0
2026-02-18 18:24 sebasjm Relationship added related to 0011104
2026-04-02 18:00 Christian Grothoff Assigned To => Christian Grothoff
2026-04-02 18:00 Christian Grothoff Status confirmed => assigned
2026-04-02 18:01 Christian Grothoff Summary add error code in merchant spec [30d] => add error code in merchant spec [15d]
2026-04-03 00:51 Christian Grothoff Summary add error code in merchant spec [15d] => add error code in merchant spec [10d]
2026-04-06 19:45 Christian Grothoff Status assigned => resolved
2026-04-06 19:45 Christian Grothoff Resolution open => fixed
2026-04-06 19:45 Christian Grothoff Fixed in Version => 1.6
2026-04-06 19:45 Christian Grothoff Note Added: 0028377
2026-04-06 19:45 Christian Grothoff Target Version 1.7 => 1.6
2026-04-06 19:45 Christian Grothoff Summary add error code in merchant spec [10d] => add error code in merchant spec