Charge event via the server-side Track API.Purchase, OrderCompleted, or Refund events for revenue accounting.Charge event ensures:ChargeCharge event must be fired:Charge on:{
"track": [
{
"name": "Charge",
"payload": [
{
"eventId": "uuid-generated-event-id",
"userId": "user@example.com",
"data": {
"amount": 271.28,
"status": "succeeded"
}
}
]
}
]
}| Field | Description |
|---|---|
| eventId | A unique random identifier (UUID recommended) |
| userId | User identifier (email or profileId) |
| amount | Total charged amount |
| status | Must be "succeeded" |
amount must represent the actual charged amount.eventId must be unique to prevent duplication.Charge event.{
"track": [
{
"name": "Charge",
"payload": [
{
"eventId": "uuid-generated-event-id",
"userId": "user@example.com",
"data": {
"amount_refunded": 11.0,
"status": "succeeded"
}
}
]
}
]
}| Field | Description |
|---|---|
| amount_refunded | The refunded amount |
| status | Must be "succeeded" |
Refund event.Charge lifecycle.amount → positive revenueamount_refunded → negative revenueCharge event must:eventIduserId or profileId for identityPOST /{orgName}/projects/{projectName}/sources/{sourceId}/track?apiKey=YOUR_API_KEYuserId (recommended if email-based system)profileId from SDKwoocommerce_payment_completeCharge with:amount = order total
status = "succeeded"woocommerce_order_refundedCharge with:amount_refunded = refunded value
status = "succeeded"eventIdPurchase instead of ChargeRefund eventeventIdChargeamountamount_refunded