Dependências da forma de pagamento
Lista, cria e remove as condições do carrinho que fazem uma forma de pagamento aparecer ou sumir no checkout.
Uma dependência amarra a forma a uma condição do carrinho. Com require, a forma só aparece se a condição for verdadeira; com exclude, ela some quando for. Exemplo: oferecer boleto faturado apenas quando houver ao menos 3 itens (min_items = 3).
Listar dependências
/api/v1/admin/payment-methods/{id}/dependenciesAdminLista as dependências
Parâmetros de caminho
iduuidobrigatórioId da forma.
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/payment-methods/08fd91cd-ce15-4b28-9482-db37b8778b36/dependencies" \
-H "Authorization: Bearer $TOKEN"Resposta
200Dependências
json
{
"dependencies": [
{
"id": "4f5a6b7c-8d9e-4f01-a2b3-c4d5e6f70809",
"payment_method_id": "08fd91cd-ce15-4b28-9482-db37b8778b36",
"depends_on_type": "min_items",
"depends_on_id": "3",
"condition": "require",
"created_at": "2026-10-11T12:00:00Z"
}
],
"total": 1
}Campos da resposta
totalintegerQuantidade.
dependenciesarrayDependências. Sem nenhuma,
null.iduuidId da dependência.
payment_method_iduuidForma de pagamento.
depends_on_typestringshipping_methodusergroupmin_itemscountryTipo da condição.
depends_on_idstringValor da condição: id da forma de envio, id do grupo, número de itens ou código do país.
conditionstringrequireexcluderequire ou exclude.created_atstringCriação.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem manage_payments nem view_payments. | {"error":"insufficient privileges","privilege_required_any":["manage_payments","view_payments"]} |
Criar uma dependência
/api/v1/admin/payment-methods/{id}/dependenciesAdminCria uma dependência
Parâmetros de caminho
iduuidobrigatórioId da forma.
Corpo da requisição
depends_on_typestringobrigatórioshipping_methodusergroupmin_itemscountryTipo da condição.
depends_on_idstringobrigatórioValor da condição. Para
min_items, inteiro positivo.conditionstringpadrão: requirerequireexcluderequire (padrão) ou exclude.Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/payment-methods/08fd91cd-ce15-4b28-9482-db37b8778b36/dependencies" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"depends_on_type": "min_items",
"depends_on_id": "3",
"condition": "require"
}'Resposta
201Dependência criada
json
{
"id": "4f5a6b7c-8d9e-4f01-a2b3-c4d5e6f70809",
"payment_method_id": "08fd91cd-ce15-4b28-9482-db37b8778b36",
"depends_on_type": "min_items",
"depends_on_id": "3",
"condition": "require",
"created_at": "2026-10-11T12:00:00Z"
}Campos da resposta
iduuidId da dependência.
payment_method_iduuidForma de pagamento.
depends_on_typestringshipping_methodusergroupmin_itemscountryTipo da condição.
depends_on_idstringValor da condição: id da forma de envio, id do grupo, número de itens ou código do país.
conditionstringrequireexcluderequire ou exclude.created_atstringCriação.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Campo ausente, tipo ou condição inválidos, ou min_items não numérico. | {"error":"failed to create dependency","detail":"invalid depends_on_type \"x\": must be one of shipping_method, usergroup, min_items, country"} |
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem o privilégio manage_payments (leitura aceita view_payments). | {"error":"insufficient privileges","required":"manage_payments"} |
Remover uma dependência
/api/v1/admin/payment-methods/{id}/dependencies/{depId}AdminRemove uma dependência
Parâmetros de caminho
iduuidobrigatórioId da forma.
depIduuidobrigatórioId da dependência.
Exemplo de requisição
bash
curl -X DELETE "$BASE_URL/api/v1/admin/payment-methods/08fd91cd-ce15-4b28-9482-db37b8778b36/dependencies/4f5a6b7c-8d9e-4f01-a2b3-c4d5e6f70809" \
-H "Authorization: Bearer $TOKEN"Resposta
200Removida
json
{
"message": "dependency deleted"
}Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token ou token inválido. | {"error":"missing authorization header"} |
| 403 | O usuário não tem o privilégio manage_payments (leitura aceita view_payments). | {"error":"insufficient privileges","required":"manage_payments"} |
| 500 | Falha ao remover. | {"error":"failed to delete dependency","detail":"..."} |