Commit Graph
18 Commits
Author SHA1 Message Date
efrilm 582dc75543 Reapply "feat(loyalty): EnakPoint & EnakCoin" (#32)
This reverts commit 4e24f9bbb0.
2026-09-30 15:31:44 +07:00
efrilmandClaude Opus 5.5 4e24f9bbb0 Revert "feat(loyalty): EnakPoint & EnakCoin" (#32)
This reverts merge commit 645da30, returning main to f0ff59f.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:16:15 +07:00
efrilmandClaude Opus 5.5 0c4dd72583 feat(loyalty): one-time EnakPoint payment code
Adds POST /customer/wallet/payment-code (docs/prd-point-coin.md F9, K8,
PC-304). The customer approves with their PIN on their own phone and gets a
6-digit code, as digits and as a QR payload (enakpoint:<code>) for the app
to render, valid for two minutes. The PIN is never typed at the cashier.

Codes are drawn from crypto/rand and stored in Redis with SET NX and a TTL,
bound to the customer; a new code retires the previous one. Redeeming is a
single Lua step that uses the code up only if it belongs to the order's
customer, so it stays one-time under a race, and a cashier scanning it
against the wrong order does not burn it for its owner, which a plain
GETDEL would. Expired, used, unknown and other customers' codes are all
refused alike.

Tests run against miniredis, added as a test dependency.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 11:37:20 +07:00
ryan 2c34578a98 Merge remote-tracking branch 'origin/feature/notification' into self-order+notification
# Conflicts:
#	go.mod
#	go.sum
#	internal/app/app.go
#	internal/router/router.go
2026-05-10 12:23:16 +07:00
Efril 23b6293502 fcm setup 2026-05-09 12:24:44 +07:00
ryan 07b186c986 Barcode generation with Boombuler 2026-05-09 01:01:25 +07:00
ryan 3c103b7692 Token and session implementation with Redis 2026-05-08 18:41:14 +07:00
Aditya Siregar 44dc3fa61c Add void and printer type 2025-08-06 00:02:49 +07:00
aditya.siregar 4f5950543e init 2025-07-18 20:10:29 +07:00
aditya.siregar 1201b2e45b Add void print 2025-06-24 02:47:44 +07:00
aditya.siregar c41826bb1b Update Member 2025-03-15 15:51:18 +08:00
aditya.siregar 18003313dd Update template email 2025-03-08 00:35:23 +07:00
aditya.siregar 3c80b710af Update Infra 2025-03-04 20:36:17 +07:00
aditya.siregar e8f39c659e update env 2024-12-27 11:01:58 +07:00
Juanda Ritonga 8be33d521f Customer Completed 2024-12-23 11:20:33 +07:00
aditya.siregar 5a0dec6128 add forget password 2024-07-23 01:36:25 +07:00
aditya.siregar 4ae9079ff9 add order and payment 2024-06-04 02:59:31 +07:00
aditya.siregar 67f1dbc850 init project 2024-05-28 14:14:55 +07:00