POST /client/trading/deposit. Initiates a deposit trade where AssetPay receives the skins via Steam trade offer and credits the merchant’s USD wallet. There is no end-user — the trade URL is supplied per-request.
Authentication: Merchant API Key (api-key header)
Scope: CORE_ACCESS
Request
Body Parameters
Response
Returns a fullTrade object with source: "self". Self-trades are always treated as fully trusted — preCredit equals totalPrice and there is no collateral.
Differences from /client/trading/deposit
- Risk evaluation is skipped — merchant self-trades are fully trusted, so
preCreditalways equalstotalPriceandpendingCreditis0. - The per-client active/rolling deposit guard does not run on this route — only the per-merchant tier throttle limits self-trades.
- The trade is persisted with
source: "self", and the API response carries that field so you can distinguish self-trades from client trades. - Webhooks still fire on every state change.
Rate Limits
Errors
Same set asPOST /client/trading/deposit minus TOO_MANY_ACTIVE_TRADES (per-client guard never runs). RATE_LIMITED (1005) can still fire if the merchant-tier limits above are exceeded. INVALID_TRADEURL (13) is common if the supplied tradeUrl is malformed.