Dívidas de sellers
Registra o que um seller deve à loja e acompanha o abatimento automático nos saques.
Uma dívida de seller é um valor que o seller deve à loja: uma cobrança paga em duplicidade, uma devolução que a loja bancou, uma multa, ou uma antecipação. Em vez de cobrar à parte, a plataforma abate a dívida dos saques seguintes do próprio seller.
Listar dívidas
Lista as dívidas dos sellers com a loja, da mais recente para a mais antiga.
/api/v1/admin/vendor-debtsAdminLista as dívidas dos sellers
Autenticação: Authorization: Bearer <token> de um administrador com view_vendors ou manage_vendors (as escritas exigem manage_vendors). Requer o módulo vendor-debts ativo e a opção de dívidas/repasses ligada nas configurações da loja; com a opção desligada a resposta é 404.
Parâmetros de consulta
vendor_iduuidstatusstringactivependingpaidcancelledAPCIactive, pending, paid, cancelled ou a letra A, P, C, I.searchstringpageintegerpadrão: 1per_pageintegerpadrão: 20Exemplo de requisição
curl "$BASE_URL/api/v1/admin/vendor-debts?status=active" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"debts": [
{
"id": "5b1e7a2c-4f3d-4c8a-9d21-6e0f1a2b3c4d",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"amount": 50000,
"reason": "overcharge",
"description": "Cobrança duplicada em setembro",
"status": "A",
"deducted_total": 0,
"deduction_rate": 5000,
"created_by": "67bf291c-0846-4053-9528-8cfd5ab0ebf1",
"created_at": "2026-10-11T12:00:00Z",
"updated_at": "2026-10-11T12:00:00Z",
"remaining": 50000
}
],
"total": 1,
"page": 1,
"per_page": 20,
"total_pages": 1
}Campos da resposta
debtsarraydebts[].iduuiddebts[].vendor_iduuiddebts[].amountintegerdebts[].reasonstringoverchargereturnpenaltyadvanceotherovercharge, return, penalty, advance ou other.debts[].descriptionstringdebts[].statusstringAPCIA ativa, P pendente, C quitada, I cancelada.debts[].deducted_totalintegerdebts[].deduction_rateinteger10000 = 100%).debts[].created_bystringdebts[].created_atstringdebts[].updated_atstringdebts[].remainingintegeramount - deducted_total, em centavos.totalintegerpageintegerper_pageintegertotal_pagesintegerErros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token ou token inválido | {"error":"missing authorization header"} |
| 403 | Sem o privilégio exigido, ou módulo desligado | {"error":"module_disabled","module":"vendor-debts"} / {"error":"insufficient privileges","required":"manage_vendors"} |
| 404 | Opção de dívidas desligada nas configurações da loja | {"error":"vendor_debt_payout feature is not enabled","detail":"enable via admin settings"} |
| 500 | vendor_id que não é UUID ou falha na consulta | {"error":"failed to list debts","detail":"..."} |
Criar dívida
Registra um valor que o seller deve à loja (uma cobrança em duplicidade, uma devolução assumida, uma multa). A dívida nasce ativa e passa a ser abatida dos próximos saques do seller.
/api/v1/admin/vendor-debtsAdminRegistra uma dívida de um seller
Autenticação: Authorization: Bearer <token> de um administrador com view_vendors ou manage_vendors (as escritas exigem manage_vendors). Requer o módulo vendor-debts ativo e a opção de dívidas/repasses ligada nas configurações da loja; com a opção desligada a resposta é 404.
Corpo da requisição
vendor_iduuidobrigatórioamountintegerobrigatórioreasonstringpadrão: otheroverchargereturnpenaltyadvanceotherother.descriptionstringdeduction_rateintegerpadrão: 1000010000 (tudo).Exemplo de requisição
curl -X POST "$BASE_URL/api/v1/admin/vendor-debts" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"amount": 50000,
"reason": "overcharge",
"description": "Cobrança duplicada em setembro",
"deduction_rate": 5000
}'Resposta
{
"id": "5b1e7a2c-4f3d-4c8a-9d21-6e0f1a2b3c4d",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"amount": 50000,
"reason": "overcharge",
"description": "Cobrança duplicada em setembro",
"status": "A",
"deducted_total": 0,
"deduction_rate": 5000,
"created_by": "67bf291c-0846-4053-9528-8cfd5ab0ebf1",
"created_at": "2026-10-11T12:00:00Z",
"updated_at": "2026-10-11T12:00:00Z",
"remaining": 50000
}Campos da resposta
iduuidvendor_iduuidamountintegerreasonstringoverchargereturnpenaltyadvanceotherovercharge, return, penalty, advance ou other.descriptionstringstatusstringAPCIA ativa, P pendente, C quitada, I cancelada.deducted_totalintegerdeduction_rateinteger10000 = 100%).created_bystringcreated_atstringupdated_atstringremainingintegeramount - deducted_total, em centavos.Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token ou token inválido | {"error":"missing authorization header"} |
| 403 | Sem o privilégio exigido, ou módulo desligado | {"error":"module_disabled","module":"vendor-debts"} / {"error":"insufficient privileges","required":"manage_vendors"} |
| 404 | Opção de dívidas desligada nas configurações da loja | {"error":"vendor_debt_payout feature is not enabled","detail":"enable via admin settings"} |
| 400 | vendor_id vazio, amount menor ou igual a zero, reason fora da lista, deduction_rate acima de 10000, ou seller inexistente | {"error":"amount must be positive (in centavos)"} / {"error":"failed to create debt","detail":"invalid reason: x (valid: overcharge, return, penalty, advance, other)"} |
Consultar uma dívida
Devolve a dívida e a lista de descontos já aplicados a ela.
/api/v1/admin/vendor-debts/{id}AdminConsulta uma dívida e seus descontos
Autenticação: Authorization: Bearer <token> de um administrador com view_vendors ou manage_vendors (as escritas exigem manage_vendors). Requer o módulo vendor-debts ativo e a opção de dívidas/repasses ligada nas configurações da loja; com a opção desligada a resposta é 404.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição
curl "$BASE_URL/api/v1/admin/vendor-debts/d5ccd9e1-dd21-458c-90a5-4a7f3c2b9e10" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"debt": {
"id": "5b1e7a2c-4f3d-4c8a-9d21-6e0f1a2b3c4d",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"amount": 50000,
"reason": "overcharge",
"description": "Cobrança duplicada em setembro",
"status": "A",
"deducted_total": 25000,
"deduction_rate": 5000,
"created_by": "67bf291c-0846-4053-9528-8cfd5ab0ebf1",
"created_at": "2026-10-11T12:00:00Z",
"updated_at": "2026-10-11T12:00:00Z",
"remaining": 25000
},
"deductions": [
{
"id": "c0ffee00-1111-4222-8333-444455556666",
"debt_id": "5b1e7a2c-4f3d-4c8a-9d21-6e0f1a2b3c4d",
"payout_id": "a1f2c3d4-0b1c-4d2e-8f30-5a6b7c8d9e01",
"amount": 25000,
"created_at": "2026-10-12T12:00:00Z"
}
]
}Campos da resposta
debtobjectdebt.iduuiddebt.vendor_iduuiddebt.amountintegerdebt.reasonstringoverchargereturnpenaltyadvanceotherovercharge, return, penalty, advance ou other.debt.descriptionstringdebt.statusstringAPCIA ativa, P pendente, C quitada, I cancelada.debt.deducted_totalintegerdebt.deduction_rateinteger10000 = 100%).debt.created_bystringdebt.created_atstringdebt.updated_atstringdebt.remainingintegeramount - deducted_total, em centavos.deductionsarraydeductions[].iduuiddeductions[].debt_iduuiddeductions[].payout_iduuiddeductions[].amountintegerdeductions[].created_atstringErros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token ou token inválido | {"error":"missing authorization header"} |
| 403 | Sem o privilégio exigido, ou módulo desligado | {"error":"module_disabled","module":"vendor-debts"} / {"error":"insufficient privileges","required":"manage_vendors"} |
| 404 | Opção de dívidas desligada nas configurações da loja | {"error":"vendor_debt_payout feature is not enabled","detail":"enable via admin settings"} |
| 404 | Dívida inexistente | {"error":"debt not found"} |
| 500 | id que não é UUID | {"error":"failed to get debt","detail":"..."} |
Cancelar dívida
Passa a dívida para I (cancelada), sem corpo. Serve para desfazer um lançamento errado.
/api/v1/admin/vendor-debts/{id}/cancelAdminCancela uma dívida que ainda não teve desconto
Autenticação: Authorization: Bearer <token> de um administrador com view_vendors ou manage_vendors (as escritas exigem manage_vendors). Requer o módulo vendor-debts ativo e a opção de dívidas/repasses ligada nas configurações da loja; com a opção desligada a resposta é 404.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição
curl -X PATCH "$BASE_URL/api/v1/admin/vendor-debts/d5ccd9e1-dd21-458c-90a5-4a7f3c2b9e10/cancel" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"id": "5b1e7a2c-4f3d-4c8a-9d21-6e0f1a2b3c4d",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"amount": 50000,
"reason": "overcharge",
"description": "Cobrança duplicada em setembro",
"status": "I",
"deducted_total": 0,
"deduction_rate": 5000,
"created_by": "67bf291c-0846-4053-9528-8cfd5ab0ebf1",
"created_at": "2026-10-11T12:00:00Z",
"updated_at": "2026-10-11T12:00:00Z",
"remaining": 50000
}Campos da resposta
iduuidvendor_iduuidamountintegerreasonstringoverchargereturnpenaltyadvanceotherovercharge, return, penalty, advance ou other.descriptionstringstatusstringAPCIA ativa, P pendente, C quitada, I cancelada.deducted_totalintegerdeduction_rateinteger10000 = 100%).created_bystringcreated_atstringupdated_atstringremainingintegeramount - deducted_total, em centavos.Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token ou token inválido | {"error":"missing authorization header"} |
| 403 | Sem o privilégio exigido, ou módulo desligado | {"error":"module_disabled","module":"vendor-debts"} / {"error":"insufficient privileges","required":"manage_vendors"} |
| 404 | Opção de dívidas desligada nas configurações da loja | {"error":"vendor_debt_payout feature is not enabled","detail":"enable via admin settings"} |
| 400 | Dívida inexistente, já paga, já cancelada ou com desconto já aplicado | {"error":"failed to cancel debt","detail":"cannot cancel a debt with existing deductions (25000 centavos deducted)"} |