Appearance
Create Manual Order
Record a manual/offline order: issues a license for the product and logs a completed payment against it. This does not charge anyone — it records money you already collected elsewhere (bank transfer, marketplace, etc.).
POST /v1/products/:id/ordersRequest Body
json
{
"customerEmail": "[email protected]",
"customerName": "John Doe",
"amount": 49,
"currency": "USD",
"seats": 1,
"sendEmail": true
}| Field | Required | Type | Description |
|---|---|---|---|
customerEmail | Yes | string | Buyer email |
customerName | No | string | Buyer name |
planId | No | string | Plan to attribute (default: manual) |
amount | No | number | Amount collected (default: 0) |
currency | No | string | ISO currency code (default: USD) |
seats | No | number | License activation seats (default: 1) |
sendEmail | No | boolean | Email the license key to the customer (default: false) |
Response
json
{
"data": {
"id": "pay_xxx",
"licenseId": "lic_xxx",
"licenseKey": "MYPLUGIN-XXXX-XXXX-XXXX-XXXX"
}
}Example
bash
curl -X POST "https://api.packedge.dev/v1/products/prd_xxx/orders" \
-H "Authorization: Bearer pk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"customerEmail": "[email protected]",
"amount": 49,
"sendEmail": true
}'Notes
- The payment is recorded with
status: "completed"andpaymentMethod: "manual" - Free-tier license caps apply — the endpoint returns
402when the product's plan disallows more licenses
