[@bigcommerce/checkout-sdk](README.md)

# @bigcommerce/checkout-sdk

## Index

### Enumerations

* [AmazonPayV2CheckoutLanguage](enums/amazonpayv2checkoutlanguage.md)
* [AmazonPayV2LedgerCurrency](enums/amazonpayv2ledgercurrency.md)
* [AmazonPayV2PayOptions](enums/amazonpayv2payoptions.md)
* [AmazonPayV2Placement](enums/amazonpayv2placement.md)
* [BraintreeFormFieldType](enums/braintreeformfieldtype.md)
* [ButtonColor](enums/buttoncolor.md)
* [ButtonType](enums/buttontype.md)
* [CheckoutButtonMethodType](enums/checkoutbuttonmethodtype.md)
* [CheckoutIncludes](enums/checkoutincludes.md)
* [EmbeddedCheckoutEventType](enums/embeddedcheckouteventtype.md)
* [HostedFieldType](enums/hostedfieldtype.md)
* [HostedInputEventType](enums/hostedinputeventtype.md)
* [IconStyle](enums/iconstyle.md)
* [PaypalCommerceFormFieldType](enums/paypalcommerceformfieldtype.md)
* [StyleButtonColor](enums/stylebuttoncolor.md)
* [StyleButtonLabel](enums/stylebuttonlabel.md)
* [StyleButtonLayout](enums/stylebuttonlayout.md)
* [StyleButtonShape](enums/stylebuttonshape.md)

### Classes

* [CartChangedError](classes/cartchangederror.md)
* [CheckoutButtonErrorSelector](classes/checkoutbuttonerrorselector.md)
* [CheckoutButtonInitializer](classes/checkoutbuttoninitializer.md)
* [CheckoutButtonStatusSelector](classes/checkoutbuttonstatusselector.md)
* [CheckoutService](classes/checkoutservice.md)
* [CurrencyService](classes/currencyservice.md)
* [EmbeddedCheckout](classes/embeddedcheckout.md)
* [LanguageService](classes/languageservice.md)
* [RequestError](classes/requesterror.md)
* [StandardError](classes/standarderror.md)

### Interfaces

