Transactions

Create a native POL payment window

Changed on

Create an API-key-authenticated native POL top-up on Polygon PoS. amount is USD, token POL or POLYGON. The address is reused but monitoring requires a new active request for each transfer. A quote is not a locked exchange rate. Use one transfer per request and keep a wallet-side payment record to avoid sending twice. Other deposit/create network flows are outside this documented POL contract. Requests with Idempotency-Key, including replays, are limited to 30 per 10 minutes per account and tenant. Follow Retry-After and bounded backoff.

post/deposit/create

Request

  • Base URL
    https://nano-gpt.com/api
  • URL
    https://nano-gpt.com/api/deposit/create
  • Auth
    • HTTP bearer
    • or API key in header x-api-key

Headers

Idempotency-Keystring

Recommended unique key per logical top-up, 8-128 visible ASCII characters without spaces. Receipts last 24 hours. Retry with the same key and unchanged amount/token/expiry after a timeout. Changed payload returns 409. Replays verify current status and never create a new window. Uncertain attempts remain claimed; repeated idempotency_in_progress requires investigation rather than a new key or another transfer. Never reuse keys for later payments. Does not deduplicate wallet transfers. Supported only for native POL.

Request body

network'polygon' required
token'POL' | 'POLYGON' required

Native POL on Polygon PoS (chain ID 137). POLYGON is the compatibility alias.

amountnumber required

Requested gross USD estimate, not a number of POL. The minimum applies before conversion spread and bonus.

expires_atinteger

Optional future Unix timestamp in seconds, at most 30 minutes from now. Omit to use the default 30-minute window. Keep unchanged on idempotent retries.

Response

Payment instructions, or a replay refreshed with current status. Send only if this logical top-up has not already been paid and its window is active.

network'polygon'
tokenstring

POL for current native deposits.

chainId137
tokenDecimals18
addressstring

Receiving address; create a fresh payment window before every transfer despite address reuse.

jobIdstring
txIdstring

Opaque status identifier: address:jobId:expiry. Persist exactly and URL-encode when polling.

statusUrlstring

Relative URL to poll on https://nano-gpt.com with the same account API key.

status'PENDING' | 'CONFIRMING' | 'PROCESSING' | 'COMPLETED' | 'EXPIRED' | 'FAILED'
balanceCreditedboolean

True only when the status endpoint verifies a completed account-owned ledger deposit. Present in status responses.

creditedUsdnumber

Final credited USD when balanceCredited is true; prefer settlement.creditedUsdExact for exact accounting.

requestedUsdnumber

Original requested gross USD estimate.

quotedTokenAmountstring

Quoted POL quantity as a decimal string, not a guaranteed final USD credit.

quotedTokenAmountAtomicstring

Quoted POL quantity in atomic units (18 decimals). Parse as BigInt or another exact integer, never a floating-point Number.

quotedTokenUsdPricenumber

Indicative quote price, not a locked settlement price.

priceLockedfalse
expiresAtinteger

Payment-window expiry as Unix seconds. Do not send against expired or cancelled requests.

remainingTimeinteger

Seconds remaining when this response was built.

minimumDepositUsdnumber

Minimum requested gross USD estimate.

consolidationFeeUsdnumber
consolidationFeeUsdExactstring

Exact decimal string. Use decimal arithmetic.

estimatedCreditUsdnumber

Legacy estimate after conversion spread and consolidation fee, before bonus.

quotedEthAmountstring

Legacy alias for quotedTokenAmount on native POL.

quotedEthAmountWeistring

Legacy alias for quotedTokenAmountAtomic on native POL.

txHashstring
paidTokenAmountstring

Exact decimal string. Use decimal arithmetic.

paidTokenAmountAtomicstring

Changes