🚀 Payment Method Problem Solvers 🚀

Picture of 🚀 Payment Method Problem Solvers 🚀
Read our handy storefront styling tips and tricks!

How do I use the Stripe Payment plugin?

A global fully integrated suite of payment products, Stripe offers many different methods of payment under one plugin. From standard credit and debit card payments, to Apple and Google Pay, using our Stripe plugin you can offer these methods of payment to your customers on your Infigo storefront.

This article will walk you through the steps for creating a Stripe account, then connecting up and enabling your Stripe payment plugin in your Infigo storefront.

 

Payment flow using Stripe

The flow of taking a payment through Stripe on your Infigo storefront is exactly the same as it currently is for all of our existing plugins (Paypal, Opayo / Sagepay, Authorize.net etc.). The customer will go through the checkout as normal, if you offer multiple payment options they will select 'Stripe' and then confirm their order. Then the stripe payment popup will appear, hosted and provided securely directly from Stripe and it will present the user with all the payment options you have configured and are applicable for them to use. Then once confirmed, the popup will close and the user will be returned to the order confirmation page on the Infigo storefront.

 

Register for a Stripe account

To start the process, you need to first ensure you have a Stripe account. If you or your business already have one and you are going to want to use this one for your payments on your Infigo storefront then you can ignore this step.

If you do not have a Stripe account already, or want to create a new one for this process, then simply start by creating an account here.

Note: On this form all the information used is for the admin user account. Make sure the email address is a specific email address and only the person dealing with company financials has access to it.
It's also the email address that will be contacted when you need to change your password.
During normal business operation, this email address will receive notifications about payments and other important messages about your online account.
When selecting a password, make sure it contains at least one lowercase, one uppercase, one number and one special character.

 

Stripe will request lots of information from you during the registration process, including information about your role at the business and to identify you.

 

Obtain your Stripe API keys

In order to connect your Infigo storefront to your Stripe account you need to obtain your Stripe API keys from within your Stripe account. You can find these here or by logging in and navigating to 'Developers' And then API Keys in the menu on the left.

From here you will be presented with two keys, a Publishable key (public key) and a Secret key. You need to copy these and paste them into the correct fields in the Infigo Stripe payment plugin.

the Stripe Publishable key should be pasted into the Production public api key field in the Infigo plugin, and the Stripe Secret key should be pasted into the Production secret api key field.

If your Stripe account is in test mode and you obtained test API keys then you should ensure that you paste the keys into the Test key fields in the plugin. And also ensure that the 'Enable Test Mode' option is enabled. This will allow you to make test transactions without taking payments.

 

 

Configure updates back from Stripe to Infigo (Webhooks)

In order to ensure the payment has been successful or in situations where the payment fails we need to setup Webhooks within your Stripe account that will inform Infigo of this information.

To do this, simply selet 'Webhooks' from the left hand menu in Stripe on the same Developers section you were in when you obtained the API keys. Or navigate here.

On this page click on the 'Add an endpoint button'

mceclip0.png

Populate the following information

Endpoint URL: https://{Infigo storefront URL}/Plugins/Stripe/Webhook - You can obtain the actual URL from within the Infigo Stripe payment plugin

Description: This is just an optional bit of text that explains what your Webhook that you are setting up does.

Select events to send: Click on this to add the following two events - payment_intent.payment_failed & payment_intent.succeeded (The easiest way to select these is to use the search feature)

Then click 'Add events'.

Lastly, you can use the inbuilt Stripe Webhook test event button to ensure it is all configured correctly.

 

NOTE: Please ensure under the API version that you are using one of the following supported versions of the webhook API: 

2020-08-27

2022-08-01

2022-11-15

2023-10-16

2024-04-10

2024-06-20

 

Enable the Stripe Plugin

Lastly, you can now enable the Stripe payment plugin in your Infigo admin so that it becomes an option to your customers in the checkout. Simply navigate to your payment methods page (/Admin/Payment/Methods) or search for 'Payment methods'. From the list find the 'Stripe' plugin and click 'Edit'. Then check the 'Is active' checkbox and click 'Update'.

The click on the 'Configure' button against the Stripe payment plugin. In the following screen you are asked to paste in the API Keys you obtained in the earlier steps.

If just testing the integration then enabled the 'Test Mode' (Remember to turn this off before you want to go live). If in test mode, then you should use your Test public and secret keys. Otherwise keep 'Test Mode' disabled and paste in your production public and secret keys.

 

 

Configuring Payment Methods in Stripe

We recommend reaching out to Stripe directly to support you with any Stripe specific related functionality but the different payment methods that will be made available to your users when making purchases on your Infigo storefront through stripe are all configured within your Stripe account.

To set these up you need to click on the settings icon in the top right corner of your Stripe account.mceclip4.png

Then under 'Product Settings > Payments' click on the 'Payment methods' link. This then takes you to the full list of different payment methods that are available to you and ultimately to your customers when you enable them.

You'll notice that some have geographical restrictions and currency restrictions.

When 'turning on' a payment method some are more straightforward than others, and can be activated at the click of a button, others may require you to accept additional terms and conditions and/or provide additional information.

Clicking on the 'Preview' tab at the top once you have selected all the payment methods you want to offer will provide you with an idea of what the user will be presented with when making the payment.

 

mceclip5.png

 

NOTE: If you wish to use Apple Pay, they will require you to carry out a domain verification process of your Infigo. To do this, please create the verification file as per their steps here and then raise a support ticket with our team to implement this for you and to complete the validation process.

Testing recommendations

What we recommend, would be to set up the test mode on a test/training storefront, make a test product with a low value, then from there, you can use this - https://docs.stripe.com/testing#cards these are Stripes test cards, this will allow you to put through test orders and check the set up is working correctly.
 
