App Marketplace

Web Payments SDK Requirements

Partner applications can use the Web Payments SDK to create PCI-compliant inputs to accept payments online with the Square Payments API. The App Marketplace requirements described in this topic apply to partner applications that use the Web Payments SDK.

Form validation errors Permalink Get a link to this section

Square performs client-side validation on Web Payments SDK card entry fields, such as an improper credit card number length, a wrong expiration date format, an incomplete ZIP code, and a non-credit-card number. Partners must handle all form validation errors and clearly display them to buyers when appropriate.

Invalid credit card details Permalink Get a link to this section

If the credit card details are entered in the card form in a correct format but specific field values are wrong (such as an invalid expiration date or invalid card number), the card still passes the client-side validation but fails when the payment is actually attempted. Partners must handle these errors and display a user-friendly error message on the payment form if the payment attempt fails and ask the customer to re-enter the card details.

ACH Bank Transfer Permalink Get a link to this section

If a partner application supports ACH, they must implement the following practices:

  • The application must present the modal for ACH clearly and in an accessible way.

  • The partner application must fail gracefully if a user does not complete the transaction.

  • ACH is currently only supported in the United States and can take 3–5 business days to complete.

Strong customer authentication Permalink Get a link to this section

If a partner application supports SCA, they must implement the following practices:

  • Partner applications must use SCA and the Payments.verifyBuyer() function if they provide any customer-facing payment flow taken in the United Kingdom and EU (where Square is available).

  • Partner applications must fail gracefully to a user-friendly experience if a card payment fails to be validated through SCA.

  • Seller-facing payment flows are not required to incorporate the verifyBuyer functions at this time.

If you need more assistance, contact Developer Support or ask for help in the Developer Forums.