=== FunnelKit Payment Gateway for Stripe WooCommerce ===
Contributors: amans2k, xlplugins, teamwoofunnels
Tags: stripe, apple pay, google pay, WooCommerce Stripe
Requires at least: 5.4.0
Tested up to: 6.9.0
Requires PHP: 7.0
Stable tag: 1.14.0.5
License: GPLv3
License URI: http://www.gnu.org/licenses/gpl-3.0.html

FunnelKit Payment Gateway for Stripe WooCommerce is an integrated solution that lets you accept payments on your online store for web and mobile.

== Description ==
FunnelKit Payment Gateway for Stripe WooCommerce is an integrated solution that lets you **accept payments on your online store for web and mobile.**

It delivers a simple, quick, secure payment gateway to your WooCommerce website.

With this Stripe Payment Gateway for WooCommerce plugin, you can accept **credit and debit card** payments through Stripe, such as Visa, MasterCard, Diners Club, JCB, American Express, etc.

Plus, it integrates with **one-click express payments**, such as Google Pay and Apple Pay.

It also supports **local payment or bank redirect-gateway** options such as SEPA, P24, iDEAL, BanContact, ACH Direct Debit, EPS, Pix, Multibanco, MobilePay, and more.

In addition, this plugin extends its support to **Buy Now Pay Later** payment gateways such as Affirm, Klarna, and Afterpay, as well as **digital wallet** options like CashApp Pay and Alipay.

This free WooCommerce Stripe plugin easily integrates with **FunnelKit’s Funnel Builder and One Click Upsells**, making the payment process simpler and more enjoyable.

This leads to increased conversions and happy customers.

https://www.youtube.com/watch?v=01pWZNaGGd4


== Why Stripe? ==
Stripe is one of the world’s largest payment getaways with no set-up fees, monthly fees, or hidden costs. You only get charged when you make a sale.