* [Address](interfaces/address.md)
* [AddressRequestBody](interfaces/addressrequestbody.md)
* [AdyenAdditionalActionCallbacks](interfaces/adyenadditionalactioncallbacks.md)
* [AdyenAdditionalActionOptions](interfaces/adyenadditionalactionoptions.md)
* [AdyenBaseCardComponentOptions](interfaces/adyenbasecardcomponentoptions.md)
* [AdyenComponent](interfaces/adyencomponent.md)
* [AdyenComponentEvents](interfaces/adyencomponentevents.md)
* [AdyenCreditCardComponentOptions](interfaces/adyencreditcardcomponentoptions.md)
* [AdyenIdealComponentOptions](interfaces/adyenidealcomponentoptions.md)
* [AdyenPaymentMethodState](interfaces/adyenpaymentmethodstate.md)
* [AdyenPlaceholderData](interfaces/adyenplaceholderdata.md)
* [AdyenThreeDS2Options](interfaces/adyenthreeds2options.md)
* [AdyenV2PaymentInitializeOptions](interfaces/adyenv2paymentinitializeoptions.md)
* [AmazonPayCustomerInitializeOptions](interfaces/amazonpaycustomerinitializeoptions.md)
* [AmazonPayOrderReference](interfaces/amazonpayorderreference.md)
* [AmazonPayPaymentInitializeOptions](interfaces/amazonpaypaymentinitializeoptions.md)
* [AmazonPayShippingInitializeOptions](interfaces/amazonpayshippinginitializeoptions.md)
* [AmazonPayV2ButtonParams](interfaces/amazonpayv2buttonparams.md)
* [AmazonPayV2CheckoutSession](interfaces/amazonpayv2checkoutsession.md)
* [AmazonPayV2CustomerInitializeOptions](interfaces/amazonpayv2customerinitializeoptions.md)
* [AmazonPayV2PaymentInitializeOptions](interfaces/amazonpayv2paymentinitializeoptions.md)
* [AmazonPayV2ShippingInitializeOptions](interfaces/amazonpayv2shippinginitializeoptions.md)
* [AmazonPayWidgetError](interfaces/amazonpaywidgeterror.md)
* [BankInstrument](interfaces/bankinstrument.md)
* [Banner](interfaces/banner.md)
* [BaseAccountInstrument](interfaces/baseaccountinstrument.md)
* [BaseElementOptions](interfaces/baseelementoptions.md)
* [BaseElementOptions_2](interfaces/baseelementoptions_2.md)
* [BaseIndividualElementOptions](interfaces/baseindividualelementoptions.md)
* [BaseInstrument](interfaces/baseinstrument.md)
* [BillingAddress](interfaces/billingaddress.md)
* [BillingAddressRequestBody](interfaces/billingaddressrequestbody.md)
* [BlockElementStyles](interfaces/blockelementstyles.md)
* [BlueSnapV2PaymentInitializeOptions](interfaces/bluesnapv2paymentinitializeoptions.md)
* [BlueSnapV2StyleProps](interfaces/bluesnapv2styleprops.md)
* [BodyStyles](interfaces/bodystyles.md)
* [BoltPaymentInitializeOptions](interfaces/boltpaymentinitializeoptions.md)
* [BraintreeError](interfaces/braintreeerror.md)
* [BraintreeFormFieldCardTypeChangeEventData](interfaces/braintreeformfieldcardtypechangeeventdata.md)
* [BraintreeFormFieldKeyboardEventData](interfaces/braintreeformfieldkeyboardeventdata.md)
* [BraintreeFormFieldOptions](interfaces/braintreeformfieldoptions.md)
* [BraintreeFormFieldStylesMap](interfaces/braintreeformfieldstylesmap.md)
* [BraintreeFormFieldValidateErrorData](interfaces/braintreeformfieldvalidateerrordata.md)
* [BraintreeFormFieldValidateEventData](interfaces/braintreeformfieldvalidateeventdata.md)
* [BraintreeFormFieldsMap](interfaces/braintreeformfieldsmap.md)
* [BraintreeFormOptions](interfaces/braintreeformoptions.md)
* [BraintreePaymentInitializeOptions](interfaces/braintreepaymentinitializeoptions.md)
* [BraintreePaypalButtonInitializeOptions](interfaces/braintreepaypalbuttoninitializeoptions.md)
* [BraintreeStoredCardFieldOptions](interfaces/braintreestoredcardfieldoptions.md)
* [BraintreeStoredCardFieldsMap](interfaces/braintreestoredcardfieldsmap.md)
* [BraintreeThreeDSecureOptions](interfaces/braintreethreedsecureoptions.md)
* [BraintreeVerifyPayload](interfaces/braintreeverifypayload.md)
* [BraintreeVisaCheckoutCustomerInitializeOptions](interfaces/braintreevisacheckoutcustomerinitializeoptions.md)
* [BraintreeVisaCheckoutPaymentInitializeOptions](interfaces/braintreevisacheckoutpaymentinitializeoptions.md)
* [ButtonResponse](interfaces/buttonresponse.md)
* [ButtonStyles](interfaces/buttonstyles.md)
* [CardCvcElementOptions](interfaces/cardcvcelementoptions.md)
* [CardDataPaymentMethodState](interfaces/carddatapaymentmethodstate.md)
* [CardElementOptions](interfaces/cardelementoptions.md)
* [CardExpiryElementOptions](interfaces/cardexpiryelementoptions.md)
* [CardInstrument](interfaces/cardinstrument.md)
* [CardNumberElementOptions](interfaces/cardnumberelementoptions.md)
* [CardPaymentMethodState](interfaces/cardpaymentmethodstate.md)
* [CardState](interfaces/cardstate.md)
* [Cart](interfaces/cart.md)
* [ChasePayCustomerInitializeOptions](interfaces/chasepaycustomerinitializeoptions.md)
* [ChasePayInitializeOptions](interfaces/chasepayinitializeoptions.md)
* [CheckableInputStyles](interfaces/checkableinputstyles.md)
* [ChecklistStyles](interfaces/checkliststyles.md)
* [Checkout](interfaces/checkout.md)
* [CheckoutButtonInitializeOptions](interfaces/checkoutbuttoninitializeoptions.md)
* [CheckoutButtonInitializerOptions](interfaces/checkoutbuttoninitializeroptions.md)
* [CheckoutButtonOptions](interfaces/checkoutbuttonoptions.md)
* [CheckoutButtonSelectors](interfaces/checkoutbuttonselectors.md)
* [CheckoutParams](interfaces/checkoutparams.md)
* [CheckoutPayment](interfaces/checkoutpayment.md)
* [CheckoutRequestBody](interfaces/checkoutrequestbody.md)
* [CheckoutSelectors](interfaces/checkoutselectors.md)
* [CheckoutServiceOptions](interfaces/checkoutserviceoptions.md)
* [CheckoutSettings](interfaces/checkoutsettings.md)
* [CheckoutStoreErrorSelector](interfaces/checkoutstoreerrorselector.md)
* [CheckoutStoreSelector](interfaces/checkoutstoreselector.md)
* [CheckoutStoreStatusSelector](interfaces/checkoutstorestatusselector.md)
* [Consignment](interfaces/consignment.md)
* [ConsignmentAssignmentRequestBody](interfaces/consignmentassignmentrequestbody.md)
* [ConsignmentCreateRequestBody](interfaces/consignmentcreaterequestbody.md)
* [ConsignmentLineItem](interfaces/consignmentlineitem.md)
* [ConsignmentUpdateRequestBody](interfaces/consignmentupdaterequestbody.md)
* [Country](interfaces/country.md)
* [Coupon](interfaces/coupon.md)
* [CreditCardInstrument](interfaces/creditcardinstrument.md)
* [CreditCardPaymentInitializeOptions](interfaces/creditcardpaymentinitializeoptions.md)
* [CreditCardPlaceHolder](interfaces/creditcardplaceholder.md)
* [CssProperties](interfaces/cssproperties.md)
* [Currency](interfaces/currency.md)
* [CustomError](interfaces/customerror.md)
* [CustomItem](interfaces/customitem.md)
* [Customer](interfaces/customer.md)
* [CustomerAccountRequestBody](interfaces/customeraccountrequestbody.md)
* [CustomerAddress](interfaces/customeraddress.md)
* [CustomerCredentials](interfaces/customercredentials.md)
* [CustomerGroup](interfaces/customergroup.md)
* [CustomerInitializeOptions](interfaces/customerinitializeoptions.md)
* [CustomerPasswordRequirements](interfaces/customerpasswordrequirements.md)
* [CustomerRequestOptions](interfaces/customerrequestoptions.md)
* [DigitalItem](interfaces/digitalitem.md)
* [DigitalRiverElementClasses](interfaces/digitalriverelementclasses.md)
* [DigitalRiverPaymentInitializeOptions](interfaces/digitalriverpaymentinitializeoptions.md)
* [Discount](interfaces/discount.md)
* [EmbeddedCheckoutCompleteEvent](interfaces/embeddedcheckoutcompleteevent.md)
* [EmbeddedCheckoutError](interfaces/embeddedcheckouterror.md)
* [EmbeddedCheckoutErrorEvent](interfaces/embeddedcheckouterrorevent.md)
* [EmbeddedCheckoutFrameErrorEvent](interfaces/embeddedcheckoutframeerrorevent.md)
* [EmbeddedCheckoutFrameLoadedEvent](interfaces/embeddedcheckoutframeloadedevent.md)
* [EmbeddedCheckoutLoadedEvent](interfaces/embeddedcheckoutloadedevent.md)
* [EmbeddedCheckoutMessenger](interfaces/embeddedcheckoutmessenger.md)
* [EmbeddedCheckoutMessengerOptions](interfaces/embeddedcheckoutmessengeroptions.md)
* [EmbeddedCheckoutOptions](interfaces/embeddedcheckoutoptions.md)
* [EmbeddedCheckoutSignedOutEvent](interfaces/embeddedcheckoutsignedoutevent.md)
* [EmbeddedCheckoutStyles](interfaces/embeddedcheckoutstyles.md)
* [EmbeddedContentOptions](interfaces/embeddedcontentoptions.md)
* [FlashMessage](interfaces/flashmessage.md)
* [FormField](interfaces/formfield.md)
* [FormFieldItem](interfaces/formfielditem.md)
* [FormFieldOptions](interfaces/formfieldoptions.md)
* [FormFields](interfaces/formfields.md)
* [GatewayOrderPayment](interfaces/gatewayorderpayment.md)
* [GiftCertificate](interfaces/giftcertificate.md)
* [GiftCertificateItem](interfaces/giftcertificateitem.md)
* [GiftCertificateOrderPayment](interfaces/giftcertificateorderpayment.md)
* [GooglePayButtonInitializeOptions](interfaces/googlepaybuttoninitializeoptions.md)
* [GooglePayCustomerInitializeOptions](interfaces/googlepaycustomerinitializeoptions.md)
* [GooglePayPaymentInitializeOptions](interfaces/googlepaypaymentinitializeoptions.md)
* [HostedCardFieldOptions](interfaces/hostedcardfieldoptions.md)
* [HostedCardFieldOptionsMap](interfaces/hostedcardfieldoptionsmap.md)
* [HostedFieldStylesMap](interfaces/hostedfieldstylesmap.md)
* [HostedFormOptions](interfaces/hostedformoptions.md)
* [HostedInputBlurEvent](interfaces/hostedinputblurevent.md)
* [HostedInputCardTypeChangeEvent](interfaces/hostedinputcardtypechangeevent.md)
* [HostedInputEnterEvent](interfaces/hostedinputenterevent.md)
* [HostedInputFocusEvent](interfaces/hostedinputfocusevent.md)
* [HostedInputValidateErrorData](interfaces/hostedinputvalidateerrordata.md)
* [HostedInputValidateErrorDataMap](interfaces/hostedinputvalidateerrordatamap.md)
* [HostedInputValidateEvent](interfaces/hostedinputvalidateevent.md)
* [HostedInputValidateResults](interfaces/hostedinputvalidateresults.md)
* [HostedInstrument](interfaces/hostedinstrument.md)
* [HostedStoredCardFieldOptions](interfaces/hostedstoredcardfieldoptions.md)
* [HostedStoredCardFieldOptionsMap](interfaces/hostedstoredcardfieldoptionsmap.md)
* [IbanElementOptions](interfaces/ibanelementoptions.md)
* [IdealElementOptions](interfaces/idealelementoptions.md)
* [IndividualCardElementOptions](interfaces/individualcardelementoptions.md)
* [InitializationStrategy](interfaces/initializationstrategy.md)
* [InlineElementStyles](interfaces/inlineelementstyles.md)
* [InputDetail](interfaces/inputdetail.md)
* [InputStyles](interfaces/inputstyles.md)
* [Item](interfaces/item.md)
* [KlarnaLoadResponse](interfaces/klarnaloadresponse.md)
* [KlarnaLoadResponse_2](interfaces/klarnaloadresponse_2.md)
* [KlarnaPaymentInitializeOptions](interfaces/klarnapaymentinitializeoptions.md)
* [KlarnaV2PaymentInitializeOptions](interfaces/klarnav2paymentinitializeoptions.md)
* [LabelStyles](interfaces/labelstyles.md)
* [LanguageConfig](interfaces/languageconfig.md)
* [LineItem](interfaces/lineitem.md)
* [LineItemCategory](interfaces/lineitemcategory.md)
* [LineItemMap](interfaces/lineitemmap.md)
* [LineItemOption](interfaces/lineitemoption.md)
* [LineItemSocialData](interfaces/lineitemsocialdata.md)
* [LinkStyles](interfaces/linkstyles.md)
* [LoadingIndicatorStyles](interfaces/loadingindicatorstyles.md)
* [Locales](interfaces/locales.md)
* [MasterpassCustomerInitializeOptions](interfaces/masterpasscustomerinitializeoptions.md)
* [MasterpassPaymentInitializeOptions](interfaces/masterpasspaymentinitializeoptions.md)
* [MolliePaymentInitializeOptions](interfaces/molliepaymentinitializeoptions.md)
* [MonerisStylingProps](interfaces/monerisstylingprops.md)
* [MonerisaymentInitializeOptions](interfaces/monerisaymentinitializeoptions.md)
* [NonceGenerationError](interfaces/noncegenerationerror.md)
* [NonceInstrument](interfaces/nonceinstrument.md)
* [OptionsResponse](interfaces/optionsresponse.md)
* [Order](interfaces/order.md)
* [OrderPayment](interfaces/orderpayment.md)
* [OrderPaymentRequestBody](interfaces/orderpaymentrequestbody.md)
* [OrderRequestBody](interfaces/orderrequestbody.md)
* [PasswordRequirements](interfaces/passwordrequirements.md)
* [PayPalInstrument](interfaces/paypalinstrument.md)
* [PaymentInitializeOptions](interfaces/paymentinitializeoptions.md)
* [PaymentMethod](interfaces/paymentmethod.md)
* [PaymentMethodConfig](interfaces/paymentmethodconfig.md)
* [PaymentRequestOptions](interfaces/paymentrequestoptions.md)
* [PaymentSettings](interfaces/paymentsettings.md)
* [PaypalButtonInitializeOptions](interfaces/paypalbuttoninitializeoptions.md)
* [PaypalButtonStyleOptions](interfaces/paypalbuttonstyleoptions.md)
* [PaypalButtonStyleOptions_2](interfaces/paypalbuttonstyleoptions_2.md)
* [PaypalCommerceButtonInitializeOptions](interfaces/paypalcommercebuttoninitializeoptions.md)
* [PaypalCommerceCreditCardPaymentInitializeOptions](interfaces/paypalcommercecreditcardpaymentinitializeoptions.md)
* [PaypalCommerceFormFieldCardTypeChangeEventData](interfaces/paypalcommerceformfieldcardtypechangeeventdata.md)
* [PaypalCommerceFormFieldKeyboardEventData](interfaces/paypalcommerceformfieldkeyboardeventdata.md)
* [PaypalCommerceFormFieldOptions](interfaces/paypalcommerceformfieldoptions.md)
* [PaypalCommerceFormFieldStylesMap](interfaces/paypalcommerceformfieldstylesmap.md)
* [PaypalCommerceFormFieldValidateErrorData](interfaces/paypalcommerceformfieldvalidateerrordata.md)
* [PaypalCommerceFormFieldValidateEventData](interfaces/paypalcommerceformfieldvalidateeventdata.md)
* [PaypalCommerceFormFieldsMap](interfaces/paypalcommerceformfieldsmap.md)
* [PaypalCommerceFormOptions](interfaces/paypalcommerceformoptions.md)
* [PaypalCommercePaymentInitializeOptions](interfaces/paypalcommercepaymentinitializeoptions.md)
* [PaypalCommerceStoredCardFieldOptions](interfaces/paypalcommercestoredcardfieldoptions.md)
* [PaypalCommerceStoredCardFieldsMap](interfaces/paypalcommercestoredcardfieldsmap.md)
* [PaypalExpressPaymentInitializeOptions](interfaces/paypalexpresspaymentinitializeoptions.md)
* [PaypalFieldsStyleOptions](interfaces/paypalfieldsstyleoptions.md)
* [PhysicalItem](interfaces/physicalitem.md)
* [Promotion](interfaces/promotion.md)
* [Region](interfaces/region.md)
* [RequestOptions](interfaces/requestoptions.md)
* [SepaPlaceHolder](interfaces/sepaplaceholder.md)
* [ShippingInitializeOptions](interfaces/shippinginitializeoptions.md)
* [ShippingOption](interfaces/shippingoption.md)
* [ShippingRequestOptions](interfaces/shippingrequestoptions.md)
* [ShopperConfig](interfaces/shopperconfig.md)
* [ShopperCurrency](interfaces/shoppercurrency.md)
* [SignInEmail](interfaces/signinemail.md)
* [SignInEmailRequestBody](interfaces/signinemailrequestbody.md)
* [SpamProtectionOptions](interfaces/spamprotectionoptions.md)
* [SquareFormElement](interfaces/squareformelement.md)
* [SquarePaymentInitializeOptions](interfaces/squarepaymentinitializeoptions.md)
* [StepStyles](interfaces/stepstyles.md)
* [StepTracker](interfaces/steptracker.md)
* [StepTrackerConfig](interfaces/steptrackerconfig.md)
* [StoreConfig](interfaces/storeconfig.md)
* [StoreCurrency](interfaces/storecurrency.md)
* [StoreLinks](interfaces/storelinks.md)
* [StoreProfile](interfaces/storeprofile.md)
* [StripeElementCSSProperties](interfaces/stripeelementcssproperties.md)
* [StripeElementClasses](interfaces/stripeelementclasses.md)
* [StripeElementStyle](interfaces/stripeelementstyle.md)
* [StripeElementStyleVariant](interfaces/stripeelementstylevariant.md)
* [StripeV3PaymentInitializeOptions](interfaces/stripev3paymentinitializeoptions.md)
* [StyleOptions](interfaces/styleoptions.md)
* [SubInputDetail](interfaces/subinputdetail.md)
* [Subscriptions](interfaces/subscriptions.md)
* [Tax](interfaces/tax.md)
* [TextInputStyles](interfaces/textinputstyles.md)
* [ThreeDSecure](interfaces/threedsecure.md)
* [ThreeDSecureToken](interfaces/threedsecuretoken.md)
* [TranslationData](interfaces/translationdata.md)
* [Translations](interfaces/translations.md)
* [UnknownObject](interfaces/unknownobject.md)
* [VaultedInstrument](interfaces/vaultedinstrument.md)
* [WechatDataPaymentMethodState](interfaces/wechatdatapaymentmethodstate.md)
* [WechatState](interfaces/wechatstate.md)
* [WithCheckoutcomFawryInstrument](interfaces/withcheckoutcomfawryinstrument.md)
* [WithCheckoutcomSEPAInstrument](interfaces/withcheckoutcomsepainstrument.md)
* [WithCheckoutcomiDealInstrument](interfaces/withcheckoutcomidealinstrument.md)
* [WithDocumentInstrument](interfaces/withdocumentinstrument.md)
* [WithMollieIssuerInstrument](interfaces/withmollieissuerinstrument.md)
* [ZipCodeElementOptions](interfaces/zipcodeelementoptions.md)

