Freshpaint
Search…
⌃K
Links

Stripe

Send data from Stripe to your destinations through Freshpaint

What you'll need

How this works

With the Stripe source, Freshpaint can sync the data from your Stripe objects into Freshpaint's SQL Engine. All of this data will be made available as SQL tables.
With that data, you can:
  • Send to your destinations on a schedule with our Scheduled Events, keeping them in sync with Stripe
  • Send data as properties of your tracked events with SQL Transformations
  • Query the data with our SQL Editor to see what you have and test that your source is working
  • Combine your Stripe data with that of any other source

Connect to Stripe

To connect, you'll need to choose the Stripe source in Freshpaint.
You'll need to provide your account id and your secret key to authenticate with Stripe. You'll also need to provide an ISO timestamp. For example, midnight on December 20 of 2022 would look like this: 2022-12-20T00:00:00Z. The T and the Z are important, and must not be omitted.
Freshpaint will sync all data on or after the timestamp you provide. If you want to send us all of your data, you can provide a timestamp in the past before you started using Stripe.
Choose the objects you'll want to provide to Freshpaint. These will appear as tables in the SQL Editor.
When you're finished, your configuration page will look something like this the following.

Working with Stripe data

Freshpaint can work with any of the objects available in your Stripe account. Here's just a few of the popular objects we can work with:
Table
Description
Balance
Your balance available with Stripe
A list of transactions that add to or take from your balance at Stripe
Charges
The set of charges you've made against credit or debit cards with your Stripe account
Customers
All of the customers that are recognized for your Stripe account
Disputes
The set of disputes made for charges that originated with your Stripe account
Events
A list of events that have happened in your account. For example, each dispute, charge, and refund will have events in this table that relate to actions that occur with them.
Products
The products that can be purchased through your Stripe account
Refunds
All of the refunds issues by your Stripe account
For the full list of objects you can sync with Stripe, check out their API documentation.

Use Cases

Sending raw data to destinations

Let's say you want to connect your customer data to Freshpaint and send them to Mixpanel. With Freshpaint, you could do a query like this:
SELECT
*,
id AS insert_id,
email AS user_id,
created AS time
FROM
stripe_customers
This query will identify the customer by their id and their email address. It's important that you include those fields, named the way they are, because we'll need that to help Mixpanel make sense of the event. All of your other charge information would be sent to Mixpanel for you to analyze because you selected *.

Calculating lifetime value

You can also use Freshpaint's SQL Engine to find aggregate information. Let's say you were interested in how much revenue you've had in charges over the past twelve months. You can write a query like this:
SELECT
EXTRACT(YEAR_MONTH FROM FROM_UNIXTIME(created)) AS year_and_month,
SUM(amount) AS ltv
FROM
stripe_charges
WHERE
FROM_UNIXTIME(created) > DATE_SUB(NOW(), INTERVAL 12 MONTH)
GROUP BY EXTRACT(YEAR_MONTH FROM FROM_UNIXTIME(created))
You can use this query either see the data in our editor, or you can send this data to another destination (with one event per month).

Notes

  • Stripe may include sensitive data that you don't want to expose to your analytics tools. In those cases, it's a good idea not to use * in your select queries, and instead to list out the columns you want to find. The SQL Editor can show you which columns are available.
Last modified 1mo ago