Files
nick-doc/Issues/ISSUE-052-payment-completed-status-not-counted-in-successful-payments-stats.md
Siavash Sameni dceaf82934 audit: 2026-05-30 full-codebase audit — report, issues, docs, runbooks
Full-codebase-audit 2026-05-30 outputs:
- Audit report: 09 - Audits/Full Codebase Audit - 2026-05-30.md
- 81 issue files ISSUE-055..135 (decisions + 1 skipped no-brainer).
- Scanner docs from scratch (was zero): architecture, data model, API ref, payment
  flow, operations runbook + repo README.
- Doc-sync updates across API reference, data models, flows, design system.
- Secret Rotation Runbook (08 - Operations) for the exposed credentials.
- Reusable workflow guide (07 - Development) + .claude/workflows/full-codebase-audit.js.

Issues remain status:open intentionally — the code fixes are uncommitted-then-committed
working-tree changes per repo and aren't "resolved" until merged/deployed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-30 18:48:04 +04:00

1.5 KiB

issue, title, severity, domain, status, resolved, fix, labels, status, created, source
issue title severity domain status resolved fix labels status created source
052 'completed' payment status not counted in successfulPayments stats — admin dashboard undercounts major Payment resolved 2026-05-29 Added case 'completed' to the successfulPayments switch in paymentService.ts getPaymentStats.
backend
bug
open 2026-05-29 Doc vs Code Audit 2026-05-29

🟠 'completed' payment status not counted in successfulPayments stats — admin dashboard undercounts

Severity: major Domain: Payment Labels: backend, bug

Description

paymentService.getPaymentStats() aggregate counts only 'confirmed' as successfulPayments. 'completed' is excluded. Most SHKeeper/DePay payments follow the terminal path pending → processing → completed, so the bulk of successful payments are invisible in the success count.

Current Behavior

Admin dashboard successfulPayments count excludes all 'completed' payments. For a platform where SHKeeper is the primary provider, this count reads close to zero even after many successful payments.

Expected Behavior

successfulPayments should count both 'confirmed' and 'completed' (the terminal success states), or the stat should be clearly documented as confirmed-only.

Affected Files

  • backend/src/services/payment/paymentService.tsgetPaymentStats() aggregate pipeline

References