### Type aliases

* [AccountInstrument](README.md#accountinstrument)
* [AddressKey](README.md#addresskey)
* [AdyenComponentState](README.md#adyencomponentstate)
* [AmazonPayV2ButtonInitializeOptions](README.md#amazonpayv2buttoninitializeoptions)
* [AnalyticStepType](README.md#analyticsteptype)
* [BraintreeFormFieldBlurEventData](README.md#braintreeformfieldblureventdata)
* [BraintreeFormFieldEnterEventData](README.md#braintreeformfieldentereventdata)
* [BraintreeFormFieldFocusEventData](README.md#braintreeformfieldfocuseventdata)
* [BraintreeFormFieldStyles](README.md#braintreeformfieldstyles)
* [CheckoutIncludeParam](README.md#checkoutincludeparam)
* [ComparableCheckout](README.md#comparablecheckout)
* [ConsignmentsRequestBody](README.md#consignmentsrequestbody)
* [CustomerAddressRequestBody](README.md#customeraddressrequestbody)
* [FlashMessageType](README.md#flashmessagetype)
* [FormFieldFieldType](README.md#formfieldfieldtype)
* [FormFieldType](README.md#formfieldtype)
* [GuestCredentials](README.md#guestcredentials)
* [HostedCreditCardInstrument](README.md#hostedcreditcardinstrument)
* [HostedFieldBlurEventData](README.md#hostedfieldblureventdata)
* [HostedFieldCardTypeChangeEventData](README.md#hostedfieldcardtypechangeeventdata)
* [HostedFieldEnterEventData](README.md#hostedfieldentereventdata)
* [HostedFieldFocusEventData](README.md#hostedfieldfocuseventdata)
* [HostedFieldOptionsMap](README.md#hostedfieldoptionsmap)
* [HostedFieldStyles](README.md#hostedfieldstyles)
* [HostedFieldValidateEventData](README.md#hostedfieldvalidateeventdata)
* [HostedInputStyles](README.md#hostedinputstyles)
* [HostedVaultedInstrument](README.md#hostedvaultedinstrument)
* [Instrument](README.md#instrument)
* [Omit](README.md#omit)
* [OrderPayments](README.md#orderpayments)
* [PaymentInstrument](README.md#paymentinstrument)
* [PaypalCommerceFormFieldBlurEventData](README.md#paypalcommerceformfieldblureventdata)
* [PaypalCommerceFormFieldEnterEventData](README.md#paypalcommerceformfieldentereventdata)
* [PaypalCommerceFormFieldFocusEventData](README.md#paypalcommerceformfieldfocuseventdata)
* [PaypalCommerceFormFieldStyles](README.md#paypalcommerceformfieldstyles)
* [PaypalCommerceInitializeOptions](README.md#paypalcommerceinitializeoptions)
* [StripeElementOptions](README.md#stripeelementoptions)

### Functions

* [createCheckoutButtonInitializer](README.md#createcheckoutbuttoninitializer)
* [createCheckoutService](README.md#createcheckoutservice)
* [createCurrencyService](README.md#createcurrencyservice)
* [createEmbeddedCheckoutMessenger](README.md#createembeddedcheckoutmessenger)
* [createLanguageService](README.md#createlanguageservice)
* [createStepTracker](README.md#createsteptracker)
* [embedCheckout](README.md#embedcheckout)

## Type aliases

###  AccountInstrument

Ƭ **AccountInstrument**: *[PayPalInstrument](interfaces/paypalinstrument.md) | [BankInstrument](interfaces/bankinstrument.md)*

___

###  AddressKey

Ƭ **AddressKey**: *keyof Address*

___

###  AdyenComponentState

Ƭ **AdyenComponentState**: *[CardState](interfaces/cardstate.md) | [WechatState](interfaces/wechatstate.md)*

___

###  AmazonPayV2ButtonInitializeOptions

Ƭ **AmazonPayV2ButtonInitializeOptions**: *[AmazonPayV2ButtonParams](interfaces/amazonpayv2buttonparams.md)*

The required config to render the AmazonPayV2 buttton.

___

###  AnalyticStepType

Ƭ **AnalyticStepType**: *"customer" | "shipping" | "billing" | "payment"*

___

###  BraintreeFormFieldBlurEventData

Ƭ **BraintreeFormFieldBlurEventData**: *[BraintreeFormFieldKeyboardEventData](interfaces/braintreeformfieldkeyboardeventdata.md)*

___

###  BraintreeFormFieldEnterEventData

Ƭ **BraintreeFormFieldEnterEventData**: *[BraintreeFormFieldKeyboardEventData](interfaces/braintreeformfieldkeyboardeventdata.md)*

___

###  BraintreeFormFieldFocusEventData

Ƭ **BraintreeFormFieldFocusEventData**: *[BraintreeFormFieldKeyboardEventData](interfaces/braintreeformfieldkeyboardeventdata.md)*

___

###  BraintreeFormFieldStyles

Ƭ **BraintreeFormFieldStyles**: *Partial‹Pick‹CSSStyleDeclaration, "color" | "fontFamily" | "fontSize" | "fontWeight"››*

___

###  CheckoutIncludeParam

Ƭ **CheckoutIncludeParam**: *object*

#### Type declaration:

___

###  ComparableCheckout

Ƭ **ComparableCheckout**: *Pick‹[Checkout](interfaces/checkout.md), "outstandingBalance" | "coupons" | "giftCertificates"› & object*

___

###  ConsignmentsRequestBody

Ƭ **ConsignmentsRequestBody**: *[ConsignmentCreateRequestBody](interfaces/consignmentcreaterequestbody.md)[]*

___

###  CustomerAddressRequestBody

Ƭ **CustomerAddressRequestBody**: *[AddressRequestBody](interfaces/addressrequestbody.md)*

___

###  FlashMessageType

Ƭ **FlashMessageType**: *"error" | "info" | "warning" | "success"*

___

###  FormFieldFieldType

Ƭ **FormFieldFieldType**: *"checkbox" | "date" | "text" | "dropdown" | "password" | "radio" | "multiline"*

___

###  FormFieldType

Ƭ **FormFieldType**: *"array" | "date" | "integer" | "string"*

___

###  GuestCredentials

Ƭ **GuestCredentials**: *Partial‹[Subscriptions](interfaces/subscriptions.md)› & object*

___

###  HostedCreditCardInstrument

Ƭ **HostedCreditCardInstrument**: *[Omit](README.md#omit)‹[CreditCardInstrument](interfaces/creditcardinstrument.md), "ccExpiry" | "ccName" | "ccNumber" | "ccCvv"›*

___

###  HostedFieldBlurEventData

Ƭ **HostedFieldBlurEventData**: *HostedInputBlurEvent["payload"]*

___

###  HostedFieldCardTypeChangeEventData

Ƭ **HostedFieldCardTypeChangeEventData**: *HostedInputCardTypeChangeEvent["payload"]*

___

###  HostedFieldEnterEventData

Ƭ **HostedFieldEnterEventData**: *HostedInputEnterEvent["payload"]*

___

###  HostedFieldFocusEventData

Ƭ **HostedFieldFocusEventData**: *HostedInputFocusEvent["payload"]*

___

###  HostedFieldOptionsMap

Ƭ **HostedFieldOptionsMap**: *[HostedCardFieldOptionsMap](interfaces/hostedcardfieldoptionsmap.md) | [HostedStoredCardFieldOptionsMap](interfaces/hostedstoredcardfieldoptionsmap.md)*

___

###  HostedFieldStyles

Ƭ **HostedFieldStyles**: *[HostedInputStyles](README.md#hostedinputstyles)*

___

###  HostedFieldValidateEventData

Ƭ **HostedFieldValidateEventData**: *HostedInputValidateEvent["payload"]*

___

###  HostedInputStyles

Ƭ **HostedInputStyles**: *Partial‹Pick‹CSSStyleDeclaration, "color" | "fontFamily" | "fontSize" | "fontWeight"››*

___

###  HostedVaultedInstrument

Ƭ **HostedVaultedInstrument**: *[Omit](README.md#omit)‹[VaultedInstrument](interfaces/vaultedinstrument.md), "ccNumber" | "ccCvv"›*

___

###  Instrument

Ƭ **Instrument**: *[CardInstrument](interfaces/cardinstrument.md)*

___

###  Omit

Ƭ **Omit**: *Pick‹T, Exclude‹keyof T, K››*

___

###  OrderPayments

Ƭ **OrderPayments**: *Array‹[GatewayOrderPayment](interfaces/gatewayorderpayment.md) | [GiftCertificateOrderPayment](interfaces/giftcertificateorderpayment.md)›*

___

###  PaymentInstrument

Ƭ **PaymentInstrument**: *[CardInstrument](interfaces/cardinstrument.md) | [AccountInstrument](README.md#accountinstrument)*

___

###  PaypalCommerceFormFieldBlurEventData

Ƭ **PaypalCommerceFormFieldBlurEventData**: *[PaypalCommerceFormFieldKeyboardEventData](interfaces/paypalcommerceformfieldkeyboardeventdata.md)*

___

###  PaypalCommerceFormFieldEnterEventData

Ƭ **PaypalCommerceFormFieldEnterEventData**: *[PaypalCommerceFormFieldKeyboardEventData](interfaces/paypalcommerceformfieldkeyboardeventdata.md)*

___

###  PaypalCommerceFormFieldFocusEventData

Ƭ **PaypalCommerceFormFieldFocusEventData**: *[PaypalCommerceFormFieldKeyboardEventData](interfaces/paypalcommerceformfieldkeyboardeventdata.md)*

___

###  PaypalCommerceFormFieldStyles

Ƭ **PaypalCommerceFormFieldStyles**: *Partial‹Pick‹CSSStyleDeclaration, "color" | "fontFamily" | "fontSize" | "fontWeight"››*

___

###  PaypalCommerceInitializeOptions

Ƭ **PaypalCommerceInitializeOptions**: *[PaypalCommercePaymentInitializeOptions](interfaces/paypalcommercepaymentinitializeoptions.md) | [PaypalCommerceCreditCardPaymentInitializeOptions](interfaces/paypalcommercecreditcardpaymentinitializeoptions.md)*

A set of options that are required to initialize the PayPal Commerce payment
method could be used for PayPal Smart Payment Buttons or PayPal Credit Card methods.

___

###  StripeElementOptions

Ƭ **StripeElementOptions**: *[CardElementOptions](interfaces/cardelementoptions.md) | [CardExpiryElementOptions](interfaces/cardexpiryelementoptions.md) | [CardNumberElementOptions](interfaces/cardnumberelementoptions.md) | [CardCvcElementOptions](interfaces/cardcvcelementoptions.md) | [IdealElementOptions](interfaces/idealelementoptions.md) | [IbanElementOptions](interfaces/ibanelementoptions.md) | [ZipCodeElementOptions](interfaces/zipcodeelementoptions.md)*

## Functions

###  createCheckoutButtonInitializer

▸ **createCheckoutButtonInitializer**(`options?`: [CheckoutButtonInitializerOptions](interfaces/checkoutbuttoninitializeroptions.md)): *[CheckoutButtonInitializer](classes/checkoutbuttoninitializer.md)*

Creates an instance of `CheckoutButtonInitializer`.

**`remarks`** 
```js
const initializer = createCheckoutButtonInitializer();

initializer.initializeButton({
    methodId: 'braintreepaypal',
    braintreepaypal: {
        container: '#checkoutButton',
    },
});
```

**`alpha`** 
Please note that `CheckoutButtonInitializer` is currently in an early stage
of development. Therefore the API is unstable and not ready for public
consumption.

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`options?` | [CheckoutButtonInitializerOptions](interfaces/checkoutbuttoninitializeroptions.md) | A set of construction options. |

**Returns:** *[CheckoutButtonInitializer](classes/checkoutbuttoninitializer.md)*

an instance of `CheckoutButtonInitializer`.

___

###  createCheckoutService

▸ **createCheckoutService**(`options?`: [CheckoutServiceOptions](interfaces/checkoutserviceoptions.md)): *[CheckoutService](classes/checkoutservice.md)*

Creates an instance of `CheckoutService`.

**`remarks`** 
```js
const service = createCheckoutService();

service.subscribe(state => {
    console.log(state);
});

service.loadCheckout();
```

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`options?` | [CheckoutServiceOptions](interfaces/checkoutserviceoptions.md) | A set of construction options. |

**Returns:** *[CheckoutService](classes/checkoutservice.md)*

an instance of `CheckoutService`.

___

###  createCurrencyService

▸ **createCurrencyService**(`config`: [StoreConfig](interfaces/storeconfig.md)): *[CurrencyService](classes/currencyservice.md)*

Creates an instance of `CurrencyService`.

**`remarks`** 
```js
const { data } = checkoutService.getState();
const config = data.getConfig();
const checkout = data.getCheckout();
const currencyService = createCurrencyService(config);

currencyService.toStoreCurrency(checkout.grandTotal);
currencyService.toCustomerCurrency(checkout.grandTotal);
```

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`config` | [StoreConfig](interfaces/storeconfig.md) | The config object containing the currency configuration |

**Returns:** *[CurrencyService](classes/currencyservice.md)*

an instance of `CurrencyService`.

___

###  createEmbeddedCheckoutMessenger

▸ **createEmbeddedCheckoutMessenger**(`options`: [EmbeddedCheckoutMessengerOptions](interfaces/embeddedcheckoutmessengeroptions.md)): *[EmbeddedCheckoutMessenger](interfaces/embeddedcheckoutmessenger.md)*

Create an instance of `EmbeddedCheckoutMessenger`.

**`remarks`** 
The object is responsible for posting messages to the parent window from the
iframe when certain events have occurred. For example, when the checkout
form is first loaded, you should notify the parent window about it.

The iframe can only be embedded in domains that are allowed by the store.

```ts
const messenger = createEmbeddedCheckoutMessenger({
    parentOrigin: 'https://some/website',
});

messenger.postFrameLoaded();
```

**`alpha`** 
Please note that this feature is currently in an early stage of development.
Therefore the API is unstable and not ready for public consumption.

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`options` | [EmbeddedCheckoutMessengerOptions](interfaces/embeddedcheckoutmessengeroptions.md) | Options for creating `EmbeddedCheckoutMessenger` |

**Returns:** *[EmbeddedCheckoutMessenger](interfaces/embeddedcheckoutmessenger.md)*

- An instance of `EmbeddedCheckoutMessenger`

___

###  createLanguageService

▸ **createLanguageService**(`config?`: Partial‹[LanguageConfig](interfaces/languageconfig.md)›): *[LanguageService](classes/languageservice.md)*

Creates an instance of `LanguageService`.

**`remarks`** 
```js
const language = {{{langJson 'optimized_checkout'}}}; // `langJson` is a Handlebars helper provided by BigCommerce's Stencil template engine.
const service = createLanguageService(language);

console.log(service.translate('address.city_label'));
```

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`config?` | Partial‹[LanguageConfig](interfaces/languageconfig.md)› | A configuration object. |

**Returns:** *[LanguageService](classes/languageservice.md)*

An instance of `LanguageService`.

___

###  createStepTracker

▸ **createStepTracker**(`checkoutService`: [CheckoutService](classes/checkoutservice.md), `stepTrackerConfig?`: [StepTrackerConfig](interfaces/steptrackerconfig.md)): *[StepTracker](interfaces/steptracker.md)*

Creates an instance of `StepTracker`.

**`remarks`** 
```js
const checkoutService = createCheckoutService();
await checkoutService.loadCheckout();
const stepTracker = createStepTracker(checkoutService);

stepTracker.trackCheckoutStarted();
```

**Parameters:**

Name | Type |
------ | ------ |
`checkoutService` | [CheckoutService](classes/checkoutservice.md) |
`stepTrackerConfig?` | [StepTrackerConfig](interfaces/steptrackerconfig.md) |

**Returns:** *[StepTracker](interfaces/steptracker.md)*

an instance of `StepTracker`.

___

###  embedCheckout

▸ **embedCheckout**(`options`: [EmbeddedCheckoutOptions](interfaces/embeddedcheckoutoptions.md)): *Promise‹[EmbeddedCheckout](classes/embeddedcheckout.md)›*

Embed the checkout form in an iframe.

**`remarks`** 
Once the iframe is embedded, it will automatically resize according to the
size of the checkout form. It will also notify the parent window when certain
events have occurred. i.e.: when the form is loaded and ready to be used.

```js
embedCheckout({
    url: 'https://checkout/url',
    containerId: 'container-id',
});
```

**Parameters:**

Name | Type | Description |
------ | ------ | ------ |
`options` | [EmbeddedCheckoutOptions](interfaces/embeddedcheckoutoptions.md) | Options for embedding the checkout form. |

**Returns:** *Promise‹[EmbeddedCheckout](classes/embeddedcheckout.md)›*

A promise that resolves to an instance of `EmbeddedCheckout`.
