Webhook Data Structure
When your webhook receives a payment or subscription event, a JSON payload is sent.
This document explains the structure and meaning of each field.
Example Payload
{
  "event": "payment.success",
  "created_at": "2025-09-04T13:45:44-04:00",
  "request_id": "51b97ba5891ec220e8b64385a00c3826",  
  "webhook_id": "458",
  "store_id": "7541",
  "mode": "live", // live or test
  "data": {
    "id": 71134,
    "type": 1, // 1 = payment | 2 = subscription
    "transaction_id": "68B9D0471D02A",
    "gateway": "paypal", // stripe, paypal or free
    "amount": {
      "total_paid": 12,
      "currency": "EUR"
    },
    "user": {
      "email": "[email protected]",
      "username": "Murga",
      "steam_id": "76561198030562915",
      "steam_username": "Murgator",
      "discord_id": "376442921087995901",
      "discord_username": "murgator"
    },
    "basket": [
      {
        "id": 183,
        "sub_key": "762szqztj",
        "name": "Gold Sword",
        "price": 10,
        "quantity": 1,
        "custom_fields": {
          "1": {
            "field_id": 1,
            "name": "Level",
            "value": {
              "option_id": 2,
              "name": "Maximum",
              "value": "800", // value selected by the customer
              "price": 2.00
            },
            "total_price": 2,
            "type": "selection"
          }
        }
      }
    ],
    "actions": [
      {
        "server_id": "20861",
        "commands": [
          {
            "str": "give apple {minecraft_uuid} 1",
            "event": "0",
            "item_key": 0,
            "product_id": "183"
          },
          {
            "str": "give hook{minecraft_uuid} 1",
            "event": "0",
            "item_key": 0,
            "product_id": "185"
          }
        ]
      },
      {
        "server_id": "20859",
        "commands": [
          {
            "str": "give apple {minecraft_uuid} 1",
            "event": "0",
            "item_key": 0,
            "product_id": "183"
          },
          {
            "str": "give hook{minecraft_uuid} 1",
            "event": "0",
            "item_key": 0,
            "product_id": "185"
          }
        ]
      }
    ],
  }
}🧾Main Fields
event
string
payment.success, payment.refused, payment.refunded, subscription.created, subscription.renewed, subscription.expired
Event name
created_at
string (ISO 8601)
2025-09-04T13:45:44-04:00
Date and time of the event
request_id
string
51b97ba5891ec220e8b64385a00c3826
Unique webhook ID (useful for logs/debug)
webhook_id
int
458
Webhook ID
store_id
int
7541
Your shop ID
data
object
{...}
Event-related data
mode
string
test, live
Payment mode
💳 Data Object
Data Objectid
int
71134
Internal payment ID or subscription ID
transaction_id
string
68B9D0471D02A
Transaction ID
gateway
string
free, paypal, stripe
Payment gateway used or free order
amount
object
{ "total_paid": 12, "currency": "EUR" }
Paid amount and currency
user
object
{...}
User information (multi-game + Discord/Steam/etc.)
basket
array
[ {...} ]
Purchased products
actions
object
{...}
Commands related to the payment (Discord, server, etc.)
type
int
1, 2
1 = payment, 2 = subscription
👤 user Object
user ObjectContains identifiers of the user, which may vary depending on the configuration:
- email→ User email
- username→ Display name
- steam_id,- steam_username→ Steam identity
- minecraft_username,- minecraft_uuid→ Minecraft identity
- eosid→ ARK:SA ID
- fivem_citizen_id→ FiveM identifier
- discord_id,- discord_username→ Discord identity
⚠️ Some fields may be missing if the user has not linked that service.
🛒 basket Object
basket ObjectEach purchased product is listed here:
id
183
Product ID
sub_key
762szqztj
Tip4Serv product key
name
VIP Rank
Product name
price
10.00
Unit price
quantity
1
Quantity purchased
custom_fields
{...}
Custom fields associated with the product
⚙️ commands Object
commands ObjectThe commands object contains all servers (API type only) and actions configured by the seller in the product editor.
For each server you will find one or more groups of commands which depends on what you have configured in the products ordered by the customer.
str
give {steam_id} apple 1
The actual command string to execute.
event
0 or 1  
Option selected by the seller in the product editor: 0 → Always execute 1 → Execute only if the player is online
product_id
183
The Tip4Serv product ID linked to this command.
item_key
0, 1, 2...
Index of the item in the buyer’s basket.
0 = first product, 1 = second product...
server_id
XXXXXX
Server ID on which these commands should be executed
Last updated
