A valid request URL is required to generate request examples{
"id": "store-rivoli:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"storeId": "store-rivoli",
"skuId": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"countClass": "A",
"version": 2
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}Complete a count task
Marks a due task counted: resets the SKU’s last-counted anchor to now (a full cadence reset), so the next count falls a whole cadence period out. The class + anchor are resolved from the stored policy — only storeId (+ optional expectedVersion) travel. expectedVersion may be omitted here (unlike the policy write): the server writes only fields it derived from the policy it just loaded, so it falls back to that fresh version. Send it when you did read the policy and want a stale edit to 409. 404s when no policy exists for the SKU in that store.
A valid request URL is required to generate request examples{
"id": "store-rivoli:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"storeId": "store-rivoli",
"skuId": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"countClass": "A",
"version": 2
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}Authorizations
Authorization: Bearer <token>. Accepts EITHER a Keycloak access token (scopes-in-token) OR an opaque POS session token; both resolve to the same pos.* scope vocabulary the route guards enforce.
Path Parameters
SKU digest (64-hex) of the count task to dispose.
1Body
Response
The re-anchored policy identity (version bumped).
The re-anchored policy identity (version bumped).

