Endpoint
Authentication
Requires API key authentication.Request body
| Field | Type | Required | Description |
|---|---|---|---|
provider | string | Yes | Payment provider (e.g., “stripe”, “lemonsqueezy”, “custom”) |
providerPaymentId | string | Yes | Payment ID from the provider |
amount | number | Yes | Payment amount (in dollars, e.g., 99.99) |
currency | string | No | Currency code (defaults to “USD”) |
customerEmail | string | No | Customer email address |
customerId | string | No | Customer ID from provider |
visitorId | string | No | Visitor ID (for linking) |
sessionId | string | No | Session ID (for linking) |
metadata | object | No | Additional metadata |
Request example
Response
Success response (200)
Error responses
Missing required fields (400)
Unauthorized (401)
Linking payments to visitors
Payments are automatically linked to visitors using:- Visitor/Session IDs (most reliable) - Include
visitorIdandsessionIdin the request - Email matching - If user identification is enabled, payments are linked via
customerEmail - Timestamp correlation - Fallback method using payment timestamp
Use cases
- Custom payment providers - Record payments from providers not supported by webhooks
- Manual payment entry - Record payments manually
- Payment reconciliation - Sync payments from external systems
- Testing - Test revenue attribution
Examples
Stripe payment
Custom provider
Next steps
Revenue attribution guide
Learn more about revenue attribution