Endpoints交易

提交会话已完成的资金流转交易

为某个 k-ID 会话提交一笔或多笔已完成的购买。每个事件记录买了什么、花费多少,以及扣款是否成功。请在购买完成后调用本接口;对于周期性购买,每次续订都需提交。 对于已尝试但未完成的扣款,请将 `status` 设为 `failed`,以便家长区分两者。 各事件独立处理。响应中包含每个事件的状态: * `accepted` - 购买已记录。重复提交 `id` 已被接受的事件是安全的空操作:它会再次计为 `accepted`,不会被重复记录,因此网络故障后的重试不会重复累计。 * `rejected` - 购买未通过校验;`reason` 指明违反了哪条规则。 若会话不存在或已被撤销,则整批请求被拒绝。

POST
/transaction/push
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/transaction/push" \  -H "Content-Type: application/json" \  -d '{    "sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",    "events": [      {        "id": "9d4e2f81-7a3b-4c56-8e90-1f2a3b4c5d6e",        "type": "purchase",        "title": "Starter Pack",        "description": "500 coins and a cosmetic item",        "amount": 499,        "currency": "USD",        "timestamp": "2026-06-24T09:00:00Z",        "status": "successful",        "url": "https://your-webstore.example.com/manage?ref=order-4455667"      }    ]  }'
{  "sessionId": "b1a6482d-5242-4b4a-aa88-3fa52595a672",  "accepted": 1,  "rejected": 0,  "events": [    {      "id": "9d4e2f81-7a3b-4c56-8e90-1f2a3b4c5d6e",      "status": "accepted"    }  ]}