WavePayby T3raTech

API reference

Crypto

Eleven rails quoted in US dollars. The buyer sends the exact amount; the exchange deposit settles the payment.

GET/v2/crypto/rails

The crypto rails WavePay takes (Bitcoin, Ethereum, Solana, BNB, Litecoin, Dogecoin, Tron, USDT, USDC) and which can be quoted right now

Authentication: None (public)

Responses

StatusMeaning
200{ rails: [{ id, symbol, network, address, confirmations, quotable }] }

Example

curl -sX GET https://t3rnel-wavepay-production.t3ratech.workers.dev/v2/crypto/rails
POST/v2/internal/crypto/rates

Global key: store coin prices in US dollars (a checkout refuses a rate older than ten minutes)

Authentication: Global service key (operator only)

Responses

StatusMeaning
200{ ok, coins }
400unknown coin or a price that is not positive

Example

curl -sX POST https://t3rnel-wavepay-production.t3ratech.workers.dev/v2/internal/crypto/rates \
  -H 'x-wavepay-service-key: <global key>'
POST/v2/internal/crypto/pending

Global key: open crypto payments with rail, exact base-unit amount and address — what the watcher looks for

Authentication: Global service key (operator only)

Responses

StatusMeaning
200{ payments: [{ reference, rail, baseUnits, address, createdAt }] }

Example

curl -sX POST https://t3rnel-wavepay-production.t3ratech.workers.dev/v2/internal/crypto/pending \
  -H 'x-wavepay-service-key: <global key>'
POST/v2/internal/crypto/settle

Global key: settle a payment from a deposit the exchange credited. Re-verified: rail, address, exact amount, and the transaction never settled a payment before

Authentication: Global service key (operator only)

Responses

StatusMeaning
200the payment's status
409TRANSFER_ALREADY_USED
422PAYMENT_MISMATCH — not the deposit that was asked for

Example

curl -sX POST https://t3rnel-wavepay-production.t3ratech.workers.dev/v2/internal/crypto/settle \
  -H 'x-wavepay-service-key: <global key>'