errors/zs_exception library
Typedefs
- ZSException = ZeroSettleException
- Backward-compatible typedef. Use ZeroSettleException instead.
Exceptions / Errors
- ZeroSettleException
- Base exception type for the ZeroSettle SDK.
- ZSApiException
- An API or network error occurred.
- ZSApplePaySetupRequiredException
- The merchant is Apple-Pay-only and the device supports Apple Pay but the Wallet has no supported cards. The customer was NOT charged. Call ZeroSettle.presentApplePaySetup to launch the system Wallet setup flow, then retry the purchase.
- The merchant is Apple-Pay-only and the device cannot do Apple Pay at all (older hardware, simulator, MDM/parental restriction). The customer was NOT charged. The hosting app should show its own UX or skip the purchase path.
- ZSCancelledException
- The user cancelled the checkout flow.
- ZSCheckoutConfigExpiredException
-
The deferred-mode checkout config expired (the server-side PENDING
transaction's
checkout_config_expires_athas passed). Re-initiate checkout to obtain a fresh session rather than retrying finalize. - ZSCheckoutFailedException
- The checkout flow failed.
- ZSCheckoutNotStartedException
- Checkout could not start (e.g. backend failed to create the payment intent). Distinct from terminal errors that occur after checkout is in flight.
- ZSInvalidPublishableKeyException
- The publishable key format is invalid. Check your ZeroSettle dashboard.
- ZSNotConfiguredException
- The SDK has not been configured. Call ZeroSettle.configure first.
- ZSProductNotFoundException
- No product found with the given identifier.
- ZSPurchasePendingException
- The purchase is pending approval (e.g., StoreKit Ask to Buy). The user has not been charged; the SDK will surface a follow-up event when the purchase resolves.
- ZSTransactionVerificationFailedException
- Transaction verification failed after checkout (e.g., signature or JWS validation rejected by the backend or by Apple).
- ZSUserIdRequiredException
- A userId is required for this product type.
- ZSUserNotIdentifiedException
- A user-scoped method was called before ZeroSettle.identify. Call ZeroSettle.identify with Identity.user (or Identity.anonymous) at app launch (after ZeroSettle.configure) before invoking user-scoped APIs like ZeroSettle.restoreEntitlements.
- ZSWebCheckoutDisabledException
- Web checkout is disabled for the user's jurisdiction.