Debit player balance for a bet
Direction: Wuzzlo → Operator
Debits a player’s wallet when a bet is accepted.
Processing order
- Verify the Wuzzlo
Signaturebefore creating any records. - Check
reqIdandtransactionIdidempotency. - Validate available funds.
- Debit atomically and return the resulting balance.
Response contract
Security: Invalid signatures must not create transaction or idempotency records.
Authentication
Wuzzlo-to-Operator: Base64 RSA-SHA256 PKCS#1 v1.5 signature of the exact UTF-8 JSON body, verified with the Wuzzlo public key.
Request
Operator session token validated through /auth/login.
Durable idempotency key. An exact replay must return OP_DUPLICATE_REQUEST without changing balance.
Authoritative monetary amount. Use decimal-safe arithmetic.
Response
HTTP 200 debit response. The body status MUST be the single exact value assigned to the matching scenario; statuses are not interchangeable.
Balance returned for this response scenario. Successful mutations return the calculated post-transaction balance; duplicate and rejected scenarios return the unchanged balance.