Skip to main content

Overview

The order.created webhook is triggered when a new order is created in your Metrifox account. Orders represent purchases of plans, add-ons, or single purchases by customers.

When It’s Triggered

This event is sent immediately after an order is successfully created, which can happen when:
  • A customer purchases a plan through checkout
  • A subscription is created
  • An add-on is purchased
  • A single purchase item is bought
  • An order is created through the API

Payload Structure

{
  "id": "550e8400-e29b-41d4-a716-446655440003",
  "type": "order.created",
  "created_at": 1704067380000,
  "data": {
    "order": {
      "id": "789",
      "order_number": "ORD-2024-001",
      "customer_id": "123",
      "customer_key": "cust_abc123",
      "tenant_id": "456",
      "status": "pending",
      "total_amount": 99.99,
      "currency": "USD",
      "items": [
        {
          "type": "subscription",
          "plan_id": "plan_123",
          "quantity": 1
        }
      ],
      "created_at": "2024-01-01T00:03:00Z",
      "updated_at": "2024-01-01T00:03:00Z"
      // ... other order fields
    }
  }
}

Data Fields

The data.order object contains the complete order record, including:
  • id: Internal order ID
  • order_number: Human-readable order number
  • customer_id: ID of the customer who placed the order
  • customer_key: Customer key for the order
  • tenant_id: The tenant ID this order belongs to
  • status: Order status (e.g., “pending”, “completed”, “cancelled”)
  • total_amount: Total order amount
  • currency: Currency code (e.g., “USD”, “NGN”)
  • items: Array of order items (plans, add-ons, single purchases)
  • created_at: Timestamp when the order was created
  • updated_at: Timestamp when the order was last updated
  • Additional order-specific fields

Example Use Cases

  • Send order confirmation emails
  • Sync orders to your order management system
  • Trigger fulfillment workflows
  • Update inventory systems
  • Track sales analytics