BetaYou're exploring an early version of tPay365. Features and content may change as we refine the experience.

Rate Limits

tPay365 enforces rate limits to ensure fair usage and platform stability. All limits are per API key.

Default Limits

TierRequests/secBurst
Standard100500
Enterprise1,0005,000
Sandbox1,00010,000

Rate Limit Headers

Every response includes rate limit headers so you can track your usage.

Rate limit response headers
http
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1707580800

Handling 429 Responses

When you exceed the rate limit, implement exponential backoff with the Retry-After header.

Exponential backoff implementation
typescript
async function fetchWithRetry(url: string, options: RequestInit, maxRetries = 3): Promise<Response> {
  for (let attempt = 0; attempt <= maxRetries; attempt++) {
    const response = await fetch(url, options)

    if (response.status !== 429) return response

    const retryAfter = response.headers.get("Retry-After")
    const delay = retryAfter
      ? parseInt(retryAfter, 10) * 1000
      : Math.pow(2, attempt) * 1000

    await new Promise((resolve) => setTimeout(resolve, delay))
  }

  throw new Error("Max retries exceeded")
}

Respect rate limits

Repeatedly exceeding rate limits may result in temporary key suspension. Contact support if you need higher limits.