CheckoutSubmitOptions

Interface

Request and spam-protection options for CheckoutService.placeOrder.

Extends: SubmitOptions

Property

Type

Optional

Description

fetchOptions

RequestInit

Yes

Raw fetch() options merged into this checkout request, such as an<br>AbortSignal or custom trace headers.

formStartedAt

number

Yes

Unix timestamp in milliseconds when the buyer started the checkout flow. The<br>SDK sends it as _ts unchanged so storefronts with a custom minimum timing<br>window can verify the real interaction age. When omitted, each placeOrder<br>call recalculates the automatic value from client creation time, clamped to<br>no more than 55 minutes old so a long-lived client does not retain an expired<br>timestamp. Non-browser or SSR integrations that construct a client per request<br>should pass a real formStartedAt for accurate timing, since the automatic<br>value only guarantees the storefront's default minimum-submission window is<br>cleared, not the buyer's true interaction age.

recaptchaToken

string

Yes

reCAPTCHA token for checkout spam protection. Required on storefronts that<br>enable reCAPTCHA. For reCAPTCHA v3, mint the token with the checkout-bound<br>action: grecaptcha.execute(siteKey, { action: 'checkout' }). A token minted<br>for another action, including the generic submit action used by forms and<br>reviews, is rejected.