It offers over 135+ currencies so that you can [reduce the cart abandonment rate](https://funnelkit.com/woocommerce-cart-abandoment/) of your WooCommerce store and increase your conversions.

== Features of Stripe Payment Gateway for WooCommerce ==

Here are some outstanding features of Stripe Payment Gateway for WooCommerce:

=== 1. Quick Onboarding Process

Once you connect your Stripe account with Stripe Payment Gateway for WooCommerce, you don’t need to go back and forth to enter your API keys manually. All your details, including the live and test keys, will be fetched here.

=== 2. Hassle-free Apple Pay and Google Pay Set-Up

By [enabling one-click express payments](https://funnelkit.com/woocommerce-one-click-checkout/) in your store, you provide your customers with a smooth checkout and payment experience. Our one-click express payment options include Apple Pay, Google Pay, and more.

=== 3. Automatic Webhook Creation

Stripe Payment Gateway for WooCommerce stays one step ahead in syncing your webhooks from your Stripe account. You don’t need to copy and paste your webhooks manually – they get integrated as soon as you create one.

=== 4. Supports All Major Credit and Debit Cards

Collect payments directly from your customers from several brands of credit and debit cards, such as Visa, MasterCard, American Express, Discover, JCB, etc., via Stripe. This helps ensure a hassle-free checkout experience in your store that minimizes cart abandonment.

=== 5. Flexible Payment Options with Buy Now Pay Later Gateways

Stripe Payment Gateway for WooCommerce integrates with [Buy Now Pay Later](https://funnelkit.com/woocommerce-buy-now-pay-later/)(BNPL) payment gateways such as Affirm, Klarna, and Afterpay.

Offer your consumers the flexibility to make purchases instantly and pay for them later in installments.

https://www.youtube.com/watch?v=ciEzag828L0


=== 6. SCA-Ensured, 3D Secure Payments

Ensure a secure two-way authentication with Strong Customer Authentication (SCA) in your WooCommerce store. It automatically detects and prevents spam transactions through its 3D secure payment gateway for both web and mobile.

=== 7. Deeply Integrates with Subscription Plugins

With Stripe Payment Gateway for WooCommerce, you can collect one-time and recurring subscription payments for subscription-based products on your WooCommerce website.

=== 8. Seamless Transition Between Live and Test Modes

With Stripe Payment Gateway for WooCommerce, you can collect one-time and recurring subscription payments for subscription-based products on your WooCommerce website.

=== 9. Deep Compatibility with FunnelKit

While FunnelKit works with popular gateways, it provides deeper integration with the full FunnelKit suite.

For instance, this gateway detects the upsells after checkout and shows credit card fields even if the order total is zero. This way, you’ll be able to get revenue even with free products or lead magnets.

== Compatible Payment Methods ==

Let’s look at the payment methods you can use to bring to your WooCommerce store using the Stripe Payment Gateway for WooCommerce by FunnelKit.

=== 1. Credit and Debit Cards
Credit and debit cards are the primary methods of payment, offering convenience and security for both customers and merchants.

With Stripe's payment gateway for WooCommerce, businesses can accept major credit and debit cards such as Visa, Mastercard, American Express, Discover, Diners Club, JCB, and more.

=== 2. Apple Pay

[Apple Pay](https://funnelkit.com/woocommerce-apple-pay/) is a digital wallet service provided by Apple Inc. that allows users to make payments using compatible Apple devices, such as iPhones, iPads, Macs, and Apple Watches.

Customers can securely store their payment information on their devices and make payments with their Face ID or Touch ID without manually entering the card details.

=== 3. Google Pay

[Google Pay](https://funnelkit.com/woocommerce-google-pay/) is a digital wallet platform developed by Google that allows users to make payments using compatible devices, both in-store and online.

Google Pay offers customers a convenient and secure way to store their payment information with just a few taps on their smartphones or other devices.

=== 4. Affirm

[Affirm](https://funnelkit.com/woocommerce-affirm-payments/) is the U.S. and Canada's leading buy-now-pay-later payment provider, with over 17 million users and $20.2 billion+ GMV annually. It offers payment options such as 4-interest-free payments and monthly installment plans for 3, 6, and 12 months.

This Stripe gateway plugin makes it easy to integrate this payment method into your WooCommerce store.

=== 5. Klarna

[Klarna](https://funnelkit.com/woocommerce-klarna-payments/) is a Swedish fintech company that offers users the flexibility to buy now and pay later to more than 150 million active consumers across 500,000+ merchants in 45+ countries.

It allows payment options of 30 days, three installments, or 6 to 36-month payment plans.

=== 6. Afterpay or Clearpay

[Afterpay or Clearpay](https://funnelkit.com/woocommerce-afterpay/) (also known as Clearpay in the United Kingdom) is an Australian fintech company that offers consumers in the USA, Australia, New Zealand, the United Kingdom, and Canada the flexibility to buy now and pay later.

Integrate Afterpay into WooCommerce with this free Stripe payment plugin.

=== 7. SEPA

The Single Euro Payments Area (SEPA) initiative simplifies cashless payments among European Union (EU) member and non-member countries.

[SEPA](https://funnelkit.com/woocommerce-sepa-payments/) Direct Debit allows businesses to collect payments directly from customers’ bank accounts within the SEPA region.

This local payment method is convenient and cost-effective for accepting recurring and one-time payments.

=== 8. iDEAL

[iDEAL](https://funnelkit.com/woocommerce-ideal/) is a popular payment method in the Netherlands that allows customers to make payments and buy their favorite products directly from their bank accounts.

FunnelKit’s Stripe Payment Gateway for WooCommerce integrates with iDEAL, providing a secure and convenient way for Dutch customers to pay for goods and services online.

=== 9. Bancontact

Bancontact is a widely used payment option in Belgium, allowing customers to make online payments directly from their bank accounts.

It is supported by most Belgian banks and is a popular choice for eCommerce transactions in the country.

=== 10. Przelewy24 (P24)

Przelewy24, commonly known as P24, is a popular bank redirect payment method in Poland. It is widely used for eCommerce transactions and provides Polish customers convenience when purchasing online.

=== 11. ACH Direct Debit

ACH (Automated Clearing House) Direct Debit is a popular payment method in the United States that allows customers to make payments directly from their bank accounts.

This payment method is particularly useful for recurring payments, subscriptions, and high-value transactions, offering lower processing fees compared to credit card payments.

=== 12. EPS

EPS (Electronic Payment Standard) is a popular online payment method in Austria that allows customers to make secure payments directly from their bank accounts.

It provides a convenient and trusted payment option for Austrian customers, ensuring secure transactions through direct bank integration.

=== 13. Pix

Pix is Brazil's instant payment system that allows customers to make instant payments 24/7 using their mobile phones, internet banking, or ATMs.

This payment method provides Brazilian customers with a fast, secure, and convenient way to pay for online purchases without the need for credit cards.

=== 14. Multibanco

Multibanco is a popular payment method in Portugal that allows customers to pay for online purchases using their bank accounts through ATMs, internet banking, or mobile banking.

It provides Portuguese customers with a familiar and secure payment option that integrates seamlessly with their existing banking infrastructure.

=== 15. CashApp Pay

CashApp Pay is a digital payment method that allows customers to make payments using their Cash App account, providing a quick and convenient checkout experience.

This payment option is particularly popular among younger demographics and offers a seamless mobile-first payment experience.

=== 16. MobilePay

MobilePay is a popular mobile payment solution in Denmark, Finland, and Norway that allows customers to make payments using their smartphones.

It provides Nordic customers with a fast, secure, and convenient way to pay for online purchases using their mobile devices.

=== 17. Alipay

Alipay is one of China's leading digital payment platforms that allows customers to make secure payments using their Alipay accounts.

This payment method is essential for reaching Chinese customers and provides a trusted, widely-used payment solution in the Chinese market.

The FunnelKit Team is committed to bringing more payment gateways to enhance your WooCommerce store experience.

== ABOUT FUNNELKIT ==

## WE ARE AN OFFICIAL STRIPE PARTNER ##

FunnelKit is proud to be an [official Stripe partner](https://stripe.partners/directory/funnelkit).

Stripe Payment Gateway for WooCommerce is part of FunnelKit's ever-growing plugin ecosystem used on thousands of websites.

=== Here are some of our plugins:

**[FunnelKit's Funnel Builder](https://wordpress.org/plugins/funnel-builder/)** - The most flexible funnel builder for WordPress. Build profitable funnels using conversion-friendly templates, analyze performance and improve with built-in A/B testing.

**[FunnelKit Checkout](https://funnelkit.com/woocommerce-checkout-pages-aero/)** - Increase your conversions with FunnelKit’s optimized WooCommerce checkout pages. Choose from ready-to-use checkout page templates, embed forms, create one-page checkouts, and more. Offer order bumps to boost your business revenue.

**[FunnelKit One-Click Upsells](https://funnelkit.com/woocommerce-one-click-upsells-upstroke/)** - Boost your average order value (AOV) by pitching hyper-relevant post-purchase upsell offers after the checkout.

**[FunnelKit Automations](https://wordpress.org/plugins/wp-marketing-automations/)** - Engage with your customers with automated WooCommerce email marketing and SMS campaigns. Automate your abandoned cart recovery sequence, post-purchase follow-up emails, winback campaigns, and more.

**[FunnelKit Cart](https://wordpress.org/plugins/cart-for-woocommerce/)** - Adds a beautiful sliding cart to your WooCommerce store. Let the buyers add items, edit quantity and add upsells (Pro) on the side cart. Skip traditional cart page and reach checkout faster.

== Frequently Asked Questions ==

= How do I add a Stripe payment gateway in WooCommerce? =
To add a Stripe gateway to your WooCommerce website, you must first have a Stripe account. Then, install the Stripe Payment Gateway for WooCommerce plugin to integrate with your Stripe account. Once done, all you have to do is to enable the Stripe payment gateway.

= Does it work with recurring subscription payments? =
Yes! Stripe Gateway supports official [WooCommerce Subscriptions](https://woocommerce.com/products/woocommerce-subscriptions/).

= What happens if you switch from the existing Stripe gateway to this Stripe Payment Gateway for WooCommerce plugin? =
Switching from your existing Stripe gateway plugin to the Stripe Payment Gateway for WooCommerce will make it your primary payment gateway plugin to collect payments on your WooCommerce website. Make sure to deactivate your existing plugin after you've made the switch.

= Will my older subscriptions continue to work if I switch to this plugin? =
Yes, your subscriptions will continue to work fine. This Stripe Gateway plugin will take complete responsibility for your subscription charging even if you make the switch.

= How much does WooCommerce charge for Stripe? =
WooCommerce itself doesn't charge for using Stripe as a payment gateway. However, Stripe charges a transaction fee for each payment processed through its platform. You can make your Stripe account for free, but the standard transaction fee in the United States is 2.9% + $0.30 per successful card charge. Fees may vary for international transactions and currency conversions.

= Can I deactivate the existing Stripe plugin after switching to this plugin? =
Yes! Once you've successfully moved on to this plugin, you can deactivate and uninstall your existing Stripe plugin.

= How do I test the payments in my WooCommerce store? =
You can test your payments by making a purchase in your WooCommerce store. Make sure to enable the TEST mode under API settings and make a demo purchase.

= Can I add multiple express buttons on a single page? =
Yes, Stripe Payment Gateway for WooCommerce allows you to show multiple Express Pay options like Google Pay, Apple Pay, and even Payment Request Buttons.

= I have some questions. How do I contact your support team? =
Whatever questions you have, our support team will be happy to help you.
Either fill up this [support form](https://funnelkit.com/support/) or drop your query at [support@funnelkit.com](support@funnelkit.com)

= My express buttons are not showing. What should I do? =
If the express payment buttons are not showing up on your checkout page, please make sure to meet the guidelines of respective payment providers.
Follow this [Troubleshooting document ](https://funnelkit.com/docs/stripe-gateway-for-woocommerce/troubleshooting/express-payment-buttons-not-showing/) to set up your payment providers.

= What payment methods are supported by this WooCommerce Stripe gateway plugin? =
Stripe Payment Gateway for WooCommerce is continuously evolving to add new features and new gateways to its system. Currently, it supports credit and debit cards, including Visa, MasterCard, American Express, Discover, etc., express payments (Apple Pay and Google Pay), local payments such as SEPA, P24, iDEAL, Bancontact, ACH Direct Debit, EPS, Pix, Multibanco, and MobilePay. Furthermore, it's compatible with Buy Now Pay Later methods like Affirm, Klarna and Afterpay, as well as digital wallets like CashApp Pay and Alipay.

= Is there any documentation to help me get started? =
Yes, visit our complete documentation on [Stripe Payment Gateway for WooCommerce](https://funnelkit.com/docs/stripe-gateway-for-woocommerce/) here.


== Installation ==
1. Install 'Stripe Payment Gateway for WooCommerce' Plugin.
2. Activate the Plugin.
3. Go to WooCommerce -> Settings -> Stripe Credit Card
4. Start by connecting with stripe.


== Change log ==

= 1.14.0.5 =
* Fixed: Edge cases causing double upsells charges in case of javascript are deferred loaded on upsells.(#1032)
* Fixed: PHP Error accessing order-pay pages when order ID passed is not valid. (#1169)
* Improved: Order checks improved for order-pay requests. (#1209)

= 1.14.0.4 =
* Improved: [Important] Security improvements related to authenticated admin sessions. (#1195)

= 1.14.0.3 =
* Improved: Added support for third-party apps to customize the redirect URL after Stripe Connect for greater flexibility. (#6872)
* Improved: Enhanced handling of JavaScript errors related to iDeal and Multibanco in specific scenarios. (#1103)
* Improved: Refined CSS styling for the Google Pay button when using direct integration without an iframe. (#1053)
* Fixed: Resolved an issue when adding a new card from the Add Payment Method page while using Stripe Link. (#1096)

= 1.14.0.2 =
* Fixed: UPE Payment element was not showing up correctly for the different language than default language for translatepress & Weglot plugin. (#1027)

= 1.14.0.1 =
* Fixed: iDEAL and EPS gateways not functioning properly when enabled without other payment gateways. (#1019)
* Improved: Enhanced handling of idempotency key errors when processing payments with saved payment methods. (#1022)

= 1.14.0 =
* Fixed: [Important] Issue with script loading because of dependency updated with WooCommerce v10.3.0. (#984)

= 1.13.1 =
* Improved: Added minor tweaks to capture more logs for BNPL scenarios. (#989)
* Improved: Gateways JS classes loading improved in the frontend. Improved performance. (#991)
* Improved: Order exists checking on the order pay page in ACH gateway added. (#987)
* Fixed: Cash App integration showing test mode description on checkout pages. (#987)

= 1.13.0 =
* Added: CashApp Pay payment method integration, offering an additional payment option for users. (#803)
* Added: ACH direct debit payment method support, expanding payment flexibility. (#639)
* Added: EPS payment method integration for enhanced payment method diversity. (#639)
* Added: Pix payment method for Brazil, providing a localized payment option. (#785)
* Added: Multibanco payment integration with upsell support for a smoother customer experience. (#779)
* Added: Admin notice for missing PHP cURL extension to improve troubleshooting and configuration. (#786)
* Added: Filter `fkwcs_stripe_payment_element_rules` to allow custom CSS rules for better design flexibility. (#925)
* Improved: Shipping address requirements and error handling for Google Pay integration, ensuring a smoother user experience. (#941)
* Improved: Express Buttons payments on the single product page for variable products, improving payment flow. (#951)
* Improved: Order object cache buster during webhook requests for better performance. (#953)
* Improved: Customer description in the create customer API for more consistent payouts reporting. (#955)
* Improved: Express Buttons functionality when Credit Card gateway is disabled, improving payment options. (#931)
* Improved: Payment processing to reuse existing intent and avoid multiple payment intents, enhancing transaction efficiency. (#911)
* Improved: Double verification of payment intent on the Thank You page for greater accuracy. (#895)
* Improved: Token caching for optimized payment token retrieval performance, increasing speed. (#858)
* Improved: Updated `fkwcs_paylater_localized_data` filter with custom CSS support for enhanced styling flexibility. (#861)
* Improved: Admin UX to show/hide fields based on connected mode, offering a more personalized interface. (#851)
* Improved: Greece added as a supported country for payment messaging element, expanding regional support. (#829)
* Improved: Admin UX to show webhook misconfigurations, helping with troubleshooting and configuration. (#801)
* Improved: Error handling in express checkout for session storage validation, improving payment reliability. (#816)
* Improved: Stripe Elements integration and event handling for upsells, improving upsell flow. (#771)
* Improved: Payment method handling for subscription renewals, making the process more efficient. (#761)
* Improved: Subscription renewal payment processing improved to handle multiple scheduled action invokation. (#982)
* Improved: Enhanced P24 and Bancontact gateway redirection flow for seamless payment processing. (#937)
* Improved: Robust error handling and intelligent fallback payment methods in subscription renewals for enhanced reliability. (#943)
* Improved: Enhanced order status management with review closed webhook for more accurate order tracking. (#945)
* Improved: Streamlined admin settings display for Google Pay & Apple Pay with better configuration consistency. (#965)
* Improved: Smart express buttons rendering that adapts to Stripe settings for consistent UI behavior. (#922)
* Improved: Enhanced country filtering for Alipay, Multibanco & MobilePay admin settings with improved regional accuracy. (#909)
* Improved: Optimized CSS visibility for Klarna Payment messaging modal ensuring consistent display across all scenarios. (#907)
* Improved: Enhanced WC_Cart instance validation in backend context for improved stability and reliability. (#904)
* Improved: Smart background color management for express buttons with enhanced visibility and better user experience. (#859)
* Improved: Enhanced house number validation for express buttons payment with improved data accuracy and user experience. (#796)
* Improved: Enhanced FK checkout compatibility with robust loading mechanisms for seamless checkout experience. (#789)
* Improved: Intelligent fallback system for Stripe fee and net values using legacy meta keys for seamless compatibility with existing setups. (#787)
* Improved: Enhanced saved credit cards display with intelligent respect for `enable_saved_cards` setting for flexible card management. (#776)
* Improved: Optimized Stripe elements initialization during mount for enhanced reliability and consistent element rendering. (#773)
* Improved: Enhanced zero-dollar payment processing with iDEAL integration for seamless transaction handling. (#763)
* Improved: Handling related to WooCommerce scheduled action for renewals to prevent any duplicate transactions. (#763)
* Fixed: User agent parameter truncation to prevent transaction failures, ensuring successful payments. (#826)
* Fixed: Price conversion to float to avoid type errors, ensuring accurate calculations. (#808)
* Fixed: Blank src in img attribute causing image optimizer issues for improved image handling. (#935)
* Fixed: Fatal error on order-pay page when no order found, ensuring a smoother user experience. (#933)

= 1.12.2 =
* Improved: Behavior of card brand validation in standard credit card input fields. (#752)
* Improved: iDEAL integration updated to take payments using payment element instead of idealBank. (#753)
* Fixed: PHP Error during the handling of case when payment method is unavailable during checkout request. (#748)

= 1.12.1 =
* Improved: Styling improvements in Onboarding wizard. (#744)
* Fixed: PHP Error on API settings page when keys are manually entered. (#744)
* Fixed: Issue with order status moving to failed in case of recovered transaction with "card not supported" error. (#744)

= 1.12.0 =
* Added: MobilePay, a new gateway is added. (#677)
* Added: Compatibility with Funnelkit upsells to allow showing upsell offers for zero dollar checkout. (#620)
* Added: Local gateways now support the Order Pay Page for a smoother checkout experience. (#615)
* Added: Charge Type option added for BNPL gateways, allowing automatic or manual selection for better flexibility. (#617)
* Added: Admin menu navigation under settings updated to be fully compatible with WC v9.8.0. (#719)
* Added: New REST API endpoint added. `capture_terminal_payment`, to handle terminal payments more effectively. (#691)
* Improved: Enhanced syncing for all available card payment methods with Stripe, ensuring removed cards are cleaned up. (#646)
* Improved: Better syncing of default card between WooCommerce and Stripe. (#652)
* Improved: JS error handling for promise errors in upsell credit card popups for smoother functionality. (#686)
* Improved: UX is improved for standard credit card element in case of validation errors, smooth scrolling to the element added. (#731)
* Improved: Payment element initialization now handles slow network conditions more reliably. (#722)
* Improved: Compatibility with early renewals through the modal popup for a smoother renewal process. (#678)
* Improved: Webhook listener works correctly for p24 gateway transactions, ensuring accurate tracking. (#670)
* Improved: Prevented overriding automatic renewals when the gateway is not configured, ensuring reliable renewals. (#625)
* Improved: Affirm & AfterPay works smoothly, when no address is provided. (#687)
* Fixed: A rare case with Google Pay button functioning inside FunnelKit cart. (#618)
* Fixed: Deeper compatibility for WooCommerce subscription to ensure gateway ID is updated during subscription actions. (#630)
* Fixed: Smoother testing experience, handled balance update for administrator during testing. (#641)
* Fixed: Resolved a JavaScript error on the Order Pay page when the selected gateway wasn't credit card. (#666)
* Fixed: Removed generic position class from smart buttons HTML to prevent CSS conflicts and improve styling. (#669)
* Fixed: Enhanced failed transaction order note to include a link to the Stripe dashboard for easier troubleshooting. (#680)
* Fixed: Resolved redirection issue to the thank-you page when using the BNPL gateway and third-party plugin hooks on `wp_redirect`. (#719)
* Fixed: Handled retry scenarios when no card is saved, in case of the "This card does not support this type of purchase" error. (#721)
* Fixed: Addressed a rare case of PHP error, when shipping rate or tax values are returned as blank strings instead of decimals. (#726)
* Fixed: Some cases with Google Pay where first name and last name were not working correctly. (#661)

= 1.11.1 =
* Fixed: Typo in confirmStripePayment method causing javascript error.

= 1.11.0 =
* Added: Introduced a new action hook, `fkwcs_process_response`, to enhance control and flexibility when processing Stripe payment request responses. (#529)
* Improved: Payments in upsells now include `mandate_data`, improving the handling of 3DS cases for a smoother and more secure payment process for link. (#598)
* Fixed: Refined the functionality for deleting payment methods in "My Account" to ensure a seamless and reliable experience. (#529)
* Fixed: Enhanced validation for Express button payments to prevent checkout errors and ensure a hassle-free purchase experience. (#606)
* Fixed: Corrected the meta-key for non-Stripe subscriptions, ensuring data accuracy and consistency. (#604)
* Fixed: Resolved a rare PHP error that could occur during the disconnect webhook admin operation, providing a smoother administrative workflow. (#610)
* Fixed: Optimized compatibility for zero-dollar free trial cases in UPE mode, enabling saved payment methods to work flawlessly. (#611)

= 1.10.1 =
* Improved: Dynamic settings up saved customer payment methods as WooCommerce Payment Tokens. (#529)
* Fixed: PHP Notice regarding text_domain coming in WP v6.7.1. (#589)

= 1.10.0 =
* Added: Integration with Alipay Gateway. (#575)
* Added: Upsell Recovery feature allows new credit card form input when a transaction fails. (#544)
* Added: Allow FunnelKit Upsells to show after a zero-dollar checkout by allowing credit card form input when users accept upsells. (#544)
* Improved: Gateway logging improvements are made when an error occurs during order creation in express button payments. (#576)
* Improved: Move order to failed status in case of charge.failed webhook for credit card gateway. (#576)
* Improved: Allow charge authorization for local gateways. (#578)
* Improved: Google Pay gateway new direct integration was causing issues with shipping when no shipping methods were available with the customer's address. (#580)
* Improved: Gateway title showing "Credit card" in case of express checkout payments. (#580)
* Improved: Confirm Payment intent first during process checkout to avoid confirmation in Javascript. (#580)
* Improved: Avoid adding login cookies in case of user logins, causing issues in a few specific setups. (#580)
* Improved: Pass mandate_data with link payments. (#584)
* Fixed: Order Pay page payments were not working for guest orders. (#589)
* Fixed: Handle malformed JSON scenarios during Express Buttons processing. (#576)

= 1.9.1 =
* Fixed: Google Pay and Apple Pay gateway title was not setting up when stripe is disconnected. (#489)
* Improved: Express Checkout visibility conditions with FunnelKit Checkouts. (#476)
* Improved: Handling for console stripe session APi request error due to locale passing during elements update. (#476)
* Improved: SEPA Payment method styling improvements for add payment method page. (#475)

= 1.9.0 =
* Added: Affirm, Klarna, AfterPay & P24 gateways support for upsell payments with Funnel Builder. (#488)
* Added: Google Pay direct integration using Merchant ID, allowing the Google Pay button to display on every browser. (#387)
* Added: Google Pay and Apple Pay as separate gateways. (#387)
* Added: New gateway mode added as 'Test Mode Admin only', Now you can put gateway in test mode for admin without disrupting live transactions. (#532)
* Added: New admin settings to save Stripe fees in the order currency. (#498)
* Added: Support for SCA (Strong Customer Authentication) for express buttons. (#497)
* Added: Stripe gateway settings support for WPML (WordPress Multilingual Plugin). (#517)
* Added: Correct locale values passed to Stripe elements for non-English stores. (#518)
* Added: Admin settings notice when webhook URL mismatches. (#555)
* Added: Admin notice to prompt store owners when the gateway is in test mode. (#429)
* Fixed: Confirm email checkout field validation handling for express buttons. (#559)
* Fixed: Duplicate token insertion when `payment.succeeded` webhook triggers while payment is executing. (#557)
* Improved: Handling of disputes for SEPA payments. (#477)
* Improved: Email sending when creating a new payment method from the "my-account" page to avoid errors with SEPA. (#544)
* Improved: Setup of Stripe payment elements with a minimum amount permitted to avoid further errors. (#509)
* Improved: Added `data-cookieconsent="ignore"` attribute to the Stripe JS SDK file to prevent core script blocking due to cookie consent. (#505)
* Improved: Prevention of local card expiry checks during renewals. (#544)
* Improved: Listening for the `payment_intent.succeeded` webhook event for Klarna payments. (#545)
* Improved: Server-side error logging for failed payment methods from JS. (#429)
* Improved: Handling of currencies with three decimal places. (#553)
* Fixed: Re-verify button for Apple Pay domain verification not working correctly. (#429)
* Fixed: Payment descriptor settings not being emptied after disconnection. (#460)
* Fixed: Adding a new payment method for SEPA payments not working. (#489)
* Fixed: Multiple handling issues across different parts of the codebase. (#553)
* Fixed: Conversion of primary order status to paid logic for failed orders. (#548)
* Fixed: Unrequired billing address line, state, and city for express checkout payments. (#547)
* Fixed: Webhook data not resetting in Stripe admin settings after disconnection. (#539)
* Fixed: Total not updating correctly for express buttons in FunnelKit slide cart in some scenarios. (#535)
* Fixed: Input credit card details being unset when applying coupons. (#528)
* Fixed: Handling of out-of-stock variants with express checkout buttons. (#541)
* Fixed: PHP 8.2 dynamic allocation issue with `datediff` object. (#429)

= 1.8.2 =
* Improvements for card validation for those using Inline Card credit method
* Fixed: In admin setting standard payment form option was checked in case of inline credit card. (#452)

= 1.8.1 =
* Improved: Card Payments for Stripe merchant accounts that belongs to country where Link method is not supported. (#452)
* Fixed: Order note after confirmed payments was not adding since last update. (#452)

= 1.8.0 =
* Added: Compatibility with WordPress 6.5.0.
* Added: New Enhanced Payment Element (UPE) for Credit Card Gateway form. (#412)
* Added: Link authentication element on email field and link support for UPE. (#412)
* Added: Support for Buy Now Pay Later gateways including Affirm, Afterpay, and Klarna.[Read more](https://funnelkit.com/woocommerce-buy-now-pay-later/) (#412)
* Added: Custom statement descriptor with prefix settings for credit card; includes dynamic order ID merge tag. (#405)
* Added: New filter hook to modify options for separating credit card field elements, specifically to disable link inside field. (#442)
* Improved: Error messaging for cases where no payment method is provided by the browser. (#401)
* Improved: Handling of transactions with 3DS cards for India-based businesses. (#410)
* Improved: Addition of most recent failure reason to order notes in cases of multiple failures. (#418)
* Improved: Prevention of Stripe library classes from autoloading during condition checks. (#421)
* Improved: Functionality of refunds for orders created before Fk stripe activation. (#433)
* Improved: Integration of charge.succeeded webhook for SEPA recurring payments in collaboration with other plugins. (#438)
* Improved: Validation error handling for state information from express payment buttons interfacing with WooCommerce. (#440)
* Improved: Error handling improvements for issues arising from WooCommerce during express payment button processing. (#445)
* Fixed: Issue where Credit Card gateway description was not visible on the frontend. (#424)
* Fixed: Prevention of recurring charges when a card is expired. (#427)
* Fixed: PHP warning on the My Account payment methods page when a user has no cards saved. (#431)

= 1.7.2 =
* Improved: Only process webhook for credit cards in case of order placed using our gateway. (#413)
* Improved: Onboarding wizard and Connect flow improvements (#414)

= 1.7.1 =
* Fixed: Specific selling location select dropdown field was not working correctly for SEPA, iDeal,P24, and Bancontact gateways. (#407)

= 1.7.0 =
* Improved: Compatibility with FunnelKit Checkout updated. (#393)
* Improved: Condition to check valid requests during verify intent improved to avoid nonce verification errors. (#385)
* Improved: Handle webhook delivery for setup having different domains per language in WPML. (#372)
* Improved: Additional handling to listen to intent_succeeded webhook and mark order payment successful to avoid certain edge cases where order goes pending. (#376)
* Fixed: Issue causing card payments to fail when providing a Bank statement description with the `statement_descriptor` parameter.[Stripe announcement](https://support.stripe.com/questions/use-of-the-statement-descriptor-parameter-on-paymentintents-for-card-charges) (#402)
* Fixed: Stripe amount was incorrect for the currency with no decimal values like JPY. (#388)
* Fixed: Stripe Fees showing in non-decimal formatting due to WooCommerce settings. (#380)
* Fixed: Handle error while deleting a payment method from my account if attached to a subscription in some cases. (#373)
* Fixed: SEPA gateway for free trials was not working correctly. (#385)
* Fixed: Apple Pay button CSS was not correct for light outline settings. (#385)
* Fixed: Bank list styling issue correct for iDeal gateway. (#399)

= 1.6.0 =
* Improved: Compatibility with FK cart updated. (#366)
* Improved: Express checkout buttons cover a few edge cases on a single product page. (#368)
* Improved: Added additional metadata for upsell transactions to detect during webhooks. (#370)
* Fixed: Card input background CSS not working with WooCommerce native classic checkout block. (#369)
* Fixed: Compatibility with Fk checkout updated for the cases of card declines. (#361)

= 1.5.4 =
* Improvement: Display incompatibility notice for WC 8.3 (Cart and checkout blocks).(#362)

= 1.5.3 =
* Fixed: cart page setting up on site pages with combination of express checkout settings enabled in both gateway and FK Cart. (#356)

= 1.5.2 =
* Fixed: Resolved a conflict when Express setting in gateway was ON while optimisation express setting in FunnelKit checkout was off. (#353)

= 1.5.1 =
* Improved: Additional Gateways class data was passing to fragments and localised data when express checkout is enabled. (#349)

= 1.5.0 =
* Added: Stripe SDK version updated to v7.128 to provide compatibility with PHP 8.1. (#318)
* Added: Compatibility with PHP 8.2. (#337)
* Added: Compatibility with Funnelkit Cart express button feature. (#342)
* Added: Admin UI to capture authorized charges & to preview transaction data. (#304)
* Added: Username added in refund order note. (#306)
* Added: New filter hooks added to modify API key and API secret. (#312)
* Improved: Default Gateway showing on zero dollar payment for upsell improved. (#308)
* Improved: Mode metadata added in the token to filter saved cards based on mode on checkout. (#275)
* Improved: Handle saved customer ID cases causing 'no_such_customer' error during checkout. (#275)
* Improved: Edge case of two order notes adding with webhooks charge.failed & payment_intent.payment_failed. (#288)
* Improved: Handled edge case where subscription amount is zero causing the error. (#331)
* Improved: Optimize database queries for options key for the pre-setup state. (#315)
* Improved: Dynamic visibility of express checkout buttons based on cart prices on the checkout page. (#308)
* Fixed: Refund order note added twice in a few edge cases with webhooks. (#278)
* Fixed: Javascript error showing during card errors triggers when no HTML wrapper for notice. (#280)
* Fixed: Issue with credit card payments when no country field is available on checkout. (#288)
* Fixed: Shipping methods were not showing up for express button payments on the product page in a few cases. (#307)
* Fixed: PHP error during card failure for subscription free trials in a few cases. (#331)
* Fixed: SEPA Payments are not working when the credit card gateway is disabled. (#335)

= 1.4.1 =
* Improved: Handling of Webhook events when multiple sites are connected to same account. (#267)
* Fixed: An edge case where webhook event payment_intent.succeeded causing duplicate order notes. (#267)

= 1.4.0 =
* Added: Compatibility with WooCommerce HPOS. (#150)
* Added: Filter added to modify transaction metadata for orders/upsells. (#213/#255)
* Added: Support for renewal payment using e-mandate for Indian credit cards. (#256)
* Added: Express checkout compatibility with FunnelKit Cart. (#214)
* Improved: Handle case of test mode webhook causing issues in live mode setups. (#208)
* Improved: Show block loader UI while processing payments via express buttons. (#197)
* Improved: Express buttons styling and other cases. (#234/#247/#223/#224/#207)
* Fixed: Upsells are not showing up for zero-dollar payments via express buttons. (#196)
* Fixed: [Edge case]Prevent adding incorrect order notes on the order refund webhook in case the same account is linked with multiple sites. (#214)
* Fixed: Handle incorrect scroll to notice wrapper in some cases. (#260)

= 1.3.0 =
* Added: Smart buttons compatibility with FunnelKit Cart.
* Improved: Handling for the case on the add-payment-method page when CC fields are not getting initialized.
* Improved: A PHP notice on PHP v8.1.
* Improved: Support for Gpay and Applepay added for renewal processing for the subscriptions created by other gateways.
* Improved: More improved handling for upsells for SCA charges and refunds.
* Fixed: Payments for the p24 gateway were not working correctly.
* Fixed: Statement descriptor was not set up correctly in case of renewals.

= 1.2.8 =
* Fixed: Issue with saved cards in combination of subscription product purchased, Funnel Builder pro plugin is active and no upsells are setup.

= 1.2.7 =
* Improved: SVG Card Icons on Credit Card Fields.

= 1.2.6 =
* Added: Order note now covers more card decline reasons.
* Added: Better metadata added to the payment API requests.
* Added: Shipping data added to the payment api requests.
* Improved: Payments handled for the resubscribe subscription.
* Improved: Handling for cases when payments done by order-pay page.
* Improved: Shipping calculations for the express checkout buttons.
* Improved: Webhook behaviour with other Stripe gateways.
* Improved: Compatibility with payments via pay for order page corrected for few cases.
* Improved: Stripe fee and net calculation logic improved for some scenarios.
* Improved: Compatibility with Funnelkit checkout for CVC toolip.
* Fixed: Refund Webhook adding a duplicate order note item fixed.
* Fixed: Issue with saved cards from other gateways were not showing up on my-account page.

= 1.2.5.1 =
* Fixed: Webhooks request error.

= 1.2.5 =
* Improved: Webhook charge failed request, extra handling added.
* Improved: Express checkout button behaviour for saved cards.
* Improved: PHP & JS code improved with better logging and other optimization.
* Fixed: Express Checkout button on single product add_to_cart call was not working.

= 1.2.4 =
* Improved: Textual changes in admin settings.
* Fixed: Hardened Security for admin settings.
* Fixed: Optimized JS and CSS frontend assets.

= 1.2.3 =
* Improved: Added extra logs to analyze express payment scenarios.
* Improved: Handle multiple enqueue script action execution for front-end, causing issues in some cases.
* Improved: Cancel payment redirection behaviour corrected for Bancontact gateway.
* Fixed: Issue while processing payment through express checkout buttons in some specific cases.
* Fixed: A Few PHP notices were showing up during back-end ajax actions.

= 1.2.2 =
* Improved: Upsell Gateway Selection Setting will be default enabled if FunnelKit is present.
* Fixed: Subscription cancellation error for subscriptions that were created with another Stripe gateway.

= 1.2.1 =
* Improved: Intent API now passes meta_data from order.
* Improved: Webhook handling for the failed charge.

= 1.2.0 =
* Improved: Some improvements in onboarding wizard.

= 1.1.0 =
* Added: New setting to re-verify apple domain registration.
* Improved: Do not re-register the apple domain if already done.
* Improved: Localization for the front-end gateway CC fields.
* Improved: order status behaviour for failure attempts.

= 1.0.0 =
* Public Release
