Skip to main content
POST
/
api
/
canary
/
products
Defines a product in the merchant’s catalog (e.g., “Airtime,” “Data”).

Request Body

name
string
required
The product name
description
string
A description of the product
amount
number
required
The product price in the specified currency
currency
string
required
The currency code (e.g., “ZAR”)
active
boolean
Whether the product is active (default: true)
metadata
object
Custom metadata for the product (e.g., category, provider)

Response

Product Created
id
string
Unique identifier for the product
merchantId
string
The merchant’s unique identifier
name
string
The product name
description
string
Product description
amount
number
Product price
currency
string
Currency code
active
boolean
Whether the product is active
metadata
object
Custom metadata
createdAt
string
ISO 8601 timestamp when the product was created
updatedAt
string
ISO 8601 timestamp when the product was last updated

Example Request

{
  "name": "Airtime",
  "description": "Mobile phone airtime",
  "amount": 5000,
  "currency": "ZAR",
  "active": true,
  "metadata": {
    "category": "telecom",
    "provider": "vodacom"
  }
}

Example Response

{
  "id": "product_001",
  "merchantId": "merchant_456",
  "name": "Airtime",
  "description": "Mobile phone airtime",
  "amount": 5000,
  "currency": "ZAR",
  "active": true,
  "metadata": {
    "category": "telecom",
    "provider": "vodacom"
  },
  "createdAt": "2025-01-15T10:30:00.000Z",
  "updatedAt": "2025-01-15T10:30:00.000Z"
}

Error Responses

Bad Request
Invalid request body
Unauthorized
Invalid or missing authentication token
Internal Server Error
An unexpected error occurred on the server

Authentication

This endpoint requires Bearer token authentication.