Endpoint
Request Body
action
There is no request nonce or
expiresAfter. Do not supply a user address, token, amount, or other
extra fields; the request schema is strict. logIndex is an optional compatibility hint and does
not select which transfer receives credit.
Signing and Submission
Use the actual deposit recipient shown by Notional’s deposit instructions for the selected deployment. The recipient is part of the signing domain; it is not the pUSD token contract or the user’s address. With a connected ViemwalletClient for the source wallet:
"testnet" for the testnet deployment. The EIP-712 domain has name
NotionalPolymarketDeposit, version 1, Polygon chain ID 137, the deposit recipient as
verifyingContract, and a deployment-specific salt. Use the shared builder to construct it.
The message contains only transactionHash: bytes32.
Eligible Transfers
The proof must establish a successful ordinary pUSD ERC-20transfer from the signing user to the
configured deposit recipient, with a positive amount and no unsupported additional effects. Bridge
transfers, contract-wallet flows, and protocol-managed transfers cannot be claimed through this
ordinary-transfer format. Approved API wallets cannot claim a new deposit for their owner.
The receipt must be finalized and canonically included. Reporting a hash alone never credits an
unverified amount.
Response
committed means the deposit credit was recorded. amount is decimal pUSD in ledger units,
logIndex identifies the verified receipt log, and userAddress is the credited source address.
Refresh assets to read the pUSD balance.
An exact already-credited deposit returns success with alreadyProcessed: true; it does not credit
funds twice. Check this flag before displaying a new-deposit notification.
Errors
A validly encoded but invalid deposit signature is an eligibility failure (
422), rather than a
successful deposit report.