---
title: "Stripe attribution: payments credited to campaigns"
description: "How Slipky credits Stripe payments to campaigns by spend, and where the limits are, including that sending purchases back to Meta and TikTok is not ready yet."
image: "https://slipky.com/og-image.png"
---

# Stripe payments credited to the campaign that spent the most for that product.

A simple, stated rule, and no pretending where the data is missing.

[Talk to the founder on WhatsApp](https://wa.me/5548992091242?text=Hi!%20I%20saw%20Slipky%20%28slipky.com%29%20and%20I%20would%20like%20to%20talk%20about%20early%20access.%20I%20came%20from%3A%20attribution)

## The flow

1. You create a product in Slipky and register its Stripe webhook. Slipky checks the webhook signature with a secret stored for that product.
2. A completed checkout or a paid invoice becomes an event with amount, currency and customer email.
3. Slipky looks at the product's campaigns and credits the payment to the one with the highest total spend inside the attribution window. The window is 7 days unless you set another.
4. Every 15 minutes the worker tries to send attributed events for Meta and TikTok campaigns to that platform as a Purchase event. This step is not ready to rely on, see the limits below.
5. Each attempt is recorded as delivered, failed (retried on the next run) or not supported.

## What the rule is and is not

The rule credits the campaign with the most spend, not the campaign that provably produced the click. Use it as a consistent bookkeeping rule across platforms, and read the numbers with that in mind.

## Delivery states

- **Delivered:** the platform confirmed it received the event. For Meta, a response that accepted zero events counts as a failure.
- **Failed:** the call did not succeed. It is retried on the next 15-minute run.
- **Not supported:** nothing could be uploaded for this event, for example a Google campaign without a click id. It is never shown as delivered.

## Current limits

- Meta and TikTok sending has not yet run successfully against any ad account. It also uses the ad account id where those platforms expect a pixel or dataset id, so expect rejections until a pixel id setting exists.
- Google receives nothing, because click ids are not captured.
- Slipky does not capture click ids from your site, so matching on the platform side relies on the hashed email.

## Questions

**Is this click-level attribution?**

No. Slipky does not capture click ids or visitor sessions. It credits a payment to a campaign by spend, using a stated rule.

**What if no campaign spent money in the window?**

The payment is recorded as unattributed and nothing is sent to a platform.

**What would be sent to Meta and TikTok?**

When that step works, a Purchase event with the payment value, its real currency and the event time, plus the customer email as a SHA-256 hash after trimming and lower-casing. The raw address is not sent.
