Stripe Integration (Paid Addon)
The integration with the famous Stripe payment processor allows charging your users for Ad postings using credit cards without ever leaving your website.
Installation and Configuration
In order to install the Stripe integration, you need to first purchase it from our WPAdverts Stripe Integration page.
Once you have it purchased and downloaded, you can install and activate the wpadverts-stripe.zip file from wp-admin / Plugins / Add New / Upload panel.
Finally, you can go to wp-admin / Classifieds / Options / Stripe Integration panel to configure Stripe. The configuration page will look like on the image below
In the first two fields (Publishable Key and Secret Key) you need to enter the keys generated for you by Stripe.
If you do not have Stripe account yet then you will need to create it first. You can signup for a Stripe account here.
Payment Confirmations and PSD2
Since version 1.1.0 there is a “Payments Confirmation” section. It has options required to make the Stripe integration compatible with EU Revised Payment Services Directive, known as PSD2.
In earlier versions, the payment was instantly confirmed when attempting to charge a card. With the PSD2 in most cases, this is no longer possible. The users would need to authorize their credit card payment.
Please note that while this is a European Union directive it affects not only EU based sites. It affects any site which will charge a credit card issued by an EU bank.
How the credit card payment is authorized would depend on the bank itself mainly. That being said, in most cases, this will be some kind of 3-D Secure authentication.
The most important field here is “Payment Intent – Succeded“, you will need to enter here a “Signing secret” key. In order to generate it go to Stripe.com Dashboard / Developers / Webhooks panel.
In Endpoints section click “Add Endpoint” button. You should see a form like on the image below
In the “Endpoint URL” field enter an URL you see in your wp-admin / Classifieds / Options / Stripe panel in the “Endpoint URL” field.
Below you will see a “Version” field, select there “Your current version” option.
In “Events to send” select only “payment_intent.succeeded” option.
Once you are ready click “Add Endpoint” button. The webhook will be saved and you will be redirected to a page with webhook details. You should see there a “Signing secret” section with a “Click to reveal” button inside it.
Click the button it should show your webhook secret, copy it and paste in WPAdverts Stripe configuration in “Payment Intent – Succeeded” field.
Live Confirm Payments
The last option in this section is “Live Confirm“. If you check this field the integration will try to confirm the payment with Stripe when checking the payment status.
Technically if you use this option you do not need to configure webhooks, although Stripe itself advises against it. The user might not come back to your page after the payment and there will be no way to automatically verify the payment without webhooks.
That being said you can use the Live Confirm if you are testing the integration on localhost or a site to which Stripe cannot send a confirmation.
General Payments Options
The remaining Stripe options are:
Payment Method Name: This is the payment method name that will be visible to users in the checkout (in third [adverts_add] step). More specifically this is a tab name in the checkout.
Payment Description: Additional information that will appear on your customers’ credit card statements. Make sure to enter here information that will allow the user to remember what he paid for to avoid getting a chargeback.
Receipts: If you will check this checkbox then Stripe will automatically email receipts to customers for all the purchases.
Making First (or Test) Payment
Before you will receive first payment, you need to make sure that you have the Payments Module enabled and that you have at least one Pricing with a price greater than 0 created.
Once you do that, go to a page with [adverts_add] shortcode and post an Ad. In the third step use card number 4242 4242 4242 4242 with a random data and CVC code. This is a test card which you can use to make test payments.
Storing Cards Data
If you are making a payment as a logged-in user then the credit card data will be saved for future use. Later you will be able to pay with this card just by selecting it from cards list, you will not need to enter the card details again.
If you are wondering what about the data security? Then there is no need to. WPAdverts Stripe integration stores in your database only the customer Stripe ID. All the credit cards data is pulled every time from the PCI Compliant Stripe server. This is a quick and secure way to make credit card payments. Even if your own website security will be compromised no credit card data will be leaked.
Note that from the page with credit card selection users can also delete card (the trash icon on the image above) and select a default credit card (if the user has more then one card created).