Reference

Limits & rates

Rate limits and the amount/volume caps applied at creation.

Rate limit

Going over the limit returns 429 with the code rate_limited. Wait a moment and try again.

EndpointLimitScope
All /v1/*300 requests / minuteper API key
Public checkout page120 requests / minuteper IP

Amount & volume limits

Applied at creation. Values may differ per account; the defaults are below.

LimitDefaultRejected with
Minimum amountRp10.000422 amount_too_small
Maximum amountRp10.000.000422 amount_too_large
Requests / day100429 daily_count_cap
Total amount / dayRp50.000.000429 daily_amount_cap
Expiry60 minutes (max 24 hours)422 expiry_too_long

Days are counted in the Asia/Jakarta time zone, not UTC.

Before onboarding is active

An account whose onboarding is not yet active gets an additional lifetime allowance, applied instead of the daily caps above. It does not reset at midnight: the only thing that lifts it is completing verification. Payments already received are unaffected, and nothing is lost when the tier is reached — new payment requests are refused until verification is done.

LimitDefaultCountsRejected with
Requests, lifetime10Every request ever created except canceled ones. Expired and failed requests still count.429 unverified_count_cap
Total amount, lifetimeRp1.000.000Only money received or still receivable: pending and succeeded. An expired, failed or canceled request releases its share again.429 unverified_amount_cap

Test-mode requests never consume either allowance and are never refused by it. The two codes are distinct from daily_count_cap and daily_amount_cap on purpose: waiting for tomorrow does nothing here, so retry logic should stop rather than back off.