REST API Documentation

All merchant endpoints use JSON, scoped API keys, idempotency keys for mutations, and the current cryptocurrency value `LTC`.

Authentication
Authorization: Bearer <generated-api-key>
Rate limits
120 requests per minute per IP by default
Webhook signature
LitePay-Signature: t=timestamp,v1=hmac
Payment API Details
Create payments with either `amount_usd` or `amount_ltc`, never both. USD amounts are converted by the backend using the live LTC/USD rate at creation time. Use `Idempotency-Key` on create payment, create withdrawal, and webhook retry requests.

Payment Lifecycle

Created
Awaiting Payment
Payment Detected
Confirming
Confirmed

Expired if no funds arrive before expiration.
Underpaid if total received is too small after expiration.
Overpaid is treated as paid after required confirmations.
Paid After Expiration requires manual reconciliation.

Important Response Fields

requiredConfirmations: confirmations required by this payment
currentConfirmations: highest confirmation depth detected
receivedLtc / receivedCrypto: total LTC received on the address
txHash: first detected transaction hash, if any
explorerUrl: LitecoinSpace transaction URL, if available
paymentUrl: hosted checkout path for the customer
CreatedAwaiting PaymentPayment DetectedConfirmingConfirmedExpiredCancelledUnderpaidOverpaidPaid After ExpirationFailed

Created

Initial persisted record before the hosted checkout is ready.

Awaiting Payment

Checkout is active and waiting for Litecoin.

Payment Detected

At least one incoming transaction was found.

Confirming

Funds were detected but confirmation depth is still too low.

Confirmed

Required confirmations were reached with the requested amount.

Expired

No funds were detected before expiration.

Cancelled

Payment was manually cancelled before funds were detected.

Underpaid

Received amount is below the requested amount after expiration.

Overpaid

Received amount is above the requested amount and is accepted.

Paid After Expiration

Funds arrived after the payment window closed.

Failed

Processing failed and requires operational review.

Underpaid transactions are still recorded in the ledger once they are detected on-chain. Confirmed underpaid funds count toward the account balance, while the payment itself remains marked `Underpaid` so the merchant can reconcile the order manually.