2/ The fix: Venice wants the canonical x402 PaymentPayload, the one that wraps the requirement in `accepted` and adds a `resource` object. Build the tx with the lib using the network alias, then rewrap canonical with the CAIP-2 network, base64, send as X-402-Payment. 200, top-up settles, USDC moves.