View Issue Details

IDProjectCategoryView StatusLast Update
0009613Talermerchant portal webuipublic2026-03-21 00:23
ReporterDana Dram Assigned ToDana Dram Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PriorityhighSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version1.5Fixed in Version1.5 
Summary0009613: View total revenue from Orders [5d]
DescriptionCurrently, there is no dedicated section in the backend merchant application that allows users to view the total revenue generated from orders. This lack of visibility makes it challenging for users to track their earnings efficiently and gain insights into their financial performance. The feature aims to address this gap by providing a centralized location where users can view the total amount of money earned from orders over a specific period.
Steps To ReproduceA dedicated section to the application where users can view the total revenue generated from orders will be very helpfull for the users.
Tagsaccounting, GLS

Required notifications

Address or linkRemarkAdded byNotifiedActions

The plan

IDSummaryStatusAssigned ToEstimated effort (hours)
0010645Add tables to statistic charts for data closedschanzen
This issue (hours)
Its children (hours)0
Together (hours)0
Nothing is missing: the plan can be finished.

Relationships

related to 0010487 closedChristian Grothoff merchant backend should generate (yearly/quarterly/monthly) transaction report PDFs [5d] 
parent of 0010645 closedschanzen Add tables to statistic charts for data 
has duplicate 0010592 closedschanzen Dashboard in the Taler Merchant Backend SPA [post-1.0] 
related to 0010646 closedsebasjm Possibly get rid of react-chartjs-2 wrapper dependency 

Activities

Christian Grothoff

2025-03-12 23:37

manager   ~0024190

Indeed, we should add this.

Christian Grothoff

2025-03-23 14:42

manager   ~0024288

Last edited: 2025-03-23 14:43

merchant-0014.sql now adds various tables for backend statistics, as well as triggers to automatically populate those. We still need to:

1) Enhance taler-merchant-dbinit with a "-g" (garbage-collect) option which runs the *_gc() stored procedures --- and periodically run that via a systemd timer to clean up (old) statistics,
2) Define and implement a REST API to expose the collected statistics (using the stored procedures to access the interval statistics, the bucket ones can be gotten directly via SELECT),
3) Show the statistics in the SPA.

Christian Grothoff

2025-03-23 15:05

manager   ~0024289

937440b9..e4563c3f adds (1): -g option and timer job.

Christian Grothoff

2025-03-27 15:42

manager   ~0024318

taler-docs.git, commit 71782e169175c3741755455419ed9f252fbf7743, now has a REST API spec (vSTATISTICS) that should be implemented to expose transaction statistics to the SPA.

schanzen

2025-03-27 16:05

administrator   ~0024320

MerchantStatisticAmountByBucket and MerchantStatisticAmountByInterval are undefined types in the REST API spec.

Christian Grothoff

2025-03-27 16:09

manager   ~0024322

I screwed up the syntax, fixed now.

schanzen

2025-04-02 12:33

administrator   ~0024379

Last edited: 2025-04-02 12:36

Implemented first draft. Please review commit and merge as convienient: https://git.gnunet.org/merchant.git/commit/?h=dev/schanzen/issue_9613&id=74a26f25e341dbfff1f07d86e14ea08ffb6c35b0

Things to review: SQL statements (especially for intervals, since those are pretty much untested)

Christian Grothoff

2025-04-02 12:54

manager   ~0024380

See feedback on Mattermost...

schanzen

2025-04-28 13:57

administrator   ~0024697

I think you wanted to do a code review and then merge at some point.

Christian Grothoff

2025-05-20 10:36

manager   ~0024941

I've reviewed dev/schanzen/issue_9613 now, made a few minor bugfixes / stylefixes and merged into master in a single commit as 76419140..df28a7ea. Next up: SPA update to support showing the statistics.

Damian Pilka

2025-11-06 13:32

developer   ~0026320

related to 0010487

schanzen

2025-11-15 17:48

administrator   ~0026464

Last edited: 2025-11-15 17:53

A first draft of the UI attached. WIP https://git.gnunet.org/taler-typescript-core.git/log/?h=dev/schanzen/issue_9613
image.png (78,154 bytes)   
image.png (78,154 bytes)   

Damian Pilka

2025-11-17 10:02

developer   ~0026504

Great Thanks! Will a CSV (oder any other data) export be possible?

Christian Grothoff

2025-11-17 11:27

manager   ~0026505

I'd say lets first do the HTML tables and be sure that they contain what we want. After that, we can easily add CSV exports.

schanzen

2025-11-23 14:36

administrator   ~0026587

First implementation landed in master 4578a1854..f7f07e78d, no tables yet. I have yet to think about how those should look like.

schanzen

2025-11-24 13:24

administrator   ~0026593

Tables are in. Testing and UX improvement (and adding other stats etc) can begin I guess.
Currently, stats are not on the front page but in its own page accessible from the side bar, but promotion to a landing page is trivial, when necessary.

schanzen

2025-11-24 13:27

administrator   ~0026594

Attaching screenshots for reference/discussion displaying test data.

Issue History

