Since Oliver Pay is powered by Stripe, you can start making online transactions with Oliver Pay using any WordPress plugin that makes Stripe available.
This includes the official Stripe plugin for WooCommerce.
Once it has been installed and activated, navigate to settings.
Now, select "enter account keys (advanced)." Don't worry, it's really not that advanced.
To get all this information, we'll need to go to the Stripe dashboard (dashboard.stripe.com). Make sure it's the Stripe account that is managed by Oliver Pay. You will see the Oliver logo in the top left if it is.
Then, hit "Developers."
Under Developers, navigate to "API keys" and get the "Publishable key" & "Secret key" from there.
Now, navigate to "Webhooks" and hit "Add endpoint."
From your WooCommerce store, grab the webhook endpoint that is bolded and pop that in and select the following events to listen to (at minimum):
source.chargeable
source.canceled
charge.succeeded
charge.failed
charge.captured
charge.dispute.created
charge.dispute.closed
charge.refunded
review.opened
review.closed
payment_intent.succeeded
payment_intent.payment_failed
payment_intent.amount_capturable_updated
payment_intent.requires_action
setup_intent.succeeded
setup_intent.setup_failed
Almost done. Click on your newly created webhook and reveal the signing secret webhook key. Pop that into WooCommerce and save live keys.*
*Note: it will be listening to more than 4 events if you selected all the events outlined above, as you are supposed to.
Last step. Unfortunately, after switching to Oliver Pay, the payment methods saved to your customers' WordPress user profiles will not work. To get ahead of any issues, it is recommended that you either manually delete saved payment methods from user profiles or run a script to clean up the database. Your customers will maintain access to their user profiles, but they will have to re-add any saved payment methods.
Here is the script:
DELETE FROM `wp_usermeta` WHERE meta_key IN ( '_stripe_customer_id', '_stripe_source_id', '_stripe_card_id' ); DELETE tokenmeta FROM `wp_woocommerce_payment_tokenmeta` tokenmeta INNER JOIN `wp_woocommerce_payment_tokens` ON `wp_woocommerce_payment_tokens`.`token_id` = tokenmeta.`payment_token_id` WHERE `wp_woocommerce_payment_tokens`.`gateway_id` = 'stripe'; DELETE FROM `wp_woocommerce_payment_tokens` WHERE gateway_id='stripe';
(From: https://woocommerce.com/de-de/document/stripe-fixing-customer-errors/)