1. Home
  2. Jetpack CRM Extensions
  3. Invoicing Pro
  4. Using Invoicing Pro with PayPal

Using Invoicing Pro with PayPal

The main settings for the Invoicing Pro extension are added to the Invoice Builder, located in the Jetpack CRM > CRM Settings > Invoicing tab.

Please note that Invoicing Pro can currently only process debit and credit card payments.

However, if you’re using PayPal there’s also some additional settings you need to enable in your PayPal account for this to work seamlessly.

Go to Jetpack CRM > CRM Settings > Payments & select ‘PayPal’ from Accept Payment via and Save. It just needs your PayPal email(s):

Please note that the Paypal Business Sandbox Email is not the same as your Paypal account email. Please follow the link for more information, and how to retrieve this email address.

Adding these settings enables your invoices to be Paid Online using PayPal as the payment processor. However, for Jetpack CRM to process the transaction and mark the invoice as paid, you need to make sure that you’ve told PayPal to send payment notifications.

If you don’t enable IPN in your PayPal account the invoice payment will still go through, but you’ll need to update the status manually and create the transaction via Paypal. It’s best to enable the IPN and let Invoicing Pro do the transaction logging and assignment to the invoice.

PayPal IPN Settings

The Pay with PayPal button has the notify_url set so that PayPal knows where to post the notification of a successful payment to. However this will not happen if you don’t have IPN enabled in your PayPal Account:

  • Log into your PayPal account.
  • Click on your name in the upper right-hand corner and then on Account Settings.
  • Under Products and Services click on Website Payments.
  • Look for an option labelled Instant Payment Notifications and click Update.
  • Click Choose IPN Settings.
  • Make sure Receive IPN is Enabled, and Save.

It doesn’t matter what you have in your Notification URLsince Invoicing Pro will over-ride this with its own URL

The important thing is to make sure you have enabled IPN messages to be sent.

And you’re done.

Frequently Asked Questions

How can I test the PayPal setup before making it Live?

We have not built in sandbox mode for a couple of reasons. First, the IPN in sandbox mode isn’t as reliable as in live mode. Additionally, it takes a while for IPN notifications to come through in sandbox mode and often this may be mistakenly seen as the extension not working as advertised

I’m in LIVE mode and still not seeing IPN notifications?

Sometimes even in live mode it can take a bit of time to come through (despite the name, they’re not always instant). However, it may be that there’s an issue with the delivery of the IPN.

To see whether this is the case, you can head over to your PayPal IPN History page to view the status of your IPNs. If they show as queued then it’s just PayPal being slow.

If they show as Retrying then something has gone wrong with the PayPal hander. While we haven’t had this issue in our tests, it may be possible other plugins could interfere, so always test using a default WordPress theme like TwentyTwenty and with other plugins disabled (expect the Jetpack CRM plugin + extensions family). If you still see problems after testing on a ‘standard’ install please open a support ticket.

Paypal has more details about IPN notifictions.

I don’t have PayPal. How can I use this extension?

We offer PayPal and Stripe as the payment gateways. If you don’t have PayPal the other option available to you is our Stripe integration.

If you don’t use PayPal or Stripe and would like to discuss additional payment gateways for online payment please open a support ticket.  

Currently, we do have plans to build support for more payment gateways, so please let us know via a support ticket if there’s a gateway you’re particularly interested in.

Updated on August 16, 2022

Was this article helpful?

Related Articles

Still not found an answer?
If you've searched the knowledge base and still can't find a solution, please submit a ticket.