Is there rate limiting for Web SDK to initialize Card & Tokenize Payment Info?


We started integrating our business with Square Payments via the Payments API and have a few questions we were hoping the community could help answer & verify! We make use of the Web SDK to display the payment flow.

Our setup currently is:

  1. Customer clicks ‘Pay’ which invokes the card module via Web SDK
  2. Customer’s payment data is tokenized via Web SDK
  3. A payment is created via the Payment API

Our questions:

  1. What is the API rate limiting? Based on 2019/2020 answers, it looks like this is not publicly disclosed, but since it’s been 2 years, figured give it a shot
  2. Is the API rate by Merchant? Or is it per API? Trying to understand what would count towards the API rate limit
  3. Would customers potentially face issues bringing up the payment component if there are too many users trying to access it at once?
  4. Similarly, would customers face issues tokenizing their payment information due to this rate limiting?

Thank you in advance! Looking forward to giving our customers the best UX

:wave: Square does have rate limits but we don’t document the limits. We encourage you to handle the limit gracefully by building a retry mechanism. This mechanism should have an exponential backoff schedule to reduce requests when volume is necessary. Also some randomness wouldn’t hurt to avoid a thundering herd effect. :slightly_smiling_face:

Sounds good! Thank you for the pointer! :slight_smile: