The event
event Receipt(
bytes32 indexed id, // keccak256(account, agent, nonce)
address indexed agent,
address indexed payee,
uint256 amount, // USDG, 6 decimals
uint256 fee, // 0 until the fee vault is set
bytes32 resource, // keccak256 of the URL that was paid for
bytes32 nonce,
uint256 spentToday // the key's total for the UTC day, this payment included
)Receiptblock 80,312,683
$0.01
agent0x9A3f…c41E
payee0x7C02…11bA
amount10000 ($0.01)
fee0
resourcekeccak256(url)
spentToday30000
Reading receipts
The Receipts screen fetches the account's Receipt logs, filters them by agent or payee and exports CSV. The SDK's receipts() and the MCP tool otsukai_receipts return the latest ones to the agent itself.
The top line
The account screen opens with one sentence per key, for example "Your agent spent $0.03 on 3 calls. $0.07 left today." Spent and calls come from the key's counters for the UTC day, which the contract updates with every payment; left is the daily limit minus spent.