Install Stripe Payments
- If you haven't already done so, install and activate Business Directory Premium.
- In your WordPress admin, go to Directory → Modules and click the Activate button for the WordPress Stripe plugin.
Connect to Stripe
- Install the Stripe Gateway module
- Go to Directory → Settings → Payment → Stripe
- Click on the Stripe sub-tab
- Toggle on Enable Stripe?
- Enter your Live API keys from the Stripe account information
- (Optional, but recommended) Enter your Test API keys from the Stripe account information
- (Optional, but recommended) Put the payment gateways in test mode. Uncheck this when done testing!
- Save settings
If you would like to use recurring subscriptions or refund payments from stripe.com, your site will need to receive notifications from Stripe.
To enable these notifications, go to your Stripe Account → Developers → Webhooks page, and click the +Add endpoint button.
- In the Endpoint URL field, add the link shown at the top of your Directory → Settings → Payments → Stripe tab. The link will look like this:
- Make sure Listen to is set to Events on your account
- Select to receive all events. If the “receive all events” option is not available, click the “Clear” link and the option will appear again.
Set up Payments
- Go to the Directory → Settings → Payments page. Change currency display options, and turn on the abandoned cart emails, if desired.
- Create one or more Plans
- You’re ready to test payments. Logout as Administrator and attempt to place a listing. Verify that it goes through.
Payments will not be taken if you are logged in as the administrator!
TEST Secret Key – Required. You’ll find the value for this key in your Stripe dashboard. It is used by the module to communicate with your Stripe account. Do not share this key with anyone.
TEST Publishable Key – Required. Same as above.
LIVE Secret Key – Required. Same as above.
LIVE Publishable Key – Required. Same as above.
Use a custom form instead of a “Stripe Checkout” button? – Optional. This setting controls whether the module displays a custom form where users enter their credit card information or a standard Stripe checkout button.
- When disabled (the default), a regular Stripe checkout button will be displayed during the checkout process. The credit card information is entered in an overlay screen that Stripe creates. This is consistent with the Stripe experience in other sites but may not actually match the look and feel of your site. The button looks like this:
- Clicking on the button will create a popup in the browser where the credit card information is collected directly:
- If you enable this option for a custom form instead, a custom form for entering the credit card details will be used. This form matches the look and feel of your site and you can add further customization with CSS overrides. The default form looks roughly like this (although this will vary based on your theme's CSS):
- The Business Directory Plugin form includes email, first and last name, CC info, and Billing address verifying required data on submission.
Verify billing address during checkout? This option turns on a stronger version of Stripe's fraud protection for you. It will require the user to enter a billing address for their credit card, and this must match the user's credit card details. Use this if you're concerned about fraudulent transactions made on your site.
Other payment settings
In addition to the Stripe-specific settings, you will have additional settings like this under the Payment → General settings sub-tab:
By default, Put payment gateways in test mode is enabled. When you are ready to take live payments please toggle this button off.
— Premium Feature —
If you have the Discount Codes module installed, you can activate whether to allow discounts for listing purchases here as well.
Also for those users with a premium plan, you can configure payment reminders for those who attempted to place a listing, but never completed the process (“Abandoned Cart Emails”):
Now you should be ready to receive payments via Stripe!