Throttling

By default, if your app executes more than 30 API calls over 10 seconds, your app will be throttled, and you should retry the call later. You will receive the following error response:

  • JSON

Our goal with throttling is that any API application under normal circumstances will never be throttled. Throttling is in place to protect API partners and WePay from A) attacks and B) programming errors in an app that can cause API calls on infinite loops. Please let us know if you anticipate a high API call volume and want the default throttle limits raised for your app.

Upcoming Enhancements
Starting mid-Q2, 2021, WePay will implement account-based and endpoint-based throttles in addition to app-based. This will help ensure that:

  1. If a single merchant sees a spike in API requests, your other merchants won’t be impacted
  2. If the checkout service spikes across your platform, then other services won’t be impacted

If a throttle limit is exceeded, then the API error details will identify which throttle level is in play.

Summary of changes

Current throttle mid-Q2, 2021 throttle
  • Each app can make 30 API requests per 10 seconds
  • (Account-based throttle) Each merchant (API Account ID) can reach the /checkout/create endpoint 30 times per 10 seconds
  • (Endpoint-based throttle) Each app can reach the /checkout/create endpoint 30 times per 10 seconds
  • (App-based throttle) Each app can make 30 API requests per 10 seconds