Once the test environment is working you will be ready to go! But again, we would recommend that you use the live environment on your test storefront, place a test order with a test product (has to be a minimum value of 30p) and put through an order to make sure set up is working correctly.

PayPal: Why am I getting IPN failure emails?

 

Some PayPal customers using PayPal REST may receive warning emails like:

“Please check your server that handles PayPal Instant Payment Notifications (IPN). IPNs sent to the following URL(s) failed: https://<domain>/Plugins/PaymentPayPalStandard/IPNHandler … IPNs may be disabled for your account.”

This can be confusing because PayPal REST integrations typically use Webhooks, not IPN.

This guide explains what’s going on and what to change.


IPN vs Webhooks (why PayPal is mentioning IPN)

 

IPN (Instant Payment Notification) is PayPal’s older server-to-server notification method. It posts transaction updates to a “Notification URL” you configure.

Webhooks are the modern alternative used across PayPal REST integrations: PayPal sends HTTPS POST callbacks to an endpoint on your server when events happen (order approved, capture completed, refund, etc.).

In other words:

  • PayPal Standard integrations commonly reference IPN

  • PayPal REST integrations should rely on Webhooks (per app / integration)


Why the customer sees an IPN URL for “PayPal Standard” when they’re using PayPal REST

 

This usually happens for one of these reasons:

1) Their PayPal account still has an IPN Notification URL set (legacy setting)

If their PayPal profile still contains an IPN Notification URL, PayPal may continue attempting to send IPN messages to it (and warn if it fails). PayPal’s own guidance explains IPN is configured in account settings via a “Notification URL”.

2) A third-party integration is overriding IPN settings

PayPal notes that some shopping carts / integrations can send an IPN listener URL as part of their API calls, overriding the account-level IPN setting and triggering failure notifications.

3) The URL shown is for a different plugin (PayPal Standard), not the REST plugin

If the warning references:
/Plugins/PaymentPayPalStandard/IPNHandler
…that is explicitly a PayPal Standard handler path, not REST. This strongly suggests the PayPal account is still configured to send IPNs somewhere (even if the store is now using REST).


What to do (recommended fix)

Step 1 - Confirm which PayPal plugin the storefront is using

 

  • If the storefront is using PayPal REST, you should focus on webhooks

  • If they are still using PayPal Standard anywhere, the IPN URL must be correct and reachable

(If they’re only using REST, IPN warnings are usually “legacy noise”, but you still want to remove/disable the failing IPN configuration to stop emails.)


Step 2 - Configure Webhooks correctly for PayPal REST

 

For PayPal REST, ensure webhooks are created and pointing to the correct, publicly accessible endpoint.

PayPal webhooks:

  • are configured per REST app

  • send event notifications to your configured webhook listener endpoint

PayPal provides a list of supported webhook event names (useful when choosing what to subscribe to).

Checklist:

  • The webhook URL must be publicly accessible over HTTPS

  • It must match the correct storefront (include the storefront alias if your platform requires it)

  • Confirm events are arriving in PayPal’s Webhooks Events dashboard


Step 3 - Fix or disable the PayPal Standard IPN setting (to stop the warnings)

 

If the PayPal email is complaining about:
https://www.pigsy.com/Plugins/PaymentPayPalStandard/IPNHandler

…then either:

  • that URL is no longer valid/reachable, or

  • PayPal shouldn’t be trying to send IPNs to it anymore

PayPal’s IPN setup docs explain that IPN is enabled by specifying the listener URL in the PayPal account profile (and can be changed there).

What the customer should do in their PayPal account:

  • Go to the IPN settings (profile / selling tools / Instant Payment Notifications)

  • Update the Notification URL to the correct one if they still use PayPal Standard

  • Or disable IPN if they no longer use Standard and are fully REST/webhook-based

(Exact UI labels vary by PayPal account type and region, but the concept remains the same: IPN is tied to a Notification URL in account settings.)


How to sanity-check the endpoint

 

If you want a quick “is the URL alive?” check:

  • Try loading the IPNHandler URL in a browser

    • You may get a 404 (expected sometimes), but if the domain doesn’t resolve, SSL fails, or requests are blocked, PayPal will also fail.

  • Confirm the URL is publicly accessible (not blocked by firewall / WAF / geo rules)

  • Confirm any storefront alias requirement is met (common gotcha when URLs are environment-specific)


FAQ

“But they don’t see any errors in their PayPal dashboard”

 

That’s possible - PayPal’s warning is often triggered simply because it attempted delivery and didn’t get a successful response. Also, IPN warnings can happen even when IPN is disabled if an integration overrides settings in API calls.

“Do we need IPN for PayPal REST?”

 

In general: No. PayPal REST integrations should rely on Webhooks for event notifications.

“What should we tell the customer?”

 

A safe, accurate message is:

  • The warning references PayPal IPN, which is a legacy notification mechanism.

  • Your PayPal REST integration uses webhooks instead.

  • They should ensure webhooks are configured to the correct storefront webhook endpoint.

  • They should update/disable the legacy IPN Notification URL that points to /PaymentPayPalStandard/IPNHandler if they’re not using PayPal Standard anymore.


External references (useful links)

  • PayPal: What is IPN?

  • PayPal Developer: IPN overview & setup

  • PayPal Developer: Webhooks overview

  • PayPal Developer: Webhook event names

  • PayPal: Troubleshooting IPN warnings (including third-party override behaviour)

 

Incomplete

Can’t find what you need?

Ask our Infigo Support Team for help..

🔎
Loading…
    Select a Problem Solver