In this document:
- Introduction
- Why are my payments delayed and bookings marked as pending?
- Do the PayPal and Stripe integrations offer Strong Customer Authentication (SCA)?
- Does the Stripe Integration Accept iDEAL or BanContact Payments?
- How do I include taxes? (VAT)
- Can I choose multiple currency types for an Appointment Type?
- Do my customers receive a receipt for payments?
- Will my customers automatically get a refund for canceled appointments?
- Can I set up paid subscriptions or appointment packages?
- Does the Appointment Field work with Multiple Form Redirects?
Introduction
Everything you need to know about how Stripe and PayPal work with the SSA payments feature. See below for some of the most asked questions on how payments will affect your Booking Calendar on SSA.
Why are my payments delayed and bookings marked as pending?
SSA is waiting for the payment to clear before confirming the booking; this means the booking will be marked as pending.
PayPal
There are a few possible reasons the PayPal payments are delayed:
- Paypal deems the merchant suspicious (if it’s a brand new account with little history or a high % of refunds), then it will hold the transaction for a more extended period, sometimes days, before releasing it.
- Paypal deems the purchaser suspicious (same thing, relatively new account, haven’t done all their identity verification steps, or little transaction history).
- The user paid with an eCheck; this payment option usually takes anywhere from 3 to 5+ days to process. Here’s a guide on how to disable this option on your PayPal account.
Read more about PayPal Delays here.
Stripe
If the payment was made through Stripe, then here are some possible reasons for a delay:
- The first payout for every new Stripe account is typically paid out seven days after receiving the first successful payment.
- Your business or country has a longer payout period.
Additionally, read more about Stripe Delays here.
We also have a nifty guide that covers managing bookings in the pending payment state.
Can I adjust the pending payment duration?
By default, the pending_payment duration is set to 30 minutes for Stripe and seven days for PayPal. However, this can be edited with our mini-plugin. Learn how to change that here.
Do the PayPal and Stripe integrations offer Strong Customer Authentication (SCA)?
“Strong Customer Authentication (SCA) is a requirement of the second Payment Services Directive (PSD2), which aims to add extra layers of security to electronic payments.
SCA will apply to the European Economic Area (EEA) and the United Kingdom and will likely continue to apply in the UK after the Brexit transition period. Banks must perform additional checks when consumers make payments to confirm their identity. To do this, banks may ask for a combination of two forms of identification at checkout” – Visa
Our Stripe integration is SCA-compliant, meaning that Stripe will detect whether authentication is required for European customers and change the payment flow during the booking process. We use 3D Secure to process these payments.
PayPal is automatically compliant with SCA regulations due to its built-in authentication and the nature of digital wallet software.
Does the Stripe Integration Accept iDEAL or BanContact Payments?
Yes, the Stripe integration in Simply Schedule Appointments is compatible with iDEAL payments and BanContact. To enable iDeal and/or BanContact for your appointment payments:
- Enable iDeal or BanContact as a payment method in your Stripe Account > Settings > Payment methods.
Under the Bank Redirects section, click Turn on, and Request Access. Once enabled, finish setting it up with the Provide info button if shown. - Set your Appointment Type Payment settings in SSA to accept the Euro Currency AND make sure the checkboxes for iDeal or BanContact under Payment Methods are enabled.
- Set up your Stripe webhooks accordingly.
The Stripe code is set up to detect whether a customer can checkout using the iDEAL or BanContact payment method. The user will see an iDEAL and/or BanContact button during the booking transaction.
The currency must be set to a supported currency (such as the Euro currency) and the Stripe Webhook should be set up properly in order for the iDeal and/or BanContact payment methods to appear.
How do I include taxes? (VAT)
We don’t have any way to set taxes/VAT on the paid appointments. Based on these two pages for Stripe and PayPal, they also don’t automatically charge/include taxes/VAT.
You’ll need to include VAT within your prices and handle those manually.
Can I choose multiple currency types for an Appointment Type?
Currently, we can’t choose multiple currency types for each appointment type. Stripe and PayPal automatically handle currency conversions in their backend:
- “If the charge currency differs from the customer’s credit card currency, the customer may be charged a foreign exchange fee by their credit card company. The customer may also be charged a fee by their credit card company if the credit card and your business are in different countries, regardless of the currency used.” Stripe: https://stripe.com/docs/currencies
- “If you have a PayPal Premier or Business account, configure your Payment Receiving Preferences to handle payments automatically. You can convert any payment into your primary currency or block certain types of payments.” PayPal: https://developer.paypal.com/docs/api/reference/currency-codes/#payment-receiving-preferences
Do my customers receive a receipt for payments?
Stripe and PayPal automatically send customers a receipt for the transaction.
We don’t have a way to customize the Stripe or PayPal receipts in the SSA plugin. You’ll need to manage the payment notifications through their website dashboards:
An alternative way to relay payment information to your customer would be to include the amount paid in the customer confirmation emails from SSA.
Use the following twig template for the notifications:
Payment Collected: {{ Appointment.payment_received }}
Conditional Twig If Customer Has Choice to Pay Later
{% if Appointment.payment_received != '0.00' %}
Payment collected: ${{ Appointment.payment_received }}
{% else %}
You chose to pay later.
{% endif %}
Will my customers automatically get a refund for canceled appointments?
Canceled appointments don’t automatically issue refunds to customers. You will have to issue the refund for the customer manually.
This is so that you can have complete control over your refund policy. This gives you the discretion to choose:
- Full refunds
- Partial refunds
- Or no refunds
Read more about managing those in our Managing Payments for Bookings guide.
Can I set up paid subscriptions or appointment packages?
Currently, we can’t create subscriptions to appointments or sell packages. Each booking can only have a single price, and each must be booked one at a time.
We’re looking forward to integrating with WooCommerce, allowing for a more robust payment system.
Does the Appointment Field work with Multiple Form Redirects?
This is assuming you have a booking form where your appointment field is embedded on form ID X, and you redirect the user to a new form, ID Z, essentially creating a chain of forms. The Simply Schedule Appointments appointment field relies on the submission signals from the form it’s currently embedded on.
If a form redirect is used, SSA loses the connection with its original form and does not register whether the second form submits an entry or not. Because of this, the appointments will consistently end up in an Abandoned state since there was no signal to have them changed to Booked.
Related Guides
-
MailChimp Setup
-
Custom Fields for Customer Information
-
Google Calendar Sync
-
Sync Multiple People’s Google Calendar Into One