As of mid-January 2023, we have begun migrating our customers' payment forms to a new version in order to better integrate with our third party payment processor, Stripe. Your payment forms may be using this new version but if not, all payment forms will eventually be moved to the new version.
You may notice some differences in your checkouts:
The default (and always enabled) Name and Email fields have been moved to the first page of the checkout.
The Coupon Code field has been moved to the first page of the checkout.
There are no longer any one-page checkouts. Unfortunately, this is due to how Stripe now works and is out of our control.
While all payment forms have new URLs, your existing/prior payment form URLs will automatically redirect to the new URLs.
The Payment Details fields are structured differently than before.
Checkouts now fully support 3DS card checkouts.
Some issues you may want/need to check on based on your forms:
If you have a Google Analytics Funnel that tracks certain payment forms, with the new payment forms URLs, those funnels may not work. The URLs may need to be adjusted in Google Analytics.
If you have asked for a Name and Email as custom fields, you might want to remove those as the Name and Email are now required by default on the first page of the checkout.
If you have custom CSS in one or more themes that your payment forms are using, you might want to check to see if there are any formatting issues.
Redirect URLs set on forms will no longer work with dynamic payment_id or customer_id automatically passed in.
Things may look different on Stripe:
Previously we created Stripe payment intents after payers entered their credit card information. Now, we create Stripe payment intents after payers enter their names and emails but before they enter their credit card information.
You may see more failed payment intents in your Stripe dashboard; previously we did not create payment intents for card network errors like "insufficient funds" or other types of declines.
You may see more payment intents in your Stripe dashboard that are "incomplete" or “canceled".
"incomplete" means a payer started to checkout, but never finished
"canceled" setup intents may result from "incomplete", recurring checkouts that went unfinished for more than 23 hours.
Why has the checkout changed?
Based on Stripe's best practice recommendation, we've updated our checkout and back-end servers to support the following features on Stripe:
Automatically adjusts input fields to collect information based on the payment method and country.
Dynamically sorts payment methods based on a customer’s locale and location to optimize for conversion. More payment methods will be coming soon.
Reduces friction for card payments with input validation, masking, styling and error handling.
Adds new payment methods without any front-end changes, and gives you access to new payment methods as soon as Stripe supports them (not yet, but coming soon).
Improved support for Strong Customer Authentication (SCA) and similar regulatory changes.
We are embracing the recommended Stripe APIs (Payment Element, Payment Intents & Setup Intents). You may notice these differences when looking directly at your Stripe account. While this complicates the processing of payments, MoonClerk is always trying to remove complexity from your business workflows so most of this is just happening behind the scenes.