Skip to content

Commit 4fbf430

Browse files
Merge pull request #210 from Agbasimere/feature/usage-events-repository
feat: usage events repository with idempotency
2 parents eb6990d + 3a0256e commit 4fbf430

3 files changed

Lines changed: 768 additions & 0 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,12 @@ See [docs/gateway-api-key-auth.md](./docs/gateway-api-key-auth.md) for the full
3535
- `balanceSnapshot` is stored in smallest units using non-negative integer `bigint` values.
3636
- `findByUserId` is network-aware and returns the vault for a specific user/network pair.
3737

38+
## Usage events repository behavior
39+
40+
- `PgUsageEventsRepository` provides idempotent `create(...)` writes keyed by `requestId` to prevent double billing on retries.
41+
- Read methods support time-bounded lookups by `userId` or `apiId`, plus aggregate totals for user spend and API revenue.
42+
- Amounts are handled as smallest-unit `bigint` values in application code, even though the backing column is named `amount_usdc`.
43+
3844
## Local setup
3945

4046
1. **Prerequisites:** Node.js 18+

0 commit comments

Comments
 (0)