Skip to Content
PYUSDCreate Payment Intent (PYUSD)

Create Payment Intent (PYUSD)

POST/v1/pyusd/payment-intentspayin:create

Create a one-time PYUSD payment intent on Ethereum. Idempotency-Key is required (money write). Live API keys only — Tekko has no sandbox. test keys return 503 payment_unavailable.

Request fields

FieldTypeRequiredDescription
amountstring (numeric)YesPYUSD amount. 1500000.
merchantReferencestringYesYour order / reference id (max 128 characters)
expiresInMinutesnumberNoIntent TTL in minutes. 51440, default 30
metadataobjectNoOpaque object echoed upstream

Example

{ "amount": "25.00", "merchantReference": "order-4821", "expiresInMinutes": 30, "metadata": { "orderId": "4821" } }

Response fields

FieldTypeDescription
transactionIdstringPrimary id — use for status poll and support
paymentIntentIdstringUpstream / Tekko payment intent reference
statusstringe.g. awaiting_payment after create
settlementStatusstringSettlement lifecycle — credit PYUSD-USDC only when settled
amountstringRequested PYUSD amount
currencystringPYUSD (what the payer sends)
settlementCurrencystringAlways PYUSD-USDC
settlementCurrencyLabelstringDisplay label: PYUSD USDC
networkstringAlways ethereum in this phase
depositAddressstringEthereum address the payer must send PYUSD to
expiresAtstring (ISO datetime)When the intent expires
environmentstringlive

Show the payer the depositAddress and amount (QR and/or copy button). Network is always Ethereum. Do not treat create as settled — wait for settled: true or settlementStatus: "settled" via status poll or payin.completed. Do not treat “customer sent crypto” as credited.

Next steps

Last updated on