Update Affiliate Sale
Updates an existing affiliate sale that was created via the Public API (website platform). Only sales created through POST /affiliate_sales can be updated. Commission is automatically recalculated if total is updated without specifying commission.
POST /affiliate_sales) can be updated with this endpoint. Sales from other platforms (e.g., Shopify) cannot be modified via this API.
Important Behavior
- Commission recalculation: If you update
totalwithout providingcommission, the commission will be automatically recalculated based on campaign rules. - Audit logging: Every successful update is recorded in an internal audit log for support and debugging purposes.
- Cancelled sales: Sales with status
cancelledcannot be updated.
Path Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
id | Integer | ID of the affiliate sale to update | Yes |
Request Body
All fields are optional. Only include the fields you want to update.| Field | Type | Description |
|---|---|---|
total | Integer | Total amount in cents. If provided without commission, commission is recalculated. |
subtotal | Integer | Subtotal in cents. |
currency | String | Currency code (e.g., usd, eur, gbp). |
occurred_at | String | When the sale occurred (ISO 8601 string or Unix timestamp). |
due_at | String | When the commission becomes due (ISO 8601 string or Unix timestamp). |
customer_email | String | Customer’s email address. Pass null to clear. |
customer_name | String | Customer’s name. Pass null to clear. |
commission | Integer | Commission amount in cents. Omit to auto-recalculate when total is updated. |
status | String | Sale status: unpaid, paid, paid_externally, or cancelled. |
Request Example
Update the total and let commission recalculate:Response Example
200 OK - Sale updated successfully:Response Fields
| Field | Type | Description |
|---|---|---|
data | Object | The updated affiliate sale object |
data.id | Integer | Unique Growi identifier for the sale |
data.external_id | String | Your order ID |
data.platform | String | Always website for sales updated via this endpoint |
data.status | String | Current status: unpaid, paid, paid_externally, cancelled, or refunded |
data.occurred_at | String | ISO 8601 timestamp when the sale occurred |
data.total | Integer | Total order amount in cents |
data.commission | Integer | Commission amount in cents |
data.currency | String | Currency code |
Error Responses
404 Not Found - Sale does not exist or does not belong to your organization:Use Cases
This endpoint is useful for:- Order Adjustments: Update the total when an order is modified (e.g., partial refund, add-ons)
- Commission Corrections: Override the commission for special cases or promotions
- Status Management: Mark sales as paid or cancelled
- Data Corrections: Fix customer information or sale dates
- Sync with External Systems: Keep Growi in sync when orders are modified in your system
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
ID of the affiliate sale to update
Body
Total amount in cents. If provided without commission, commission is recalculated automatically.
Subtotal in cents
Currency code
usd, eur, gbp When the sale occurred (ISO 8601 string or Unix timestamp)
When the commission becomes due (ISO 8601 string or Unix timestamp)
Customer email address
Customer name
Commission amount in cents. Omit to auto-recalculate when total is updated.
Sale status
unpaid, paid, paid_externally, cancelled Response
Affiliate sale updated successfully