Operation details
GET /v1/admin/account/order-users
Search active users for order entry
- operationId
listAccountOrderUsers- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
The contract has no separate permission annotation; see the description below and the 403 response.
Description (from the contract)
Platform administrators only (billing.adjustments.manage); searches active tenant users for order entry.
Parameters
listAccountOrderUsers Parameters| Name | In | Type | Required | Description |
|---|
search | query | string | No | — |
|---|
limit | query | integer | No | — |
|---|
Responses
listAccountOrderUsers Responses| Status | Description |
|---|
200 | Matching active users Fields:items: array<AccountOrderUser> |
|---|
400 | Invalid request fields |
|---|
401 | Authentication is required |
|---|
403 | Required permission is absent |
|---|
503 | Account order service unavailable |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.503 A dependency is unavailable: retry later with the original Idempotency-Key.
↑ Back to list
POST /v1/admin/account/orders
Enter an audited compatibility order record
- operationId
createAccountOrder- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
The contract has no separate permission annotation; see the description below and the 403 response.
Description (from the contract)
Platform administrators only (live platform session with billing.adjustments.manage); tenants have no order-record write API (r136 tp-b5b). This does not mutate package, recharge, payment, or balance-ledger facts.
Parameters
createAccountOrder Parameters| Name | In | Type | Required | Description |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
Request body
application/json · Required:Yes
createAccountOrder Request body| Name | Type | Required | Description |
|---|
user_id | string(uuid) | Yes | — |
|---|
type | string: recharge / deduction / upgrade / purchase / renewal / package_change | Yes | — |
|---|
note | string | Yes | — |
|---|
original_amount_minor | integer | Yes | — |
|---|
paid_amount_minor | integer | Yes | — |
|---|
payment_method | string | Yes | — |
|---|
merchant_order_number | string | Yes | — |
|---|
transaction_number | string | Yes | — |
|---|
status | string: paid / unpaid | Yes | — |
|---|
created_at | string(date-time) | Yes | — |
|---|
paid_at | string(date-time) | null | Yes | — |
|---|
Responses
createAccountOrder Responses| Status | Description |
|---|
201 | Created record Fields:id: string(uuid) display_id: string tenant_scope_id: string(uuid) tenant_id: string(uuid) user_id: string(uuid) user_display_id: string username: string user_display_name: string source: string: manual / package / recharge type: string: recharge / deduction / upgrade / purchase / renewal / package_change note: string original_amount_minor: integer paid_amount_minor: integer details: string payment_method: string merchant_order_number: string transaction_number: string status: string: paid / unpaid created_at: string(date-time) paid_at?: string(date-time) revision: integer editable: boolean |
|---|
400 | Invalid request fields |
|---|
401 | Authentication is required |
|---|
403 | Required permission is absent |
|---|
409 | Revision or idempotency conflict |
|---|
415 | Content-Type must be application/json |
|---|
503 | Account order service unavailable |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.503 A dependency is unavailable: retry later with the original Idempotency-Key.
↑ Back to list
PATCH /v1/admin/account/orders/{id}
Edit an audited compatibility order record
- operationId
updateAccountOrder- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
The contract has no separate permission annotation; see the description below and the 403 response.
Description (from the contract)
Platform administrators only (billing.adjustments.manage). Only records whose source is manual are editable. Package and recharge facts remain immutable.
Parameters
updateAccountOrder Parameters| Name | In | Type | Required | Description |
|---|
id | path | string(uuid) | Yes | — |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
If-Match | header | string | Yes | — |
|---|
Request body
application/json · Required:Yes
updateAccountOrder Request body| Name | Type | Required | Description |
|---|
user_id | string(uuid) | Yes | — |
|---|
type | string: recharge / deduction / upgrade / purchase / renewal / package_change | Yes | — |
|---|
note | string | Yes | — |
|---|
original_amount_minor | integer | Yes | — |
|---|
paid_amount_minor | integer | Yes | — |
|---|
payment_method | string | Yes | — |
|---|
merchant_order_number | string | Yes | — |
|---|
transaction_number | string | Yes | — |
|---|
status | string: paid / unpaid | Yes | — |
|---|
created_at | string(date-time) | Yes | — |
|---|
paid_at | string(date-time) | null | Yes | — |
|---|
Responses
updateAccountOrder Responses| Status | Description |
|---|
200 | Updated record Fields:id: string(uuid) display_id: string tenant_scope_id: string(uuid) tenant_id: string(uuid) user_id: string(uuid) user_display_id: string username: string user_display_name: string source: string: manual / package / recharge type: string: recharge / deduction / upgrade / purchase / renewal / package_change note: string original_amount_minor: integer paid_amount_minor: integer details: string payment_method: string merchant_order_number: string transaction_number: string status: string: paid / unpaid created_at: string(date-time) paid_at?: string(date-time) revision: integer editable: boolean |
|---|
400 | Invalid request fields |
|---|
401 | Authentication is required |
|---|
403 | Required permission is absent |
|---|
404 | Record not found |
|---|
409 | Revision or idempotency conflict |
|---|
415 | Content-Type must be application/json |
|---|
503 | Account order service unavailable |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.404 The resource does not exist or belongs to another tenant.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.503 A dependency is unavailable: retry later with the original Idempotency-Key.
↑ Back to list
DELETE /v1/admin/account/orders/{id}
Archive an audited compatibility order record
- operationId
deleteAccountOrder- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
The contract has no separate permission annotation; see the description below and the 403 response.
Description (from the contract)
Archives the editable head while retaining its append-only event, receipt, and audit facts.
Parameters
deleteAccountOrder Parameters| Name | In | Type | Required | Description |
|---|
id | path | string(uuid) | Yes | — |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
If-Match | header | string | Yes | — |
|---|
Responses
deleteAccountOrder Responses| Status | Description |
|---|
200 | Archived record Fields:id: string(uuid) display_id: string tenant_scope_id: string(uuid) tenant_id: string(uuid) user_id: string(uuid) user_display_id: string username: string user_display_name: string source: string: manual / package / recharge type: string: recharge / deduction / upgrade / purchase / renewal / package_change note: string original_amount_minor: integer paid_amount_minor: integer details: string payment_method: string merchant_order_number: string transaction_number: string status: string: paid / unpaid created_at: string(date-time) paid_at?: string(date-time) revision: integer editable: boolean |
|---|
400 | Invalid request fields |
|---|
401 | Authentication is required |
|---|
403 | Required permission is absent |
|---|
404 | Record not found |
|---|
409 | Revision or idempotency conflict |
|---|
503 | Account order service unavailable |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.404 The resource does not exist or belongs to another tenant.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.503 A dependency is unavailable: retry later with the original Idempotency-Key.
↑ Back to list