Date ModifiedUsernameFieldChange
2025-03-12 15:31Dana DramNew Issue
2025-03-12 15:31Dana DramStatusnew => assigned
2025-03-12 15:31Dana DramAssigned To => Christian Grothoff
2025-03-12 23:37Christian GrothoffNote Added: 0024190
2025-03-12 23:38Christian GrothoffSeveritymajor => feature
2025-03-12 23:38Christian GrothoffTarget Version => 1.1
2025-03-13 13:41Christian GrothoffAssigned ToChristian Grothoff =>
2025-03-13 13:41Christian GrothoffStatusassigned => implementing
2025-03-13 13:41Christian GrothoffProduct Version => git (master)
2025-03-22 13:09Christian GrothoffCategorymechant backend => merchant backend
2025-03-23 14:42Christian GrothoffNote Added: 0024288
2025-03-23 14:43Christian GrothoffNote Edited: 0024288
2025-03-23 15:05Christian GrothoffNote Added: 0024289
2025-03-27 15:42Christian GrothoffNote Added: 0024318
2025-03-27 15:49schanzenAssigned To => schanzen
2025-03-27 15:49schanzenStatusimplementing => assigned
2025-03-27 16:05schanzenNote Added: 0024320
2025-03-27 16:09Christian GrothoffNote Added: 0024322
2025-04-02 12:33schanzenNote Added: 0024379
2025-04-02 12:33schanzenStatusassigned => feedback
2025-04-02 12:33schanzenAssigned Toschanzen => Christian Grothoff
2025-04-02 12:36schanzenNote Edited: 0024379
2025-04-02 12:54Christian GrothoffAssigned ToChristian Grothoff => schanzen
2025-04-02 12:54Christian GrothoffStatusfeedback => assigned
2025-04-02 12:54Christian GrothoffNote Added: 0024380
2025-04-17 21:08Christian GrothoffTag Attached: accounting
2025-04-17 21:08Christian GrothoffTarget Version1.1 => 1.5
2025-04-28 13:57schanzenAssigned Toschanzen => Christian Grothoff
2025-04-28 13:57schanzenStatusassigned => feedback
2025-04-28 13:57schanzenNote Added: 0024697
2025-05-20 10:36Christian GrothoffNote Added: 0024941
2025-05-20 10:36Christian GrothoffAssigned ToChristian Grothoff =>
2025-05-20 10:36Christian GrothoffStatusfeedback => implementing
2025-05-20 10:36Christian GrothoffCategorymerchant backend => merchant backoffice SPA
2025-05-20 10:41schanzenAssigned To => schanzen
2025-05-20 10:41schanzenStatusimplementing => assigned
2025-05-27 16:59schanzenTag Attached: vivy
2025-07-08 19:30Christian GrothoffTag Detached: vivy
2025-10-13 09:15Florian DoldSummaryView total revenue from Orders => View total revenue from Orders [5d]
2025-10-13 09:15Florian DoldTag Attached: GLS
2025-11-06 13:31Damian PilkaTarget Version1.5 => gls-required
2025-11-06 13:31Damian PilkaView Statuspublic => private
2025-11-06 13:32Damian PilkaNote Added: 0026320
2025-11-06 14:07Christian GrothoffView Statusprivate => public
2025-11-12 22:50Christian GrothoffRelationship addedhas duplicate 0010592
2025-11-15 17:48schanzenNote Added: 0026464
2025-11-15 17:48schanzenFile Added: image.png
2025-11-15 17:48schanzenRelationship addedrelated to 0010487
2025-11-15 17:53schanzenNote Edited: 0026464
2025-11-17 10:02Damian PilkaNote Added: 0026504
2025-11-17 11:27Christian GrothoffNote Added: 0026505
2025-11-23 14:36schanzenNote Added: 0026587
2025-11-23 14:38schanzenRelationship addedparent of 0010645
2025-11-23 14:39schanzenRelationship addedrelated to 0010646
2025-11-24 13:24schanzenNote Added: 0026593
2025-11-24 13:27schanzenNote Added: 0026594
2025-11-24 13:27schanzenFile Added: 2025-11-24T22:25:35,088572823+09:00.png
2025-11-24 13:27schanzenFile Added: 2025-11-24T22:25:46,839177883+09:00.png
2025-11-24 13:27schanzenFile Added: 2025-11-24T22:26:00,521201280+09:00.png
2025-11-24 13:27schanzenFile Added: 2025-11-24T22:26:27,664601343+09:00.png
2025-11-24 13:27schanzenFile Added: 2025-11-24T22:26:37,938545769+09:00.png
2025-11-24 13:28schanzenAssigned Toschanzen => Dana Dram
2025-11-24 13:28schanzenStatusassigned => feedback
2025-12-19 14:52Christian GrothoffTarget Versiongls-required => 1.5
2026-02-04 08:23Christian GrothoffTag Attached: vivy
2026-02-16 22:27Christian GrothoffTarget Version1.5 => post-1.0
2026-02-17 20:59Christian GrothoffTag Detached: vivy
2026-03-21 00:23Christian GrothoffStatusfeedback => informing
2026-03-21 00:23Christian GrothoffResolutionopen => fixed
2026-03-21 00:23Christian GrothoffFixed in Version => 1.5
2026-03-21 00:23Christian GrothoffTarget Versionpost-1.0 => 1.5
2026-03-21 00:23Christian GrothoffStatusinforming => closed
2026-08-23 14:18Florian DoldCategorymerchant backoffice SPA => merchant portal webui