How to show PayPal Payments in HubSpot
A guide to connecting PayPal & HubSpot using Zapier
Accepting payments by PayPal is a great way for a business to collect money from customers/clients. In this guide, HammaJack co-founder, Jacob Moran, outlines how to add your customer’s PayPal activities into HubSpot.
At HammaJack, we love HubSpot and its adaptability to real business problems. The other day one of our clients had an issue - they accept PayPal payments on their E-Commerce website and wanted to keep track of these payments as well as what was bought in their HubSpot CRM.
Their website follows a pretty standard flow, i.e. Product Page > Cart > Checkout. It looks like the following example.
When a purchase is made via PayPal the CMS platform (Squarespace in this instance) logs the information, and so does PayPal, but HubSpot gets no notification.
This presented an interesting problem for us, and while we originally toyed with a direct integration we ended up going with the below using the following elements;
PayPal’s Instant Payment Notification messaging service
A webhook to Zapier from PayPal
A Zap to HubSpot
The solution is so easy that you can have it set up in 20 minutes and while we’ve shown it in an eCommerce context, it could easily be applied to any situation where PayPal payments are made.
Below we will go into two different options of how to tackle this depending on your HubSpot Marketing Subscription. The first two steps are the same so I’ll outline these together.
Step 1: Connecting PayPal & Zapier
This first step requires a Zapier starter account.
Create the Zap
In Zapier create a Zap with PayPal as the trigger and give a useful name.
Copy the webhook into PayPal’s IPN settings
Take the webhook Zapier gives you and click the PayPal IPN link. Once you’ve logged in, enter the webhook URL as the notification URL, select to receive IPN notifications and save it.
Test your connection
Return to Zapier and test the connection by pulling in some samples.
Step 2: Sending information to HubSpot
PayPal’s connected? Awesome. Now what we do next depends on your HubSpot Marketing Subscription. Use the one that is applicable.
HubSpot marketing enterprise customers
Because you are enterprise customers you get to do things that others can’t. One of those things is creating Custom Events. We can, therefore, use these to send a specific PayPal event to HubSpot.
Create a custom event
The first step is to create a custom event to record our PayPal activities. I won’t go into great detail about how to do this, but you can follow this super handy guide to creating custom events in HubSpot. Your event configuration should end up looking like the following. Keep track of your eventID, you’ll need it later.
Set custom properties for PayPal
This step is optional, but recommended. In this step, we created two custom contact properties under a specific property group. They were;
PayPal: Amount Paid - this will track the amount the purchase was worth
PayPal: Item - this will be used to track (as a string) the items purchased
Please note that if a customer makes another purchase the original value will be overwritten, but will still exist in the property history (we’ll cover this later).
Create a Webhook Zap to HubSpot
Now Zapier has a generic HubSpot Enterprise Event configuration but as we want to send custom information (like what product they purchased) we will need to use a GET webhook to send the information to HubSpot. If you don’t want to set these custom properties you can just set up your integration with the generic HubSpot configuration.
Create your request
Then all you need to do is set up your query. It should like the following;
https://track.hubspot.com/v1/event? _n=eventID &_a=hubspotID &email=payeremail &paypal_amount_paid=mc_gross &paypal_items=item_names &_m=mc_gross
eventID = Your HubSpot event ID
hubspot ID = Your HubSpot account ID
payeremail = The PayPal Payer Email field
mc_gross = The PayPal MC Gross field (repeated twice)
Item_names = The PayPal Item Names field
You can leave the rest of the fields alone.
We repeated the PayPal MC_Gross (what the user paid) field twice for a good reason. By declaring it on the PayPal Amount Paid field we can keep a record of just PayPal payments in HubSpot. And then by declaring it on the “m” field we can track it on the generic contact revenue field as well. This will then include incrementally increasing deal values and other kinds of revenue added to the contact over time. You can read more about that field in the HubSpot Developer Documentation here and here.
Test & publish
You can then test and publish the Zap. If everything is successful you should see two things.
An analytics event in your timeline
An event revenue - please note this is a rolling revenue so it will increase every time you add something to it.
P.s. There is nothing stopping Enterprise customers from setting up the below either, for an extra visual solution.
HubSpot Marketing Pro or less customers
As the above Custom Events aren’t an option on lower subscription tiers we have to be creative in how we can send PayPal data to HubSpot. Below is the guide on how to send the PayPal payments to HubSpot as a note.
Create an engagement zap in Zapier
Following on from the steps above, we need to send the PayPal information through to HubSpot by creating an engagement.
Configure your note
Once this is done, all you need to do is your configure your note. We did it in the following way;
Set the engagement type to note (required)
Set the associated contact to the PayPal Payer Email
Enter a note body using the following text;
PayPal Payment Received: Amount: mc_gross Items: item_names
Mc_gross = The PayPal MC Gross field
Item_names = The PayPal Item Names field
Test & Publish
You can then test and publish the Zap. If everything is successful, you should see a note in your timeline.
A few quick caveats
A few things to note;
This is just a tiny example of what is possible to pass through with this integration.
It is also possible to set up a Timeline Integration through the HubSpot Timeline API, but that would take considerably more time and be far more technical.
Pro users could also set a custom field with another Zapier step that if they wanted, but it wouldn’t appear in your timeline.
We are limited by the information that PayPal passes through so if, whatever reason the payer details are different to the customer data you have in HubSpot then it will create a new record.
Most important point
Connecting your PayPal and HubSpot accounts can be an amazing way of sharing payment information with your CRM. It can help you close the loop on your customers’ actual value, and it’s super easy.