MENU navbar-image

Introduction

API multi-tenant do Valuor ERP.

Contextos de uso

Admin Central (backend.valuor.com.br/api/) — Rotas exclusivas do super_admin para gestão de tenants, planos, assinaturas, faturamento e configurações do sistema.

Tenant ({empresa}.valuor.com.br/api/) — Rotas do ERP acessadas pelos usuários de cada empresa. Requerem que o banco de dados do tenant esteja provisionado.

Central — Público — Registro de novas empresas, listagem de planos e download de APKs. Acessíveis sem autenticação.

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

This API is not authenticated.

Central — Cadastro

POST api/register

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/register" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"company_name\": \"gbrc\",
    \"subdomain\": \"cykmc\",
    \"admin_name\": \"pepvdaooniwy\",
    \"admin_email\": \"[email protected]\",
    \"admin_password\": \"myaulpoyzpwdaurdva\",
    \"plan_slug\": \"consequatur\",
    \"billing_cycle\": \"quarterly\",
    \"payment_method\": \"pix\",
    \"coupon_code\": \"xbtpoqhtqfjxus\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/register"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "company_name": "gbrc",
    "subdomain": "cykmc",
    "admin_name": "pepvdaooniwy",
    "admin_email": "[email protected]",
    "admin_password": "myaulpoyzpwdaurdva",
    "plan_slug": "consequatur",
    "billing_cycle": "quarterly",
    "payment_method": "pix",
    "coupon_code": "xbtpoqhtqfjxus"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (422):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Dados inválidos.",
    "errors": {
        "plan_slug": [
            "validation.exists"
        ]
    }
}
 

Request      

POST api/register

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

company_name   string   

validation.max. Example: gbrc

subdomain   string   

Must match the regex /^[a-z0-9-]+$/. validation.max. Example: cykmc

admin_name   string   

validation.max. Example: pepvdaooniwy

admin_email   string   

validation.email validation.max. Example: [email protected]

admin_password   string   

validation.min. Example: myaulpoyzpwdaurdva

plan_slug   string   

The slug of an existing record in the planos table. Example: consequatur

billing_cycle   string  optional  

Example: quarterly

Must be one of:
  • monthly
  • quarterly
  • annual
payment_method   string   

Example: pix

Must be one of:
  • stripe
  • pix
  • boleto
coupon_code   string  optional  

validation.max. Example: xbtpoqhtqfjxus

Central — Planos

GET api/plans/{slug}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/plans/aspernatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plans/aspernatur"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (422):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Usuário sem empresa vinculada."
}
 

Request      

GET api/plans/{slug}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

slug   string   

The slug of the plan. Example: aspernatur

Central — Aplicativo

Retorna a versão mais recente de um app para o cliente checar atualização.

Endpoint público — sem autenticação.

GET /api/auth/app/versao?app=mobile|pdv|consumidor

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auth/app/versao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/app/versao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "version_name": "1.0.0",
    "version_code": 68,
    "apk_url": "https://backend.valuor.com.br/api/app/download/34",
    "mandatory": false,
    "sha256": "0eef01abccabdd769a872fc508f515a0d8793b4a2cc4ea221a7c5f1fa13d66e5",
    "changelog": null
}
 

Request      

GET api/auth/app/versao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Faz download do APK. Se for URL externa, redireciona; caso contrário, serve o arquivo local.

Rota pública: GET /api/app/download/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/app/download/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/app/download/34"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
content-type: application/vnd.android.package-archive
content-disposition: attachment; filename="mobile-1.0.0-68.apk"
cache-control: no-store, private
vary: Origin
 


 

Request      

GET api/app/download/{appRelease_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

appRelease_id   integer   

The ID of the appRelease. Example: 34

Lista todos os releases. Exclusivo super_admin.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/app-releases" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/app-releases"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/app-releases

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Cria um novo release. Aceita upload de arquivo OU URL externa.

Multipart: app_type, version_name, version_code, mandatory, changelog, apk (file) | apk_url (texto)

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/app-releases" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "app_type=mobile"\
    --form "version_name=pedvhenv"\
    --form "version_code=73"\
    --form "mandatory="\
    --form "changelog=yl"\
    --form "sha256=badhitwbaeyigusaympycudygieeqimhwrkybkbkyqulgtmkrurdhwvanzcmtffx"\
    --form "apk_url=https://www.hettinger.net/doloremque-voluptas-corrupti-nihil-aut-asperiores-est-fugiat"\
    --form "apk=@/tmp/phpjnEelj" 
const url = new URL(
    "https://backend.valuor.com.br/api/admin/app-releases"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('app_type', 'mobile');
body.append('version_name', 'pedvhenv');
body.append('version_code', '73');
body.append('mandatory', '');
body.append('changelog', 'yl');
body.append('sha256', 'badhitwbaeyigusaympycudygieeqimhwrkybkbkyqulgtmkrurdhwvanzcmtffx');
body.append('apk_url', 'https://www.hettinger.net/doloremque-voluptas-corrupti-nihil-aut-asperiores-est-fugiat');
body.append('apk', document.querySelector('input[name="apk"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/app-releases

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

app_type   string   

Example: mobile

Must be one of:
  • mobile
  • pdv
  • consumidor
version_name   string   

validation.max. Example: pedvhenv

version_code   integer   

validation.min. Example: 73

mandatory   boolean  optional  

Example: false

changelog   string  optional  

validation.max. Example: yl

sha256   string  optional  

validation.size. Example: badhitwbaeyigusaympycudygieeqimhwrkybkbkyqulgtmkrurdhwvanzcmtffx

apk   file  optional  

Must be a file. validation.max. Example: /tmp/phpjnEelj

apk_url   string  optional  

Must be a valid URL. validation.max. Example: https://www.hettinger.net/doloremque-voluptas-corrupti-nihil-aut-asperiores-est-fugiat

Atualiza metadados de um release (mandatory, ativo, changelog, apk_url).

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/app-releases/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"mandatory\": false,
    \"ativo\": true,
    \"changelog\": \"gijqqkyvjzcrulgajgwpeczy\",
    \"apk_url\": \"https:\\/\\/kautzer.info\\/eius-placeat-laudantium-labore.html\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/app-releases/34"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "mandatory": false,
    "ativo": true,
    "changelog": "gijqqkyvjzcrulgajgwpeczy",
    "apk_url": "https:\/\/kautzer.info\/eius-placeat-laudantium-labore.html"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/app-releases/{appRelease_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

appRelease_id   integer   

The ID of the appRelease. Example: 34

Body Parameters

mandatory   boolean  optional  

Example: false

ativo   boolean  optional  

Example: true

changelog   string  optional  

validation.max. Example: gijqqkyvjzcrulgajgwpeczy

apk_url   string  optional  

Must be a valid URL. validation.max. Example: https://kautzer.info/eius-placeat-laudantium-labore.html

Remove o release e o arquivo APK.

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/app-releases/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/app-releases/34"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/app-releases/{appRelease_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

appRelease_id   integer   

The ID of the appRelease. Example: 34

Autenticação

Endpoints de login, logout e dados do usuário autenticado.

Login

Autentica o usuário e retorna um Bearer token Sanctum. Passe o token em todas as requisições como Authorization: Bearer {token}.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\",
    \"password\": \"password\",
    \"device_name\": \"Pixel 8\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "[email protected]",
    "password": "password",
    "device_name": "Pixel 8"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "token": "1|xK8zQmN...",
    "user": {
        "id": 1,
        "name": "Administrador",
        "email": "[email protected]",
        "role": "admin_empresa",
        "ativo": true,
        "empresa_id": 1,
        "empresa": {
            "id": 1,
            "nome": "Empresa Exemplo",
            "cnpj": "12345678000100",
            "plano": "profissional"
        }
    }
}
 

Example response (401):


{
    "message": "Credenciais inválidas."
}
 

Example response (403):


{
    "message": "Usuário inativo."
}
 

Request      

POST api/auth/login

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

email   string   

Email do usuário. Example: [email protected]

password   string   

Senha do usuário. Example: password

device_name   string  optional  

Nome do dispositivo (útil para apps mobile). Example: Pixel 8

Cadastro de nova empresa (onboarding público)

Cria a empresa e o usuário administrador inicial em uma única transação. Retorna token Sanctum para login automático.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/register" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"Minha Empresa Ltda\",
    \"cnpj\": \"12345678000195\",
    \"email\": \"[email protected]\",
    \"telefone\": \"11999999999\",
    \"plano\": \"basico\",
    \"admin_nome\": \"João Silva\",
    \"admin_email\": \"[email protected]\",
    \"admin_password\": \"senha1234\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/register"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "Minha Empresa Ltda",
    "cnpj": "12345678000195",
    "email": "[email protected]",
    "telefone": "11999999999",
    "plano": "basico",
    "admin_nome": "João Silva",
    "admin_email": "[email protected]",
    "admin_password": "senha1234"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201):


{
    "token": "1|abc...",
    "user": {
        "id": 1,
        "name": "João Silva"
    }
}
 

Request      

POST api/auth/register

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

Razão social da empresa. Example: Minha Empresa Ltda

cnpj   string  optional  

CNPJ (14 dígitos). Example: 12345678000195

email   string   

E-mail da empresa. Example: [email protected]

telefone   string  optional  

Telefone. Example: 11999999999

plano   string   

Plano: basico, profissional, enterprise. Example: basico

admin_nome   string   

Nome do administrador. Example: João Silva

admin_email   string   

E-mail do administrador (login). Example: [email protected]

admin_password   string   

Senha mínimo 8 caracteres. Example: senha1234

Usuário autenticado

Retorna os dados do usuário dono do token atual.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auth/me" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/me"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "user": {
        "id": 1,
        "name": "Administrador",
        "email": "[email protected]",
        "role": "admin_empresa",
        "ativo": true,
        "empresa_id": 1,
        "empresa": {
            "id": 1,
            "nome": "Empresa Exemplo"
        }
    }
}
 

Request      

GET api/auth/me

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Matriz de permissões efetivas do usuário autenticado.

Retorna { tela: { ver, incluir, editar, excluir } }. O frontend cacheia e usa para esconder/desabilitar botões. Backend ainda é a fonte da verdade — use o middleware permission:tela.acao para reforçar nas rotas.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auth/permissoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/permissoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/auth/permissoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Logout

Revoga o token atual.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/logout" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/logout"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Logout realizado com sucesso."
}
 

Request      

POST api/auth/logout

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Logout em todos os dispositivos

Revoga todos os tokens do usuário (todos os dispositivos).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/logout-all" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/logout-all"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "Todos os tokens revogados."
}
 

Request      

POST api/auth/logout-all

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Token de acesso à API Fiscal (JWT curta duração — mobile)

Gera um JWT HS256 válido por 30 minutos para que o app mobile chame a API Fiscal diretamente (NFC-e, DANFE) sem expor a API Key.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/fiscal-token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/fiscal-token"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "token": "eyJ...",
    "expires_in": 1800
}
 

Request      

POST api/auth/fiscal-token

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Perfil

Gerenciamento do perfil do usuário autenticado.

Meu perfil

Retorna os dados do usuário autenticado com empresa vinculada.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auth/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/profile"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "user": {
        "id": 1,
        "name": "João Silva",
        "email": "[email protected]",
        "role": "vendedor",
        "ativo": true,
        "empresa": {
            "id": 1,
            "nome": "Empresa Ltda"
        }
    }
}
 

Request      

GET api/auth/profile

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Atualizar perfil

Atualiza nome, email e/ou senha do usuário autenticado. Para alterar a senha, envie password_atual + password + password_confirmation.

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/auth/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"João Silva\",
    \"email\": \"[email protected]\",
    \"password_atual\": \"senhaAtual123\",
    \"password\": \"novaSenha456\",
    \"password_confirmation\": \"novaSenha456\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/profile"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "João Silva",
    "email": "[email protected]",
    "password_atual": "senhaAtual123",
    "password": "novaSenha456",
    "password_confirmation": "novaSenha456"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "user": {
        "id": 1,
        "name": "João Silva",
        "email": "[email protected]"
    }
}
 

Example response (422):


{
    "message": "The given data was invalid.",
    "errors": {
        "password_atual": [
            "Senha atual incorreta."
        ]
    }
}
 

Request      

PUT api/auth/profile

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string  optional  

Nome completo. Example: João Silva

email   string  optional  

Email. Example: [email protected]

password_atual   string  optional  

Senha atual (obrigatória apenas ao alterar senha). Example: senhaAtual123

password   string  optional  

Nova senha (mín. 8 caracteres). Example: novaSenha456

password_confirmation   string  optional  

Confirmação da nova senha. Example: novaSenha456

Notificações

GET api/notificacoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/notificacoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/notificacoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/notificacoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/notificacoes/count

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/notificacoes/count" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/notificacoes/count"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/notificacoes/count

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PATCH api/notificacoes/marcar-todas

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/notificacoes/marcar-todas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/notificacoes/marcar-todas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PATCH",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PATCH api/notificacoes/marcar-todas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PATCH api/notificacoes/{id}/lida

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/notificacoes/repudiandae/lida" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/notificacoes/repudiandae/lida"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PATCH",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PATCH api/notificacoes/{id}/lida

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the notificaco. Example: repudiandae

Sistema

POST api/errors/report

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/errors/report" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"source\": \"xojzbgmeosdlbhxsupudd\",
    \"message\": \"mhln\",
    \"context\": \"fp\",
    \"url\": \"http:\\/\\/www.lebsack.net\\/\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/errors/report"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "source": "xojzbgmeosdlbhxsupudd",
    "message": "mhln",
    "context": "fp",
    "url": "http:\/\/www.lebsack.net\/"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/errors/report

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

source   string   

validation.max. Example: xojzbgmeosdlbhxsupudd

message   string   

validation.max. Example: mhln

context   string  optional  

validation.max. Example: fp

url   string  optional  

validation.max. Example: http://www.lebsack.net/

Admin Central — Empresas

Painel de controle global. Exclusivo para super_admin.

GET api/admin/stats

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/stats" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/stats"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/stats

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Estatísticas globais

Retorna KPIs consolidados de todas as empresas.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/server-health" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/server-health"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "empresas": {
            "total": 12,
            "ativas": 10,
            "por_plano": {
                "profissional": 7,
                "basico": 3
            }
        },
        "usuarios": {
            "total": 48,
            "ativos": 45
        },
        "vendas_mes": {
            "total": 342,
            "faturamento": 158000
        }
    }
}
 

Request      

GET api/admin/server-health

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/admin/containers/{name}/logs

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/containers/ut/logs" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/containers/ut/logs"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/containers/{name}/logs

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

name   string   

Example: ut

Limpa recursos Docker não utilizados (imagens, containers parados, volumes, networks)

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/docker-prune" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/docker-prune"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/docker-prune

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Reconstruir / redeployar o sistema (super_admin).

Aciona o serviço de webhook interno (o mesmo usado pelo GitHub), que roda git pull origin main + docker compose up --build. Fire-and-forget: o rebuild reinicia este próprio backend, então a conexão pode cair antes da resposta do webhook — isso é esperado e o deploy continua no container do webhook.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/rebuild" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"service\": \"magnam\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/rebuild"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "service": "magnam"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/rebuild

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

service   string  optional  

vazio/ausente = todos os serviços. Example: magnam

Listar todas as empresas (admin)

Inclui contagem de usuários e data da última venda.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/empresas?search=Tech&ativo=1&plano=profissional&per_page=20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas"
);

const params = {
    "search": "Tech",
    "ativo": "1",
    "plano": "profissional",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome ou CNPJ. Example: Tech

ativo   boolean  optional  

Filtrar por status. Example: true

plano   string  optional  

Filtrar por plano. Example: profissional

per_page   integer  optional  

Itens por página. Example: 20

Criar empresa

Cria uma nova empresa e opcionalmente o primeiro usuário admin.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"Tech Soluções Ltda\",
    \"subdominio\": \"tsm\",
    \"provisionar_dns\": true,
    \"cnpj\": \"12345678000100\",
    \"email\": \"[email protected]\",
    \"telefone\": \"11999990000\",
    \"plano\": \"profissional\",
    \"logradouro\": \"vero\",
    \"numero\": \"nunb\",
    \"bairro\": \"sit\",
    \"cidade\": \"eveniet\",
    \"uf\": \"rd\",
    \"cep\": \"sz\",
    \"admin_nome\": \"Administrador\",
    \"admin_email\": \"[email protected]\",
    \"admin_password\": \"senha12345\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "Tech Soluções Ltda",
    "subdominio": "tsm",
    "provisionar_dns": true,
    "cnpj": "12345678000100",
    "email": "[email protected]",
    "telefone": "11999990000",
    "plano": "profissional",
    "logradouro": "vero",
    "numero": "nunb",
    "bairro": "sit",
    "cidade": "eveniet",
    "uf": "rd",
    "cep": "sz",
    "admin_nome": "Administrador",
    "admin_email": "[email protected]",
    "admin_password": "senha12345"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201):


{
    "data": {
        "id": 5,
        "nome": "Tech Soluções Ltda",
        "ativo": true
    }
}
 

Request      

POST api/admin/empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

Razão Social. Example: Tech Soluções Ltda

subdominio   string  optional  

Must contain only letters, numbers, dashes and underscores. validation.max. Example: tsm

provisionar_dns   boolean  optional  

Example: true

cnpj   string  optional  

CNPJ (14 dígitos sem formatação). Example: 12345678000100

email   string   

Email da empresa. Example: [email protected]

telefone   string  optional  

Telefone. Example: 11999990000

plano   string  optional  

Plano: basico, profissional, enterprise. Example: profissional

logradouro   string  optional  

Example: vero

numero   string  optional  

validation.max. Example: nunb

bairro   string  optional  

Example: sit

cidade   string  optional  

Example: eveniet

uf   string  optional  

validation.size. Example: rd

cep   string  optional  

validation.max. Example: sz

admin_nome   string  optional  

Nome do usuário admin inicial. Example: Administrador

admin_email   string  optional  

Email do usuário admin inicial. Example: [email protected]

admin_password   string  optional  

Senha do usuário admin (mín. 8 caracteres). Example: senha12345

Atualizar empresa (admin)

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/empresas/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"kzviaicxxbmbwalwrh\",
    \"nome_fantasia\": \"caimwwghsekoxwixd\",
    \"subdominio\": \"vepefaqxpfonkf\",
    \"cnpj\": \"vjnniygsuspynl\",
    \"ie\": \"kktcc\",
    \"im\": \"ylqvgfznrbfuykjbjh\",
    \"email\": \"[email protected]\",
    \"telefone\": \"nl\",
    \"plano\": \"profissional\",
    \"ativo\": true,
    \"logradouro\": \"dignissimos\",
    \"numero\": \"birlh\",
    \"complemento\": \"nobis\",
    \"bairro\": \"et\",
    \"cidade\": \"omnis\",
    \"uf\": \"ol\",
    \"cep\": \"ovz\",
    \"codigo_municipio_ibge\": \"adan\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "kzviaicxxbmbwalwrh",
    "nome_fantasia": "caimwwghsekoxwixd",
    "subdominio": "vepefaqxpfonkf",
    "cnpj": "vjnniygsuspynl",
    "ie": "kktcc",
    "im": "ylqvgfznrbfuykjbjh",
    "email": "[email protected]",
    "telefone": "nl",
    "plano": "profissional",
    "ativo": true,
    "logradouro": "dignissimos",
    "numero": "birlh",
    "complemento": "nobis",
    "bairro": "et",
    "cidade": "omnis",
    "uf": "ol",
    "cep": "ovz",
    "codigo_municipio_ibge": "adan"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "nome": "Empresa Atualizada"
    }
}
 

Request      

PUT api/admin/empresas/{empresa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 15

Body Parameters

nome   string  optional  

validation.max. Example: kzviaicxxbmbwalwrh

nome_fantasia   string  optional  

validation.max. Example: caimwwghsekoxwixd

subdominio   string  optional  

Must contain only letters, numbers, dashes and underscores. validation.max. Example: vepefaqxpfonkf

cnpj   string  optional  

validation.size. Example: vjnniygsuspynl

ie   string  optional  

validation.max. Example: kktcc

im   string  optional  

validation.max. Example: ylqvgfznrbfuykjbjh

email   string  optional  

validation.email. Example: [email protected]

telefone   string  optional  

validation.max. Example: nl

plano   string  optional  

Example: profissional

Must be one of:
  • basico
  • profissional
  • enterprise
ativo   boolean  optional  

Example: true

logradouro   string  optional  

Example: dignissimos

numero   string  optional  

validation.max. Example: birlh

complemento   string  optional  

Example: nobis

bairro   string  optional  

Example: et

cidade   string  optional  

Example: omnis

uf   string  optional  

validation.size. Example: ol

cep   string  optional  

validation.max. Example: ovz

codigo_municipio_ibge   string  optional  

validation.max. Example: adan

Ativar empresa

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/13/ativar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/13/ativar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "nome": "Empresa X",
        "ativo": true
    }
}
 

Example response (422):


{
    "message": "Empresa já está ativa."
}
 

Request      

POST api/admin/empresas/{empresa_id}/ativar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 13

Suspender empresa

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/18/suspender" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/18/suspender"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "nome": "Empresa X",
        "ativo": false
    }
}
 

Example response (422):


{
    "message": "Empresa já está suspensa."
}
 

Request      

POST api/admin/empresas/{empresa_id}/suspender

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 18

Impersonar empresa

Gera um token temporário (4h) como admin_empresa da empresa selecionada. Use este token para navegar no sistema como se fosse aquela empresa. O token expira automaticamente em 4 horas.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/18/impersonate" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/18/impersonate"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "token": "5|xK8zQm...",
    "user": {
        "id": 3,
        "name": "Admin Empresa",
        "role": "admin_empresa",
        "empresa": {
            "id": 2,
            "nome": "Empresa X"
        }
    }
}
 

Example response (422):


{
    "message": "Empresa não possui usuários cadastrados."
}
 

Request      

POST api/admin/empresas/{empresa_id}/impersonate

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 18

Provisionar DNS (Cloudflare) para a empresa

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/1/provisionar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/1/provisionar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/empresas/{empresa_id}/provisionar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 1

Remover DNS (Cloudflare) para a empresa

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/empresas/20/provisionar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/20/provisionar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/empresas/{empresa_id}/provisionar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 20

Criar e migrar o banco de dados do tenant

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/7/banco" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/7/banco"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/empresas/{empresa_id}/banco

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 7

Executar migrations pendentes no banco do tenant (idempotente) Útil para tenants existentes após novas migrations de tenant serem adicionadas.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/4/migrar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/4/migrar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/empresas/{empresa_id}/migrar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 4

Saúde de migração de TODOS os tenants ativos. Visão consolidada para o painel admin saber quais bancos precisam de `tenants:migrate`.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/migration-health" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/migration-health"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 1,
            "nome": "...",
            "up_to_date": true,
            "pending_count": 0
        }
    ],
    "resumo": {
        "total": 5,
        "desatualizados": 1,
        "sem_banco": 0
    }
}
 

Request      

GET api/admin/migration-health

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Saúde de migração de UM tenant: compara as migrations já aplicadas (tabela `migrations` do banco do tenant) com os arquivos em database/migrations/tenant.

Retorna as pendentes — útil para detectar tenants desatualizados que quebrariam ao acessar rotas (ex.: a tela de login com tabela ausente).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/empresas/7/migration-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/7/migration-status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "up_to_date": false,
        "pending_count": 3,
        "pending": [
            "..."
        ],
        "ran_count": 87,
        "total": 90
    }
}
 

Request      

GET api/admin/empresas/{empresa_id}/migration-status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 7

Executa migrations pendentes em TODOS os tenants ativos (equivale a `php artisan tenants:migrate`). Idempotente. Use após adicionar novas migrations de tenant para atualizar a base inteira de uma vez.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/migrar-todos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/migrar-todos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "message": "...",
    "migrados": 5,
    "falhas": []
}
 

Request      

POST api/admin/migrar-todos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gerenciar licença / validade do tenant

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/admin/empresas/12/licenca" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"subscription_ends_at\": \"2026-06-05T15:55:39\",
    \"trial_ends_at\": \"2026-06-05T15:55:39\",
    \"grace_period_ends_at\": \"2026-06-05T15:55:39\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/12/licenca"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "subscription_ends_at": "2026-06-05T15:55:39",
    "trial_ends_at": "2026-06-05T15:55:39",
    "grace_period_ends_at": "2026-06-05T15:55:39"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PATCH api/admin/empresas/{empresa_id}/licenca

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 12

Body Parameters

status   string  optional  
subscription_ends_at   string  optional  

validation.date. Example: 2026-06-05T15:55:39

trial_ends_at   string  optional  

validation.date. Example: 2026-06-05T15:55:39

grace_period_ends_at   string  optional  

validation.date. Example: 2026-06-05T15:55:39

Excluir empresa: remove DNS/Tunnel, dropa banco e faz soft-delete

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/empresas/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/6"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/empresas/{empresa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 6

Backup do banco de dados do tenant via pg_dump

Gera um arquivo SQL com dump completo do banco de dados do tenant. Requer pg_dump instalado no servidor.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/empresas/12/backup" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/12/backup"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/empresas/{empresa_id}/backup

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 12

Ações em lote sobre múltiplas empresas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/bulk" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"action\": \"ativar\",
    \"ids\": [
        1,
        2,
        3
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/bulk"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "action": "ativar",
    "ids": [
        1,
        2,
        3
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/empresas/bulk

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

action   string   

Ação: ativar | suspender. Example: ativar

ids   string[]   

IDs das empresas.

Histórico de auditoria (geral ou por empresa)

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/audit-log?empresa_id=5&per_page=50" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/audit-log"
);

const params = {
    "empresa_id": "5",
    "per_page": "50",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/audit-log

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

empresa_id   integer  optional  

Filtrar por empresa. Example: 5

per_page   integer  optional  

Itens por página (máx 200). Example: 50

GET api/admin/empresas/{empresa_id}/usuarios

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/empresas/19/usuarios" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/19/usuarios"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/empresas/{empresa_id}/usuarios

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 19

POST api/admin/empresas/{empresa_id}/usuarios

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/empresas/11/usuarios" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"rmsvrjiloigestumcxoqt\",
    \"email\": \"[email protected]\",
    \"password\": \"facilis\",
    \"role\": \"earum\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/11/usuarios"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "rmsvrjiloigestumcxoqt",
    "email": "[email protected]",
    "password": "facilis",
    "role": "earum",
    "ativo": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/empresas/{empresa_id}/usuarios

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 11

Body Parameters

name   string   

validation.max. Example: rmsvrjiloigestumcxoqt

email   string   

validation.email validation.max. Example: [email protected]

password   string   

Example: facilis

role   string   

Example: earum

ativo   boolean  optional  

Example: false

PUT api/admin/empresas/{empresa_id}/usuarios/{userId}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/empresas/18/usuarios/in" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"nurwmuortltdvbezixox\",
    \"email\": \"[email protected]\",
    \"password\": \"G[9\\\"Liil\\/z\'bmOHo[Ym,\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/18/usuarios/in"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "nurwmuortltdvbezixox",
    "email": "[email protected]",
    "password": "G[9\"Liil\/z'bmOHo[Ym,",
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/empresas/{empresa_id}/usuarios/{userId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 18

userId   string   

Example: in

Body Parameters

name   string  optional  

validation.max. Example: nurwmuortltdvbezixox

email   string  optional  

validation.email validation.max. Example: [email protected]

password   string  optional  

Example: G[9"Liil/z'bmOHo[Ym,

role   string  optional  
ativo   boolean  optional  

Example: true

DELETE api/admin/empresas/{empresa_id}/usuarios/{userId}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/empresas/16/usuarios/sed" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/empresas/16/usuarios/sed"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/empresas/{empresa_id}/usuarios/{userId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 16

userId   string   

Example: sed

Admin Central — Planos

GET api/admin/planos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/planos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/planos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/planos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/planos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/planos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"zdjwrtuy\",
    \"slug\": \"zdkisdmkzav\",
    \"descricao\": \"quos\",
    \"preco_mensal\": 54,
    \"preco_anual\": 9,
    \"trial_dias\": 35,
    \"limite_usuarios\": 39,
    \"limite_produtos\": 73,
    \"limite_clientes\": 24,
    \"ativo\": true,
    \"publico\": false,
    \"ordem\": 15
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/planos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "zdjwrtuy",
    "slug": "zdkisdmkzav",
    "descricao": "quos",
    "preco_mensal": 54,
    "preco_anual": 9,
    "trial_dias": 35,
    "limite_usuarios": 39,
    "limite_produtos": 73,
    "limite_clientes": 24,
    "ativo": true,
    "publico": false,
    "ordem": 15
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/planos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: zdjwrtuy

slug   string   

Must match the regex /^[a-z0-9-]+$/. validation.max. Example: zdkisdmkzav

descricao   string  optional  

Example: quos

preco_mensal   number   

validation.min. Example: 54

preco_anual   number   

validation.min. Example: 9

trial_dias   integer  optional  

validation.min. Example: 35

limite_usuarios   integer  optional  

validation.min. Example: 39

limite_produtos   integer  optional  

validation.min. Example: 73

limite_clientes   integer  optional  

validation.min. Example: 24

features   object  optional  
ativo   boolean  optional  

Example: true

publico   boolean  optional  

Example: false

ordem   integer  optional  

validation.min. Example: 15

GET api/admin/planos/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/planos/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/planos/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/planos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano. Example: 1

PUT api/admin/planos/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/planos/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"gjtfcvkyaazrkdfhb\",
    \"descricao\": \"nihil\",
    \"preco_mensal\": 14,
    \"preco_anual\": 84,
    \"trial_dias\": 85,
    \"limite_usuarios\": 29,
    \"limite_produtos\": 58,
    \"limite_clientes\": 55,
    \"ativo\": false,
    \"publico\": true,
    \"ordem\": 75
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/planos/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "gjtfcvkyaazrkdfhb",
    "descricao": "nihil",
    "preco_mensal": 14,
    "preco_anual": 84,
    "trial_dias": 85,
    "limite_usuarios": 29,
    "limite_produtos": 58,
    "limite_clientes": 55,
    "ativo": false,
    "publico": true,
    "ordem": 75
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/planos/{id}

PATCH api/admin/planos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano. Example: 1

Body Parameters

nome   string  optional  

validation.max. Example: gjtfcvkyaazrkdfhb

slug   string  optional  
descricao   string  optional  

Example: nihil

preco_mensal   number  optional  

validation.min. Example: 14

preco_anual   number  optional  

validation.min. Example: 84

trial_dias   integer  optional  

validation.min. Example: 85

limite_usuarios   integer  optional  

validation.min. Example: 29

limite_produtos   integer  optional  

validation.min. Example: 58

limite_clientes   integer  optional  

validation.min. Example: 55

features   object  optional  
ativo   boolean  optional  

Example: false

publico   boolean  optional  

Example: true

ordem   integer  optional  

validation.min. Example: 75

DELETE api/admin/planos/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/planos/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/planos/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/planos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano. Example: 1

Admin Central — Assinaturas

GET api/admin/assinaturas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/assinaturas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/assinaturas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/assinaturas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/assinaturas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": \"omnis\",
    \"plano_id\": \"voluptates\",
    \"ciclo\": \"anual\",
    \"desconto_percent\": 18,
    \"gateway\": \"stripe\",
    \"notas\": \"et\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": "omnis",
    "plano_id": "voluptates",
    "ciclo": "anual",
    "desconto_percent": 18,
    "gateway": "stripe",
    "notas": "et"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/assinaturas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   string   

The id of an existing record in the tenants table. Example: omnis

plano_id   string   

The id of an existing record in the planos table. Example: voluptates

ciclo   string  optional  

Example: anual

Must be one of:
  • mensal
  • anual
desconto_percent   number  optional  

validation.min validation.max. Example: 18

gateway   string  optional  

Example: stripe

Must be one of:
  • asaas
  • stripe
  • manual
notas   string  optional  

Example: et

GET api/admin/assinaturas/{assinatura_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/assinaturas/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/assinaturas/{assinatura_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 9

PUT api/admin/assinaturas/{assinatura_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/assinaturas/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ciclo\": \"mensal\",
    \"desconto_percent\": 10,
    \"data_proximo_vencimento\": \"2026-06-05T15:55:40\",
    \"notas\": \"repudiandae\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ciclo": "mensal",
    "desconto_percent": 10,
    "data_proximo_vencimento": "2026-06-05T15:55:40",
    "notas": "repudiandae"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/assinaturas/{assinatura_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 14

Body Parameters

plano_id   string  optional  

The id of an existing record in the planos table.

ciclo   string  optional  

Example: mensal

Must be one of:
  • mensal
  • anual
desconto_percent   number  optional  

validation.min validation.max. Example: 10

data_proximo_vencimento   string  optional  

validation.date. Example: 2026-06-05T15:55:40

notas   string  optional  

Example: repudiandae

POST api/admin/assinaturas/{assinatura_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/assinaturas/1/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/1/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/assinaturas/{assinatura_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 1

POST api/admin/assinaturas/{assinatura_id}/suspender

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/assinaturas/18/suspender" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/18/suspender"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/assinaturas/{assinatura_id}/suspender

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 18

POST api/admin/assinaturas/{assinatura_id}/reativar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/assinaturas/16/reativar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/16/reativar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/assinaturas/{assinatura_id}/reativar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 16

POST api/admin/assinaturas/{assinatura_id}/gerar-fatura

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/assinaturas/14/gerar-fatura" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"valor\": 9,
    \"desconto\": 17,
    \"data_vencimento\": \"2026-06-05T15:55:40\",
    \"descricao\": \"molestiae\",
    \"notas\": \"iure\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/assinaturas/14/gerar-fatura"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "valor": 9,
    "desconto": 17,
    "data_vencimento": "2026-06-05T15:55:40",
    "descricao": "molestiae",
    "notas": "iure"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/assinaturas/{assinatura_id}/gerar-fatura

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

assinatura_id   integer   

The ID of the assinatura. Example: 14

Body Parameters

valor   number  optional  

validation.min. Example: 9

desconto   number  optional  

validation.min. Example: 17

data_vencimento   string  optional  

validation.date. Example: 2026-06-05T15:55:40

descricao   string  optional  

Example: molestiae

notas   string  optional  

Example: iure

Admin Central — Faturas

GET api/admin/faturas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/faturas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/faturas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/admin/faturas/{fatura_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/faturas/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/faturas/{fatura_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fatura_id   integer   

The ID of the fatura. Example: 14

POST api/admin/faturas/{fatura_id}/baixar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/faturas/20/baixar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_pagamento\": \"2026-06-05T15:55:40\",
    \"forma_pagamento\": \"njqcqtvkvxnaptpbkmfst\",
    \"notas\": \"non\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas/20/baixar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_pagamento": "2026-06-05T15:55:40",
    "forma_pagamento": "njqcqtvkvxnaptpbkmfst",
    "notas": "non"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/faturas/{fatura_id}/baixar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fatura_id   integer   

The ID of the fatura. Example: 20

Body Parameters

data_pagamento   string  optional  

validation.date. Example: 2026-06-05T15:55:40

forma_pagamento   string  optional  

validation.max. Example: njqcqtvkvxnaptpbkmfst

notas   string  optional  

Example: non

POST api/admin/faturas/{fatura_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/faturas/7/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas/7/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/faturas/{fatura_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fatura_id   integer   

The ID of the fatura. Example: 7

POST api/admin/faturas/{fatura_id}/gerar-pix

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/faturas/9/gerar-pix" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas/9/gerar-pix"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/faturas/{fatura_id}/gerar-pix

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fatura_id   integer   

The ID of the fatura. Example: 9

DELETE api/admin/faturas/{fatura_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/admin/faturas/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/faturas/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

DELETE api/admin/faturas/{fatura_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fatura_id   integer   

The ID of the fatura. Example: 3

Admin Central — Gateways

GET api/admin/gateways

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/gateways" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/gateways"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/gateways

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/admin/gateways/{provider}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/gateways/dolorem" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ativo\": false,
    \"sandbox\": true,
    \"api_key\": \"ihojizqtcusrmmyrz\",
    \"webhook_secret\": \"qgr\",
    \"webhook_url\": \"https:\\/\\/www.hahn.com\\/veniam-impedit-ratione-sequi-velit-repellat-provident-quidem\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/gateways/dolorem"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ativo": false,
    "sandbox": true,
    "api_key": "ihojizqtcusrmmyrz",
    "webhook_secret": "qgr",
    "webhook_url": "https:\/\/www.hahn.com\/veniam-impedit-ratione-sequi-velit-repellat-provident-quidem"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/gateways/{provider}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provider   string   

Example: dolorem

Body Parameters

ativo   boolean  optional  

Example: false

sandbox   boolean  optional  

Example: true

api_key   string  optional  

validation.max. Example: ihojizqtcusrmmyrz

webhook_secret   string  optional  

validation.max. Example: qgr

webhook_url   string  optional  

Must be a valid URL. validation.max. Example: https://www.hahn.com/veniam-impedit-ratione-sequi-velit-repellat-provident-quidem

configuracoes   object  optional  

POST api/admin/gateways/{provider}/testar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/gateways/harum/testar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/gateways/harum/testar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/gateways/{provider}/testar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provider   string   

Example: harum

Tenant — Usuários

Gerenciamento de usuários da empresa. Requer roles super_admin ou admin_empresa. Roles disponíveis: super_admin, admin_empresa, gerente, financeiro, vendedor, operador_pdv, contador.

Permissões granulares do usuário (matriz tela × ação) — complementam o perfil.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/usuarios/1/permissoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/1/permissoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/usuarios/{user_id}/permissoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Salva os overrides de permissão do usuário.

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/usuarios/1/permissoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"permissoes\": [
        {
            \"ver\": true,
            \"incluir\": false,
            \"editar\": false,
            \"excluir\": true
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/1/permissoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "permissoes": [
        {
            "ver": true,
            "incluir": false,
            "editar": false,
            "excluir": true
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/usuarios/{user_id}/permissoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Body Parameters

permissoes   object[]   
ver   boolean  optional  

Example: true

incluir   boolean  optional  

Example: false

editar   boolean  optional  

Example: false

excluir   boolean  optional  

Example: true

Listar usuários

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/usuarios?search=Maria&role=vendedor&ativo=1&per_page=20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios"
);

const params = {
    "search": "Maria",
    "role": "vendedor",
    "ativo": "1",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/usuarios

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome ou email. Example: Maria

role   string  optional  

Filtrar por role. Example: vendedor

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página. Example: 20

POST api/usuarios

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/usuarios" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"yihvneptiljlmorkszda\",
    \"email\": \"[email protected]\",
    \"cpf\": \"dnlkwp\",
    \"telefone\": \"kz\",
    \"login\": \"zpbpgohnvcvhovur\",
    \"senha_app\": \"ocdmijmlljfahpjiidauh\",
    \"role\": \"financeiro\",
    \"supervisor\": true,
    \"estoquista\": true,
    \"caixa\": false,
    \"vendedor_padrao_id\": 19,
    \"percentual_comissao\": 9,
    \"percentual_comissao_avista\": 10,
    \"percentual_comissao_aprazo\": 15,
    \"desconto_maximo_percentual\": 5
}"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "yihvneptiljlmorkszda",
    "email": "[email protected]",
    "cpf": "dnlkwp",
    "telefone": "kz",
    "login": "zpbpgohnvcvhovur",
    "senha_app": "ocdmijmlljfahpjiidauh",
    "role": "financeiro",
    "supervisor": true,
    "estoquista": true,
    "caixa": false,
    "vendedor_padrao_id": 19,
    "percentual_comissao": 9,
    "percentual_comissao_avista": 10,
    "percentual_comissao_aprazo": 15,
    "desconto_maximo_percentual": 5
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/usuarios

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

validation.max. Example: yihvneptiljlmorkszda

email   string  optional  

validation.email. Example: [email protected]

cpf   string  optional  

validation.max. Example: dnlkwp

telefone   string  optional  

validation.max. Example: kz

login   string  optional  

validation.max. Example: zpbpgohnvcvhovur

password   string  optional  
senha_app   string  optional  

validation.max. Example: ocdmijmlljfahpjiidauh

role   string   

Example: financeiro

Must be one of:
  • admin_empresa
  • gerente
  • financeiro
  • vendedor
  • operador_pdv
  • contador
supervisor   boolean  optional  

Example: true

estoquista   boolean  optional  

Example: true

caixa   boolean  optional  

Example: false

vendedor_padrao_id   integer  optional  

Example: 19

percentual_comissao   number  optional  

validation.min validation.max. Example: 9

percentual_comissao_avista   number  optional  

validation.min validation.max. Example: 10

percentual_comissao_aprazo   number  optional  

validation.min validation.max. Example: 15

desconto_maximo_percentual   number  optional  

validation.min validation.max. Example: 5

GET api/usuarios/{user_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/usuarios/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/usuarios/{user_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

PUT api/usuarios/{user_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/usuarios/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vgdsdpop\",
    \"email\": \"[email protected]\",
    \"cpf\": \"qjsbywspkja\",
    \"telefone\": \"ceotetfeuuc\",
    \"login\": \"axlgfskldnrtvcmzqsttsuqhz\",
    \"senha_app\": \"atlvandkb\",
    \"supervisor\": true,
    \"estoquista\": false,
    \"caixa\": false,
    \"vendedor_padrao_id\": 7,
    \"ativo\": false,
    \"percentual_comissao\": 13,
    \"percentual_comissao_avista\": 6,
    \"percentual_comissao_aprazo\": 24,
    \"desconto_maximo_percentual\": 3
}"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "vgdsdpop",
    "email": "[email protected]",
    "cpf": "qjsbywspkja",
    "telefone": "ceotetfeuuc",
    "login": "axlgfskldnrtvcmzqsttsuqhz",
    "senha_app": "atlvandkb",
    "supervisor": true,
    "estoquista": false,
    "caixa": false,
    "vendedor_padrao_id": 7,
    "ativo": false,
    "percentual_comissao": 13,
    "percentual_comissao_avista": 6,
    "percentual_comissao_aprazo": 24,
    "desconto_maximo_percentual": 3
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/usuarios/{user_id}

PATCH api/usuarios/{user_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Body Parameters

name   string  optional  

validation.max. Example: vgdsdpop

email   string  optional  

validation.email. Example: [email protected]

cpf   string  optional  

validation.max. Example: qjsbywspkja

telefone   string  optional  

validation.max. Example: ceotetfeuuc

login   string  optional  

validation.max. Example: axlgfskldnrtvcmzqsttsuqhz

password   string  optional  
senha_app   string  optional  

validation.max. Example: atlvandkb

role   string  optional  
supervisor   boolean  optional  

Example: true

estoquista   boolean  optional  

Example: false

caixa   boolean  optional  

Example: false

vendedor_padrao_id   integer  optional  

Example: 7

ativo   boolean  optional  

Example: false

percentual_comissao   number  optional  

validation.min validation.max. Example: 13

percentual_comissao_avista   number  optional  

validation.min validation.max. Example: 6

percentual_comissao_aprazo   number  optional  

validation.min validation.max. Example: 24

desconto_maximo_percentual   number  optional  

validation.min validation.max. Example: 3

DELETE api/usuarios/{user_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/usuarios/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/usuarios/{user_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   integer   

The ID of the user. Example: 1

Registrar token FCM

Salva ou atualiza o token Firebase Cloud Messaging do dispositivo do usuário autenticado. Chamado automaticamente pelo app mobile/PDV após login e inicialização do Firebase.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/usuarios/fcm-token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"token\": \"fJKnQ...abc123\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/usuarios/fcm-token"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "token": "fJKnQ...abc123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/usuarios/fcm-token

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

token   string   

Token FCM gerado pelo Firebase SDK. Example: fJKnQ...abc123

Tenant — Clientes

Cadastro e consulta de clientes (pessoa física ou jurídica).

Exportar lista de clientes em CSV (UTF-8 com BOM para Excel).

Respeita os mesmos filtros de index e usa cursor para não estourar memória.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/exportar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/exportar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/exportar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Aplica tags em lote — adiciona (modo append) ou substitui (modo sync).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/clientes/lote/aplicar-tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        \"consequatur\"
    ],
    \"tag_ids\": [
        \"aut\"
    ],
    \"modo\": \"earum\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/lote/aplicar-tags"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        "consequatur"
    ],
    "tag_ids": [
        "aut"
    ],
    "modo": "earum"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/clientes/lote/aplicar-tags

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   string[]   

IDs dos clientes (até 500).

tag_ids   string[]   

IDs das tags.

modo   string  optional  

append|sync (default append). Example: earum

Anonimização LGPD em lote. Exige confirmação explícita no body.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/clientes/lote/anonimizar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ids\": [
        \"magnam\"
    ],
    \"confirmar\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/lote/anonimizar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ids": [
        "magnam"
    ],
    "confirmar": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/clientes/lote/anonimizar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ids   string[]   

IDs dos clientes.

confirmar   boolean   

Precisa ser true. Example: false

Listar clientes

Retorna lista paginada. Use search para buscar por nome, CPF/CNPJ ou email.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes?search=Jo%C3%A3o&ativo=1&per_page=20&page=1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes"
);

const params = {
    "search": "João",
    "ativo": "1",
    "per_page": "20",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome, CPF/CNPJ ou email. Example: João

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página (padrão 20). Example: 20

page   integer  optional  

Número da página. Example: 1

Criar cliente

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/clientes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"pf\",
    \"nome\": \"zurucqhslgnysqwsjctjpbxlr\",
    \"limite_credito\": 71,
    \"apelido\": \"izjoovalibjbbealjgkzv\",
    \"cpf_cnpj\": \"lxvyqunag\",
    \"rg_ie\": \"bz\",
    \"dt_nascimento\": \"2026-06-05T15:39:13\",
    \"sexo\": \"I\",
    \"estado_civil\": \"viuvo\",
    \"email\": \"[email protected]\",
    \"telefone\": \"jg\",
    \"celular\": \"wkdnpptqsmaujgkhigsr\",
    \"tel_residencial\": \"nhztlaxzizen\",
    \"tel_comercial\": \"jqfobehqewas\",
    \"tel_celular_comp\": \"krebngngyginax\",
    \"whatsapp\": \"rr\",
    \"cep\": \"d\",
    \"logradouro\": \"ovwsswdabwjuklmheuhqrhbwj\",
    \"numero\": \"ayxad\",
    \"complemento\": \"uvqyiforudmoffnrdzmoxzzx\",
    \"bairro\": \"svavnjduoxnfxfneeirfufby\",
    \"cidade\": \"juwaoill\",
    \"estado\": \"bb\",
    \"codigo_municipio_ibge\": \"kcahxvb\",
    \"regime_tributario\": \"rzneezowzkowthw\",
    \"tipo_contribuinte\": \"mfzdnmfdyrbqrvwvolitsmuaj\",
    \"tipo_recebimento\": \"ruralucykieilqbrce\",
    \"observacoes\": \"inventore\",
    \"informacoes_complementares\": \"et\",
    \"ativo\": true,
    \"tabela_preco_id\": 13,
    \"is_cliente\": false,
    \"is_fornecedor\": true,
    \"is_funcionario\": true,
    \"is_administradora\": false,
    \"is_parceiro\": true,
    \"is_ccf_spc\": true,
    \"is_tecnico\": false,
    \"is_atendente\": false,
    \"is_cidadao\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "pf",
    "nome": "zurucqhslgnysqwsjctjpbxlr",
    "limite_credito": 71,
    "apelido": "izjoovalibjbbealjgkzv",
    "cpf_cnpj": "lxvyqunag",
    "rg_ie": "bz",
    "dt_nascimento": "2026-06-05T15:39:13",
    "sexo": "I",
    "estado_civil": "viuvo",
    "email": "[email protected]",
    "telefone": "jg",
    "celular": "wkdnpptqsmaujgkhigsr",
    "tel_residencial": "nhztlaxzizen",
    "tel_comercial": "jqfobehqewas",
    "tel_celular_comp": "krebngngyginax",
    "whatsapp": "rr",
    "cep": "d",
    "logradouro": "ovwsswdabwjuklmheuhqrhbwj",
    "numero": "ayxad",
    "complemento": "uvqyiforudmoffnrdzmoxzzx",
    "bairro": "svavnjduoxnfxfneeirfufby",
    "cidade": "juwaoill",
    "estado": "bb",
    "codigo_municipio_ibge": "kcahxvb",
    "regime_tributario": "rzneezowzkowthw",
    "tipo_contribuinte": "mfzdnmfdyrbqrvwvolitsmuaj",
    "tipo_recebimento": "ruralucykieilqbrce",
    "observacoes": "inventore",
    "informacoes_complementares": "et",
    "ativo": true,
    "tabela_preco_id": 13,
    "is_cliente": false,
    "is_fornecedor": true,
    "is_funcionario": true,
    "is_administradora": false,
    "is_parceiro": true,
    "is_ccf_spc": true,
    "is_tecnico": false,
    "is_atendente": false,
    "is_cidadao": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201, Criado):


{
    "data": {
        "id": 1,
        "nome": "Maria Silva",
        "tipo": "pf",
        "cpf_cnpj": "12345678900",
        "email": "[email protected]",
        "ativo": true
    }
}
 

Example response (422, Validação):


{
    "message": "The nome field is required.",
    "errors": {
        "nome": [
            "The nome field is required."
        ]
    }
}
 

Request      

POST api/clientes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

tipo   string   

Example: pf

Must be one of:
  • pf
  • pj
nome   string   

validation.max. Example: zurucqhslgnysqwsjctjpbxlr

limite_credito   number  optional  

validation.min. Example: 71

apelido   string  optional  

validation.max. Example: izjoovalibjbbealjgkzv

cpf_cnpj   string  optional  

validation.max. Example: lxvyqunag

rg_ie   string  optional  

validation.max. Example: bz

dt_nascimento   string  optional  

validation.date. Example: 2026-06-05T15:39:13

sexo   string  optional  

Example: I

Must be one of:
  • M
  • F
  • I
estado_civil   string  optional  

Example: viuvo

Must be one of:
  • solteiro
  • casado
  • divorciado
  • viuvo
  • uniao_estavel
email   string  optional  

validation.email validation.max. Example: [email protected]

telefone   string  optional  

validation.max. Example: jg

celular   string  optional  

validation.max. Example: wkdnpptqsmaujgkhigsr

tel_residencial   string  optional  

validation.max. Example: nhztlaxzizen

tel_comercial   string  optional  

validation.max. Example: jqfobehqewas

tel_celular_comp   string  optional  

validation.max. Example: krebngngyginax

whatsapp   string  optional  

validation.max. Example: rr

cep   string  optional  

validation.max. Example: d

logradouro   string  optional  

validation.max. Example: ovwsswdabwjuklmheuhqrhbwj

numero   string  optional  

validation.max. Example: ayxad

complemento   string  optional  

validation.max. Example: uvqyiforudmoffnrdzmoxzzx

bairro   string  optional  

validation.max. Example: svavnjduoxnfxfneeirfufby

cidade   string  optional  

validation.max. Example: juwaoill

estado   string  optional  

validation.size. Example: bb

codigo_municipio_ibge   string  optional  

validation.max. Example: kcahxvb

regime_tributario   string  optional  

validation.max. Example: rzneezowzkowthw

tipo_contribuinte   string  optional  

validation.max. Example: mfzdnmfdyrbqrvwvolitsmuaj

tipo_recebimento   string  optional  

validation.max. Example: ruralucykieilqbrce

observacoes   string  optional  

Example: inventore

informacoes_complementares   string  optional  

Example: et

ativo   boolean  optional  

Example: true

tabela_preco_id   integer  optional  

The id of an existing record in the tabelas_preco table. Example: 13

is_cliente   boolean  optional  

Example: false

is_fornecedor   boolean  optional  

Example: true

is_funcionario   boolean  optional  

Example: true

is_administradora   boolean  optional  

Example: false

is_parceiro   boolean  optional  

Example: true

is_ccf_spc   boolean  optional  

Example: true

is_tecnico   boolean  optional  

Example: false

is_atendente   boolean  optional  

Example: false

is_cidadao   boolean  optional  

Example: false

Buscar cliente por ID

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the cliente. Example: 8

Atualizar cliente

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/clientes/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"pj\",
    \"nome\": \"zrxlkeseozbziisa\",
    \"limite_credito\": 23,
    \"apelido\": \"clybhqc\",
    \"cpf_cnpj\": \"epnxrq\",
    \"rg_ie\": \"clj\",
    \"dt_nascimento\": \"2026-06-05T15:39:16\",
    \"sexo\": \"F\",
    \"estado_civil\": \"divorciado\",
    \"email\": \"[email protected]\",
    \"telefone\": \"gulfznyhbidmfsqxrhtv\",
    \"celular\": \"qjgibngxquzup\",
    \"tel_residencial\": \"pqrtbmku\",
    \"tel_comercial\": \"wx\",
    \"tel_celular_comp\": \"nn\",
    \"whatsapp\": \"gdkikrzt\",
    \"cep\": \"m\",
    \"logradouro\": \"kypvqkjxeslk\",
    \"numero\": \"jx\",
    \"complemento\": \"ruajkcntvrqbmaqfhtuor\",
    \"bairro\": \"pu\",
    \"cidade\": \"vdmgaxabaq\",
    \"estado\": \"fw\",
    \"codigo_municipio_ibge\": \"pl\",
    \"regime_tributario\": \"opxdiiaupmuktudgxftlbnqon\",
    \"tipo_contribuinte\": \"ahqvkwrurzre\",
    \"tipo_recebimento\": \"fmqgbgobbellamlfeswaoj\",
    \"observacoes\": \"est\",
    \"informacoes_complementares\": \"repellendus\",
    \"ativo\": false,
    \"tabela_preco_id\": 14,
    \"is_cliente\": true,
    \"is_fornecedor\": false,
    \"is_funcionario\": false,
    \"is_administradora\": false,
    \"is_parceiro\": true,
    \"is_ccf_spc\": false,
    \"is_tecnico\": false,
    \"is_atendente\": false,
    \"is_cidadao\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/17"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "pj",
    "nome": "zrxlkeseozbziisa",
    "limite_credito": 23,
    "apelido": "clybhqc",
    "cpf_cnpj": "epnxrq",
    "rg_ie": "clj",
    "dt_nascimento": "2026-06-05T15:39:16",
    "sexo": "F",
    "estado_civil": "divorciado",
    "email": "[email protected]",
    "telefone": "gulfznyhbidmfsqxrhtv",
    "celular": "qjgibngxquzup",
    "tel_residencial": "pqrtbmku",
    "tel_comercial": "wx",
    "tel_celular_comp": "nn",
    "whatsapp": "gdkikrzt",
    "cep": "m",
    "logradouro": "kypvqkjxeslk",
    "numero": "jx",
    "complemento": "ruajkcntvrqbmaqfhtuor",
    "bairro": "pu",
    "cidade": "vdmgaxabaq",
    "estado": "fw",
    "codigo_municipio_ibge": "pl",
    "regime_tributario": "opxdiiaupmuktudgxftlbnqon",
    "tipo_contribuinte": "ahqvkwrurzre",
    "tipo_recebimento": "fmqgbgobbellamlfeswaoj",
    "observacoes": "est",
    "informacoes_complementares": "repellendus",
    "ativo": false,
    "tabela_preco_id": 14,
    "is_cliente": true,
    "is_fornecedor": false,
    "is_funcionario": false,
    "is_administradora": false,
    "is_parceiro": true,
    "is_ccf_spc": false,
    "is_tecnico": false,
    "is_atendente": false,
    "is_cidadao": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/clientes/{id}

PATCH api/clientes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the cliente. Example: 17

Body Parameters

tipo   string  optional  

Example: pj

Must be one of:
  • pf
  • pj
nome   string  optional  

validation.max. Example: zrxlkeseozbziisa

limite_credito   number  optional  

validation.min. Example: 23

apelido   string  optional  

validation.max. Example: clybhqc

cpf_cnpj   string  optional  

validation.max. Example: epnxrq

rg_ie   string  optional  

validation.max. Example: clj

dt_nascimento   string  optional  

validation.date. Example: 2026-06-05T15:39:16

sexo   string  optional  

Example: F

Must be one of:
  • M
  • F
  • I
estado_civil   string  optional  

Example: divorciado

Must be one of:
  • solteiro
  • casado
  • divorciado
  • viuvo
  • uniao_estavel
email   string  optional  

validation.email validation.max. Example: [email protected]

telefone   string  optional  

validation.max. Example: gulfznyhbidmfsqxrhtv

celular   string  optional  

validation.max. Example: qjgibngxquzup

tel_residencial   string  optional  

validation.max. Example: pqrtbmku

tel_comercial   string  optional  

validation.max. Example: wx

tel_celular_comp   string  optional  

validation.max. Example: nn

whatsapp   string  optional  

validation.max. Example: gdkikrzt

cep   string  optional  

validation.max. Example: m

logradouro   string  optional  

validation.max. Example: kypvqkjxeslk

numero   string  optional  

validation.max. Example: jx

complemento   string  optional  

validation.max. Example: ruajkcntvrqbmaqfhtuor

bairro   string  optional  

validation.max. Example: pu

cidade   string  optional  

validation.max. Example: vdmgaxabaq

estado   string  optional  

validation.size. Example: fw

codigo_municipio_ibge   string  optional  

validation.max. Example: pl

regime_tributario   string  optional  

validation.max. Example: opxdiiaupmuktudgxftlbnqon

tipo_contribuinte   string  optional  

validation.max. Example: ahqvkwrurzre

tipo_recebimento   string  optional  

validation.max. Example: fmqgbgobbellamlfeswaoj

observacoes   string  optional  

Example: est

informacoes_complementares   string  optional  

Example: repellendus

ativo   boolean  optional  

Example: false

tabela_preco_id   integer  optional  

The id of an existing record in the tabelas_preco table. Example: 14

is_cliente   boolean  optional  

Example: true

is_fornecedor   boolean  optional  

Example: false

is_funcionario   boolean  optional  

Example: false

is_administradora   boolean  optional  

Example: false

is_parceiro   boolean  optional  

Example: true

is_ccf_spc   boolean  optional  

Example: false

is_tecnico   boolean  optional  

Example: false

is_atendente   boolean  optional  

Example: false

is_cidadao   boolean  optional  

Example: false

Excluir cliente (soft delete)

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/clientes/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/clientes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the cliente. Example: 8

Sincronizar tags do cliente.

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/clientes/3/tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tag_ids\": [
        1,
        3,
        7
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/3/tags"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tag_ids": [
        1,
        3,
        7
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/clientes/{cliente_id}/tags

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 3

Body Parameters

tag_ids   string[]  optional  

IDs de tags.

Situação de crédito (fiado): limite, saldo devedor e disponível.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/13/credito" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/13/credito"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/credito

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 13

Anonimizar dados pessoais (LGPD — direito ao esquecimento)

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/clientes/5/anonimizar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/5/anonimizar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/clientes/{cliente_id}/anonimizar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 5

Tenant — Fornecedores

Cadastro de fornecedores (pessoa física ou jurídica).

Listar fornecedores

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fornecedores?search=Distribuidora&ativo=1&per_page=20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores"
);

const params = {
    "search": "Distribuidora",
    "ativo": "1",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fornecedores

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome, CNPJ ou email. Example: Distribuidora

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página. Example: 20

GET api/fornecedores/{fornecedor_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fornecedores/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fornecedores/{fornecedor_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fornecedor_id   integer   

The ID of the fornecedor. Example: 16

POST api/fornecedores

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fornecedores" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"pf\",
    \"nome\": \"obcmkftppdwkwpch\",
    \"cpf_cnpj\": \"yi\",
    \"ie\": \"xntiwcnwhdeobvuhfwz\",
    \"email\": \"[email protected]\",
    \"telefone\": \"eqnqzxkcraopk\",
    \"contato\": \"qa\",
    \"cep\": \"zmgstr\",
    \"logradouro\": \"jsliiccnyphtolvtxd\",
    \"numero\": \"kofwhshljtfmcc\",
    \"complemento\": \"mlrvtuvrsfpl\",
    \"bairro\": \"fbfzehtkkdvopqc\",
    \"cidade\": \"m\",
    \"estado\": \"zo\",
    \"observacoes\": \"libero\",
    \"ativo\": false,
    \"lead_time_dias\": 59
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "pf",
    "nome": "obcmkftppdwkwpch",
    "cpf_cnpj": "yi",
    "ie": "xntiwcnwhdeobvuhfwz",
    "email": "[email protected]",
    "telefone": "eqnqzxkcraopk",
    "contato": "qa",
    "cep": "zmgstr",
    "logradouro": "jsliiccnyphtolvtxd",
    "numero": "kofwhshljtfmcc",
    "complemento": "mlrvtuvrsfpl",
    "bairro": "fbfzehtkkdvopqc",
    "cidade": "m",
    "estado": "zo",
    "observacoes": "libero",
    "ativo": false,
    "lead_time_dias": 59
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fornecedores

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

tipo   string   

Example: pf

Must be one of:
  • pf
  • pj
nome   string   

validation.max. Example: obcmkftppdwkwpch

cpf_cnpj   string  optional  

validation.max. Example: yi

ie   string  optional  

validation.max. Example: xntiwcnwhdeobvuhfwz

email   string  optional  

validation.email validation.max. Example: [email protected]

telefone   string  optional  

validation.max. Example: eqnqzxkcraopk

contato   string  optional  

validation.max. Example: qa

cep   string  optional  

validation.max. Example: zmgstr

logradouro   string  optional  

validation.max. Example: jsliiccnyphtolvtxd

numero   string  optional  

validation.max. Example: kofwhshljtfmcc

complemento   string  optional  

validation.max. Example: mlrvtuvrsfpl

bairro   string  optional  

validation.max. Example: fbfzehtkkdvopqc

cidade   string  optional  

validation.max. Example: m

estado   string  optional  

validation.size. Example: zo

observacoes   string  optional  

Example: libero

ativo   boolean  optional  

Example: false

lead_time_dias   integer  optional  

validation.min. Example: 59

PUT api/fornecedores/{fornecedor_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/fornecedores/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"pj\",
    \"nome\": \"wfrxtcwufoiyolywqlb\",
    \"cpf_cnpj\": \"imeakv\",
    \"ie\": \"uvgmnhnpguwbszxdy\",
    \"email\": \"[email protected]\",
    \"telefone\": \"gxlewgteeguvbrkt\",
    \"contato\": \"ykyuxkwo\",
    \"cep\": \"pquewozlw\",
    \"logradouro\": \"cpcopoyeeuqzmtdvnhmj\",
    \"numero\": \"dvtaeoxwxeioeefjbj\",
    \"complemento\": \"teoyhyoxehlxadgnfhiz\",
    \"bairro\": \"gkcxepyopymnduidxetf\",
    \"cidade\": \"brvllwm\",
    \"estado\": \"sc\",
    \"observacoes\": \"voluptatem\",
    \"ativo\": true,
    \"lead_time_dias\": 79
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "pj",
    "nome": "wfrxtcwufoiyolywqlb",
    "cpf_cnpj": "imeakv",
    "ie": "uvgmnhnpguwbszxdy",
    "email": "[email protected]",
    "telefone": "gxlewgteeguvbrkt",
    "contato": "ykyuxkwo",
    "cep": "pquewozlw",
    "logradouro": "cpcopoyeeuqzmtdvnhmj",
    "numero": "dvtaeoxwxeioeefjbj",
    "complemento": "teoyhyoxehlxadgnfhiz",
    "bairro": "gkcxepyopymnduidxetf",
    "cidade": "brvllwm",
    "estado": "sc",
    "observacoes": "voluptatem",
    "ativo": true,
    "lead_time_dias": 79
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/fornecedores/{fornecedor_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fornecedor_id   integer   

The ID of the fornecedor. Example: 8

Body Parameters

tipo   string  optional  

Example: pj

Must be one of:
  • pf
  • pj
nome   string  optional  

validation.max. Example: wfrxtcwufoiyolywqlb

cpf_cnpj   string  optional  

validation.max. Example: imeakv

ie   string  optional  

validation.max. Example: uvgmnhnpguwbszxdy

email   string  optional  

validation.email validation.max. Example: [email protected]

telefone   string  optional  

validation.max. Example: gxlewgteeguvbrkt

contato   string  optional  

validation.max. Example: ykyuxkwo

cep   string  optional  

validation.max. Example: pquewozlw

logradouro   string  optional  

validation.max. Example: cpcopoyeeuqzmtdvnhmj

numero   string  optional  

validation.max. Example: dvtaeoxwxeioeefjbj

complemento   string  optional  

validation.max. Example: teoyhyoxehlxadgnfhiz

bairro   string  optional  

validation.max. Example: gkcxepyopymnduidxetf

cidade   string  optional  

validation.max. Example: brvllwm

estado   string  optional  

validation.size. Example: sc

observacoes   string  optional  

Example: voluptatem

ativo   boolean  optional  

Example: true

lead_time_dias   integer  optional  

validation.min. Example: 79

PATCH api/fornecedores/{fornecedor_id}

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/fornecedores/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"pj\",
    \"nome\": \"jydyiyunvmj\",
    \"cpf_cnpj\": \"gyjxl\",
    \"ie\": \"inqifgepmodtjcznbwzhhaeb\",
    \"email\": \"[email protected]\",
    \"telefone\": \"tx\",
    \"contato\": \"nheegp\",
    \"cep\": \"pagjlri\",
    \"logradouro\": \"ti\",
    \"numero\": \"dkjjbhuyvqmfn\",
    \"complemento\": \"n\",
    \"bairro\": \"aojxqyeabirsyyhmtvzljv\",
    \"cidade\": \"g\",
    \"estado\": \"hr\",
    \"observacoes\": \"sit\",
    \"ativo\": false,
    \"lead_time_dias\": 87
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "pj",
    "nome": "jydyiyunvmj",
    "cpf_cnpj": "gyjxl",
    "ie": "inqifgepmodtjcznbwzhhaeb",
    "email": "[email protected]",
    "telefone": "tx",
    "contato": "nheegp",
    "cep": "pagjlri",
    "logradouro": "ti",
    "numero": "dkjjbhuyvqmfn",
    "complemento": "n",
    "bairro": "aojxqyeabirsyyhmtvzljv",
    "cidade": "g",
    "estado": "hr",
    "observacoes": "sit",
    "ativo": false,
    "lead_time_dias": 87
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PATCH api/fornecedores/{fornecedor_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fornecedor_id   integer   

The ID of the fornecedor. Example: 9

Body Parameters

tipo   string  optional  

Example: pj

Must be one of:
  • pf
  • pj
nome   string  optional  

validation.max. Example: jydyiyunvmj

cpf_cnpj   string  optional  

validation.max. Example: gyjxl

ie   string  optional  

validation.max. Example: inqifgepmodtjcznbwzhhaeb

email   string  optional  

validation.email validation.max. Example: [email protected]

telefone   string  optional  

validation.max. Example: tx

contato   string  optional  

validation.max. Example: nheegp

cep   string  optional  

validation.max. Example: pagjlri

logradouro   string  optional  

validation.max. Example: ti

numero   string  optional  

validation.max. Example: dkjjbhuyvqmfn

complemento   string  optional  

validation.max. Example: n

bairro   string  optional  

validation.max. Example: aojxqyeabirsyyhmtvzljv

cidade   string  optional  

validation.max. Example: g

estado   string  optional  

validation.size. Example: hr

observacoes   string  optional  

Example: sit

ativo   boolean  optional  

Example: false

lead_time_dias   integer  optional  

validation.min. Example: 87

DELETE api/fornecedores/{fornecedor_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/fornecedores/10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fornecedores/10"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/fornecedores/{fornecedor_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

fornecedor_id   integer   

The ID of the fornecedor. Example: 10

Tenant — Catálogo

Categorias de produtos com suporte a subcategorias (2 níveis).

Listar categorias

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/categorias?raiz=1&ativo=1&per_page=100" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/categorias"
);

const params = {
    "raiz": "1",
    "ativo": "1",
    "per_page": "100",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/categorias

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

raiz   boolean  optional  

Se true, retorna apenas categorias raiz com filhos embutidos. Example: true

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página. Example: 100

POST api/categorias

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/categorias" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"odjupknuoahm\",
    \"descricao\": \"ixhlvjdkazvpoy\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/categorias"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "odjupknuoahm",
    "descricao": "ixhlvjdkazvpoy",
    "ativo": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/categorias

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

parent_id   string  optional  

The id of an existing record in the categorias table.

nome   string   

validation.max. Example: odjupknuoahm

descricao   string  optional  

validation.max. Example: ixhlvjdkazvpoy

ativo   boolean  optional  

Example: true

GET api/categorias/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/categorias/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/categorias/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/categorias/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the categoria. Example: 3

PUT api/categorias/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/categorias/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"utbaimkmyreibzgnojvvmtms\",
    \"descricao\": \"qgyfsnmtqwbqcnenrkerswyu\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/categorias/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "utbaimkmyreibzgnojvvmtms",
    "descricao": "qgyfsnmtqwbqcnenrkerswyu",
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/categorias/{id}

PATCH api/categorias/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the categoria. Example: 4

Body Parameters

parent_id   string  optional  

The id of an existing record in the categorias table.

nome   string  optional  

validation.max. Example: utbaimkmyreibzgnojvvmtms

descricao   string  optional  

validation.max. Example: qgyfsnmtqwbqcnenrkerswyu

ativo   boolean  optional  

Example: true

DELETE api/categorias/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/categorias/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/categorias/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/categorias/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the categoria. Example: 7

Listar marcas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/marcas?search=Nike&ativo=1&per_page=50" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/marcas"
);

const params = {
    "search": "Nike",
    "ativo": "1",
    "per_page": "50",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/marcas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome da marca. Example: Nike

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página. Example: 50

POST api/marcas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/marcas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"rbmryfizuyezgtc\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/marcas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "rbmryfizuyezgtc",
    "ativo": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/marcas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: rbmryfizuyezgtc

ativo   boolean  optional  

Example: false

GET api/marcas/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/marcas/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/marcas/6"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/marcas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the marca. Example: 6

PUT api/marcas/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/marcas/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"vsgltudglkshupjzkqutsqv\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/marcas/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "vsgltudglkshupjzkqutsqv",
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/marcas/{id}

PATCH api/marcas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the marca. Example: 15

Body Parameters

nome   string   

validation.max. Example: vsgltudglkshupjzkqutsqv

ativo   boolean  optional  

Example: true

DELETE api/marcas/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/marcas/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/marcas/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/marcas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the marca. Example: 16

Listar fabricantes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fabricantes?search=Nestl%C3%A9&ativo=1&per_page=50" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fabricantes"
);

const params = {
    "search": "Nestlé",
    "ativo": "1",
    "per_page": "50",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fabricantes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome do fabricante. Example: Nestlé

ativo   boolean  optional  

Filtrar por status. Example: true

per_page   integer  optional  

Itens por página. Example: 50

POST api/fabricantes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fabricantes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"lyngo\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fabricantes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "lyngo",
    "ativo": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fabricantes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: lyngo

ativo   boolean  optional  

Example: false

GET api/fabricantes/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fabricantes/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fabricantes/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fabricantes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the fabricante. Example: 15

PUT api/fabricantes/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/fabricantes/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"auzflihcymr\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fabricantes/18"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "auzflihcymr",
    "ativo": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/fabricantes/{id}

PATCH api/fabricantes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the fabricante. Example: 18

Body Parameters

nome   string   

validation.max. Example: auzflihcymr

ativo   boolean  optional  

Example: false

DELETE api/fabricantes/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/fabricantes/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fabricantes/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/fabricantes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the fabricante. Example: 7

Tenant — Produtos

Cadastro de produtos e serviços com controle de estoque. tipo: produto | servico. Preços retornam como strings decimais — converta com double.parse() no Dart.

Retorna lista simplificada de produtos ativos para cache local no app mobile. Inclui apenas campos necessários para exibição e registro de pedidos offline. Suporta filtro por updated_since para sincronização incremental.

Listar produtos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos?search=Caneta&tipo=produto&categoria_id=3&ativo=1&estoque_critico=1&per_page=20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos"
);

const params = {
    "search": "Caneta",
    "tipo": "produto",
    "categoria_id": "3",
    "ativo": "1",
    "estoque_critico": "1",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

search   string  optional  

Busca por nome ou código. Example: Caneta

tipo   string  optional  

Filtrar por tipo: produto ou servico. Example: produto

categoria_id   integer  optional  

Filtrar por categoria. Example: 3

ativo   boolean  optional  

Filtrar por status. Example: true

estoque_critico   boolean  optional  

Se true, retorna apenas itens abaixo do mínimo. Example: true

per_page   integer  optional  

Itens por página. Example: 20

POST api/produtos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/produtos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"codigo\": \"bhtucpsapvrlf\",
    \"codigo_barras\": \"jsntyxaijebjktwasjpjyo\",
    \"nome\": \"itnnnhmvuisqebyeqjojmt\",
    \"descricao\": \"ipsam\",
    \"unidade_medida\": \"rgmgrdbhqa\",
    \"tipo\": \"servico\",
    \"preco_custo\": 37,
    \"preco_venda\": 90,
    \"margem_lucro\": 66,
    \"estoque_atual\": 0,
    \"estoque_minimo\": 86,
    \"ponto_pedido\": 31,
    \"multiplo_compra\": 80,
    \"compra_minima\": 60,
    \"ncm\": \"wh\",
    \"cst\": \"vjnv\",
    \"origem_mercadoria\": \"t\",
    \"tipo_item\": \"rt\",
    \"cfop\": \"qyfq\",
    \"csosn\": \"vw\",
    \"cst_pis\": \"kf\",
    \"cst_cofins\": \"h\",
    \"cst_ipi\": \"h\",
    \"aliquota_icms\": 7,
    \"mva_st\": 11,
    \"aliquota_pis\": 23,
    \"aliquota_cofins\": 4,
    \"aliquota_ipi\": 20,
    \"cst_ibscbs\": \"id\",
    \"cclass_trib\": \"baf\",
    \"aliquota_ibs_uf\": 11,
    \"aliquota_ibs_mun\": 20,
    \"aliquota_cbs\": 1,
    \"cst_is\": \"p\",
    \"cclass_trib_is\": \"pb\",
    \"aliquota_is\": 7,
    \"monofasico\": true,
    \"tipo_monofasico\": \"qevqmmdfybzga\",
    \"adrem_ibs\": 3,
    \"adrem_cbs\": 20,
    \"credito_presumido_percentual\": 6,
    \"cred_presumido_codigo\": \"ah\",
    \"controla_estoque\": true,
    \"controla_lote\": true,
    \"controla_validade\": true,
    \"registro_anvisa\": \"zdkoitrmgkkauxwamiclqarip\",
    \"principio_ativo\": \"obsgikdlrwmklwzn\",
    \"usa_grade\": true,
    \"usa_balanca\": false,
    \"balanca_tipo\": \"peso\",
    \"codigo_balanca_prefixo\": \"d\",
    \"controla_numero_serie\": true,
    \"garantia_meses\": 17,
    \"ativo\": true,
    \"disponivel_todas_empresas\": true,
    \"empresa_ids\": [
        17
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "codigo": "bhtucpsapvrlf",
    "codigo_barras": "jsntyxaijebjktwasjpjyo",
    "nome": "itnnnhmvuisqebyeqjojmt",
    "descricao": "ipsam",
    "unidade_medida": "rgmgrdbhqa",
    "tipo": "servico",
    "preco_custo": 37,
    "preco_venda": 90,
    "margem_lucro": 66,
    "estoque_atual": 0,
    "estoque_minimo": 86,
    "ponto_pedido": 31,
    "multiplo_compra": 80,
    "compra_minima": 60,
    "ncm": "wh",
    "cst": "vjnv",
    "origem_mercadoria": "t",
    "tipo_item": "rt",
    "cfop": "qyfq",
    "csosn": "vw",
    "cst_pis": "kf",
    "cst_cofins": "h",
    "cst_ipi": "h",
    "aliquota_icms": 7,
    "mva_st": 11,
    "aliquota_pis": 23,
    "aliquota_cofins": 4,
    "aliquota_ipi": 20,
    "cst_ibscbs": "id",
    "cclass_trib": "baf",
    "aliquota_ibs_uf": 11,
    "aliquota_ibs_mun": 20,
    "aliquota_cbs": 1,
    "cst_is": "p",
    "cclass_trib_is": "pb",
    "aliquota_is": 7,
    "monofasico": true,
    "tipo_monofasico": "qevqmmdfybzga",
    "adrem_ibs": 3,
    "adrem_cbs": 20,
    "credito_presumido_percentual": 6,
    "cred_presumido_codigo": "ah",
    "controla_estoque": true,
    "controla_lote": true,
    "controla_validade": true,
    "registro_anvisa": "zdkoitrmgkkauxwamiclqarip",
    "principio_ativo": "obsgikdlrwmklwzn",
    "usa_grade": true,
    "usa_balanca": false,
    "balanca_tipo": "peso",
    "codigo_balanca_prefixo": "d",
    "controla_numero_serie": true,
    "garantia_meses": 17,
    "ativo": true,
    "disponivel_todas_empresas": true,
    "empresa_ids": [
        17
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/produtos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

categoria_id   string  optional  

The id of an existing record in the categorias table.

marca_id   string  optional  

The id of an existing record in the marcas table.

fabricante_id   string  optional  

The id of an existing record in the fabricantes table.

grade_id   string  optional  

The id of an existing record in the grades table.

codigo   string  optional  

validation.max. Example: bhtucpsapvrlf

codigo_barras   string  optional  

validation.max. Example: jsntyxaijebjktwasjpjyo

nome   string   

validation.max. Example: itnnnhmvuisqebyeqjojmt

descricao   string  optional  

Example: ipsam

unidade_medida   string  optional  

validation.max. Example: rgmgrdbhqa

tipo   string   

Example: servico

Must be one of:
  • produto
  • servico
preco_custo   number  optional  

validation.min. Example: 37

preco_venda   number   

validation.min. Example: 90

margem_lucro   number  optional  

validation.min. Example: 66

estoque_atual   number  optional  

validation.min. Example: 0

estoque_minimo   number  optional  

validation.min. Example: 86

ponto_pedido   number  optional  

validation.min. Example: 31

multiplo_compra   number  optional  

validation.min. Example: 80

compra_minima   number  optional  

validation.min. Example: 60

ncm   string  optional  

validation.max. Example: wh

cst   string  optional  

validation.max. Example: vjnv

origem_mercadoria   string  optional  

validation.max. Example: t

tipo_item   string  optional  

validation.max. Example: rt

cfop   string  optional  

validation.max. Example: qyfq

csosn   string  optional  

validation.max. Example: vw

cst_pis   string  optional  

validation.max. Example: kf

cst_cofins   string  optional  

validation.max. Example: h

cst_ipi   string  optional  

validation.max. Example: h

aliquota_icms   number  optional  

validation.min validation.max. Example: 7

mva_st   number  optional  

validation.min validation.max. Example: 11

aliquota_pis   number  optional  

validation.min validation.max. Example: 23

aliquota_cofins   number  optional  

validation.min validation.max. Example: 4

aliquota_ipi   number  optional  

validation.min validation.max. Example: 20

cst_ibscbs   string  optional  

validation.max. Example: id

cclass_trib   string  optional  

validation.max. Example: baf

aliquota_ibs_uf   number  optional  

validation.min validation.max. Example: 11

aliquota_ibs_mun   number  optional  

validation.min validation.max. Example: 20

aliquota_cbs   number  optional  

validation.min validation.max. Example: 1

cst_is   string  optional  

validation.max. Example: p

cclass_trib_is   string  optional  

validation.max. Example: pb

aliquota_is   number  optional  

validation.min validation.max. Example: 7

monofasico   boolean  optional  

Example: true

tipo_monofasico   string  optional  

validation.max. Example: qevqmmdfybzga

adrem_ibs   number  optional  

validation.min validation.max. Example: 3

adrem_cbs   number  optional  

validation.min validation.max. Example: 20

credito_presumido_percentual   number  optional  

validation.min validation.max. Example: 6

cred_presumido_codigo   string  optional  

validation.max. Example: ah

controla_estoque   boolean  optional  

Example: true

controla_lote   boolean  optional  

Example: true

controla_validade   boolean  optional  

Example: true

registro_anvisa   string  optional  

validation.max. Example: zdkoitrmgkkauxwamiclqarip

principio_ativo   string  optional  

validation.max. Example: obsgikdlrwmklwzn

usa_grade   boolean  optional  

Example: true

usa_balanca   boolean  optional  

Example: false

balanca_tipo   string  optional  

Example: peso

Must be one of:
  • peso
  • preco
codigo_balanca_prefixo   string  optional  

validation.max. Example: d

controla_numero_serie   boolean  optional  

Example: true

garantia_meses   integer  optional  

validation.min validation.max. Example: 17

ativo   boolean  optional  

Example: true

disponivel_todas_empresas   boolean  optional  

Example: true

empresa_ids   integer[]  optional  

The id of an existing record in the empresas table.

GET api/produtos/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the produto. Example: 2

PUT api/produtos/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/produtos/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"codigo\": \"vqsmlujgmdhmoh\",
    \"codigo_barras\": \"mbggktjhcjtgpecmgtj\",
    \"nome\": \"xdfblb\",
    \"descricao\": \"voluptatem\",
    \"unidade_medida\": \"jkmjq\",
    \"tipo\": \"produto\",
    \"preco_custo\": 90,
    \"preco_venda\": 67,
    \"margem_lucro\": 69,
    \"estoque_minimo\": 85,
    \"ponto_pedido\": 79,
    \"multiplo_compra\": 7,
    \"compra_minima\": 8,
    \"ncm\": \"muwdc\",
    \"cst\": \"ft\",
    \"origem_mercadoria\": \"g\",
    \"tipo_item\": \"m\",
    \"cfop\": \"wn\",
    \"csosn\": \"xa\",
    \"cst_pis\": \"xs\",
    \"cst_cofins\": \"ev\",
    \"cst_ipi\": \"vg\",
    \"aliquota_icms\": 9,
    \"mva_st\": 17,
    \"aliquota_pis\": 14,
    \"aliquota_cofins\": 1,
    \"aliquota_ipi\": 2,
    \"cst_ibscbs\": \"in\",
    \"cclass_trib\": \"k\",
    \"aliquota_ibs_uf\": 6,
    \"aliquota_ibs_mun\": 3,
    \"aliquota_cbs\": 20,
    \"cst_is\": \"qq\",
    \"cclass_trib_is\": \"a\",
    \"aliquota_is\": 16,
    \"monofasico\": false,
    \"tipo_monofasico\": \"avrqithxx\",
    \"adrem_ibs\": 15,
    \"adrem_cbs\": 10,
    \"credito_presumido_percentual\": 14,
    \"cred_presumido_codigo\": \"n\",
    \"controla_estoque\": true,
    \"controla_lote\": false,
    \"controla_validade\": false,
    \"registro_anvisa\": \"el\",
    \"principio_ativo\": \"iyizxjvzjqdpfaziuvxfwyggl\",
    \"usa_grade\": true,
    \"usa_balanca\": true,
    \"balanca_tipo\": \"preco\",
    \"codigo_balanca_prefixo\": \"zq\",
    \"controla_numero_serie\": false,
    \"garantia_meses\": 4,
    \"ativo\": false,
    \"disponivel_todas_empresas\": true,
    \"empresa_ids\": [
        15
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "codigo": "vqsmlujgmdhmoh",
    "codigo_barras": "mbggktjhcjtgpecmgtj",
    "nome": "xdfblb",
    "descricao": "voluptatem",
    "unidade_medida": "jkmjq",
    "tipo": "produto",
    "preco_custo": 90,
    "preco_venda": 67,
    "margem_lucro": 69,
    "estoque_minimo": 85,
    "ponto_pedido": 79,
    "multiplo_compra": 7,
    "compra_minima": 8,
    "ncm": "muwdc",
    "cst": "ft",
    "origem_mercadoria": "g",
    "tipo_item": "m",
    "cfop": "wn",
    "csosn": "xa",
    "cst_pis": "xs",
    "cst_cofins": "ev",
    "cst_ipi": "vg",
    "aliquota_icms": 9,
    "mva_st": 17,
    "aliquota_pis": 14,
    "aliquota_cofins": 1,
    "aliquota_ipi": 2,
    "cst_ibscbs": "in",
    "cclass_trib": "k",
    "aliquota_ibs_uf": 6,
    "aliquota_ibs_mun": 3,
    "aliquota_cbs": 20,
    "cst_is": "qq",
    "cclass_trib_is": "a",
    "aliquota_is": 16,
    "monofasico": false,
    "tipo_monofasico": "avrqithxx",
    "adrem_ibs": 15,
    "adrem_cbs": 10,
    "credito_presumido_percentual": 14,
    "cred_presumido_codigo": "n",
    "controla_estoque": true,
    "controla_lote": false,
    "controla_validade": false,
    "registro_anvisa": "el",
    "principio_ativo": "iyizxjvzjqdpfaziuvxfwyggl",
    "usa_grade": true,
    "usa_balanca": true,
    "balanca_tipo": "preco",
    "codigo_balanca_prefixo": "zq",
    "controla_numero_serie": false,
    "garantia_meses": 4,
    "ativo": false,
    "disponivel_todas_empresas": true,
    "empresa_ids": [
        15
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/produtos/{id}

PATCH api/produtos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the produto. Example: 19

Body Parameters

categoria_id   string  optional  

The id of an existing record in the categorias table.

marca_id   string  optional  

The id of an existing record in the marcas table.

fabricante_id   string  optional  

The id of an existing record in the fabricantes table.

grade_id   string  optional  

The id of an existing record in the grades table.

codigo   string  optional  

validation.max. Example: vqsmlujgmdhmoh

codigo_barras   string  optional  

validation.max. Example: mbggktjhcjtgpecmgtj

nome   string  optional  

validation.max. Example: xdfblb

descricao   string  optional  

Example: voluptatem

unidade_medida   string  optional  

validation.max. Example: jkmjq

tipo   string  optional  

Example: produto

Must be one of:
  • produto
  • servico
preco_custo   number  optional  

validation.min. Example: 90

preco_venda   number  optional  

validation.min. Example: 67

margem_lucro   number  optional  

validation.min. Example: 69

estoque_minimo   number  optional  

validation.min. Example: 85

ponto_pedido   number  optional  

validation.min. Example: 79

multiplo_compra   number  optional  

validation.min. Example: 7

compra_minima   number  optional  

validation.min. Example: 8

ncm   string  optional  

validation.max. Example: muwdc

cst   string  optional  

validation.max. Example: ft

origem_mercadoria   string  optional  

validation.max. Example: g

tipo_item   string  optional  

validation.max. Example: m

cfop   string  optional  

validation.max. Example: wn

csosn   string  optional  

validation.max. Example: xa

cst_pis   string  optional  

validation.max. Example: xs

cst_cofins   string  optional  

validation.max. Example: ev

cst_ipi   string  optional  

validation.max. Example: vg

aliquota_icms   number  optional  

validation.min validation.max. Example: 9

mva_st   number  optional  

validation.min validation.max. Example: 17

aliquota_pis   number  optional  

validation.min validation.max. Example: 14

aliquota_cofins   number  optional  

validation.min validation.max. Example: 1

aliquota_ipi   number  optional  

validation.min validation.max. Example: 2

cst_ibscbs   string  optional  

validation.max. Example: in

cclass_trib   string  optional  

validation.max. Example: k

aliquota_ibs_uf   number  optional  

validation.min validation.max. Example: 6

aliquota_ibs_mun   number  optional  

validation.min validation.max. Example: 3

aliquota_cbs   number  optional  

validation.min validation.max. Example: 20

cst_is   string  optional  

validation.max. Example: qq

cclass_trib_is   string  optional  

validation.max. Example: a

aliquota_is   number  optional  

validation.min validation.max. Example: 16

monofasico   boolean  optional  

Example: false

tipo_monofasico   string  optional  

validation.max. Example: avrqithxx

adrem_ibs   number  optional  

validation.min validation.max. Example: 15

adrem_cbs   number  optional  

validation.min validation.max. Example: 10

credito_presumido_percentual   number  optional  

validation.min validation.max. Example: 14

cred_presumido_codigo   string  optional  

validation.max. Example: n

controla_estoque   boolean  optional  

Example: true

controla_lote   boolean  optional  

Example: false

controla_validade   boolean  optional  

Example: false

registro_anvisa   string  optional  

validation.max. Example: el

principio_ativo   string  optional  

validation.max. Example: iyizxjvzjqdpfaziuvxfwyggl

usa_grade   boolean  optional  

Example: true

usa_balanca   boolean  optional  

Example: true

balanca_tipo   string  optional  

Example: preco

Must be one of:
  • peso
  • preco
codigo_balanca_prefixo   string  optional  

validation.max. Example: zq

controla_numero_serie   boolean  optional  

Example: false

garantia_meses   integer  optional  

validation.min validation.max. Example: 4

ativo   boolean  optional  

Example: false

disponivel_todas_empresas   boolean  optional  

Example: true

empresa_ids   integer[]  optional  

The id of an existing record in the empresas table.

DELETE api/produtos/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/produtos/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/produtos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the produto. Example: 2

GET api/produtos/{produto_id}/movimentacoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/5/movimentacoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/5/movimentacoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/movimentacoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 5

POST api/produtos/{produto_id}/ajuste-estoque

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/produtos/7/ajuste-estoque" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"quantidade\": 52,
    \"motivo\": \"lpmpdwlneefejdo\",
    \"deposito_id\": 11
}"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/7/ajuste-estoque"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "quantidade": 52,
    "motivo": "lpmpdwlneefejdo",
    "deposito_id": 11
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/produtos/{produto_id}/ajuste-estoque

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 7

Body Parameters

quantidade   number   

validation.min. Example: 52

motivo   string   

validation.max. Example: lpmpdwlneefejdo

deposito_id   integer  optional  

The id of an existing record in the depositos table. Example: 11

Upload da foto do produto (disco público). Retorna a URL salva.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/produtos/17/imagem" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "imagem=@/tmp/phpHLLeBa" 
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/17/imagem"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('imagem', document.querySelector('input[name="imagem"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/produtos/{produto_id}/imagem

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 17

Body Parameters

imagem   file   

validation.image validation.max. Example: /tmp/phpHLLeBa

Remove a foto do produto.

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/produtos/11/imagem" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/11/imagem"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/produtos/{produto_id}/imagem

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 11

Tenant — Estoque

GET api/grades

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/grades" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/grades"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/grades

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/grades

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/grades" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"fi\",
    \"descricao\": \"non\",
    \"ativo\": true,
    \"atributos\": [
        {
            \"nome\": \"behgscrlh\",
            \"opcoes\": [
                \"yp\"
            ]
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/grades"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "fi",
    "descricao": "non",
    "ativo": true,
    "atributos": [
        {
            "nome": "behgscrlh",
            "opcoes": [
                "yp"
            ]
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/grades

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: fi

descricao   string  optional  

Example: non

ativo   boolean  optional  

Example: true

atributos   object[]  optional  
nome   string   

validation.max. Example: behgscrlh

opcoes   string[]   

validation.max.

GET api/grades/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/grades/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/grades/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/grades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the grade. Example: 14

PUT api/grades/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/grades/13" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"aaomhmfltvvtgnqosxkhvix\",
    \"descricao\": \"saepe\",
    \"ativo\": false,
    \"atributos\": [
        {
            \"nome\": \"zucd\",
            \"opcoes\": [
                \"ufhf\"
            ]
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/grades/13"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "aaomhmfltvvtgnqosxkhvix",
    "descricao": "saepe",
    "ativo": false,
    "atributos": [
        {
            "nome": "zucd",
            "opcoes": [
                "ufhf"
            ]
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/grades/{id}

PATCH api/grades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the grade. Example: 13

Body Parameters

nome   string  optional  

validation.max. Example: aaomhmfltvvtgnqosxkhvix

descricao   string  optional  

Example: saepe

ativo   boolean  optional  

Example: false

atributos   object[]  optional  
nome   string   

validation.max. Example: zucd

opcoes   string[]   

validation.max.

DELETE api/grades/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/grades/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/grades/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/grades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the grade. Example: 15

Controle de validade (FEFO): lotes vencidos e a vencer dentro de N dias, com saldo > 0, ordenados pela validade mais próxima.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/lotes/validade?dias=30" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes/validade"
);

const params = {
    "dias": "30",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/lotes/validade

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

dias   integer  optional  

Janela de alerta em dias (default 30). Example: 30

Lote vigente de um produto = o que o FEFO consumirá primeiro (ativo, saldo > 0, menor validade). Usado pelo PDV para alertar validade.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/lotes/vigente/at" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes/vigente/at"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/lotes/vigente/{produtoId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produtoId   string   

Example: at

GET api/lotes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/lotes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/lotes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/lotes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/lotes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": \"non\",
    \"numero_lote\": \"smqsfsiclplc\",
    \"data_fabricacao\": \"2026-06-05T15:42:57\",
    \"data_validade\": \"2026-06-05T15:42:57\",
    \"quantidade_inicial\": 82,
    \"custo_unitario\": 38,
    \"observacoes\": \"officiis\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": "non",
    "numero_lote": "smqsfsiclplc",
    "data_fabricacao": "2026-06-05T15:42:57",
    "data_validade": "2026-06-05T15:42:57",
    "quantidade_inicial": 82,
    "custo_unitario": 38,
    "observacoes": "officiis",
    "ativo": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/lotes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

produto_id   string   

The id of an existing record in the produtos table. Example: non

fornecedor_id   string  optional  

The id of an existing record in the fornecedores table.

numero_lote   string   

validation.max. Example: smqsfsiclplc

data_fabricacao   string  optional  

validation.date. Example: 2026-06-05T15:42:57

data_validade   string  optional  

validation.date. Example: 2026-06-05T15:42:57

quantidade_inicial   number   

validation.min. Example: 82

custo_unitario   number  optional  

validation.min. Example: 38

observacoes   string  optional  

Example: officiis

ativo   boolean  optional  

Example: true

GET api/lotes/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/lotes/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/lotes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the lote. Example: 7

PUT api/lotes/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/lotes/10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"numero_lote\": \"hdxyczhyfblvmjcjamejnq\",
    \"data_fabricacao\": \"2026-06-05T15:43:03\",
    \"data_validade\": \"2026-06-05T15:43:03\",
    \"quantidade_atual\": 10,
    \"custo_unitario\": 23,
    \"observacoes\": \"nemo\",
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes/10"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "numero_lote": "hdxyczhyfblvmjcjamejnq",
    "data_fabricacao": "2026-06-05T15:43:03",
    "data_validade": "2026-06-05T15:43:03",
    "quantidade_atual": 10,
    "custo_unitario": 23,
    "observacoes": "nemo",
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/lotes/{id}

PATCH api/lotes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the lote. Example: 10

Body Parameters

numero_lote   string  optional  

validation.max. Example: hdxyczhyfblvmjcjamejnq

fornecedor_id   string  optional  

The id of an existing record in the fornecedores table.

data_fabricacao   string  optional  

validation.date. Example: 2026-06-05T15:43:03

data_validade   string  optional  

validation.date. Example: 2026-06-05T15:43:03

quantidade_atual   number  optional  

validation.min. Example: 10

custo_unitario   number  optional  

validation.min. Example: 23

observacoes   string  optional  

Example: nemo

ativo   boolean  optional  

Example: true

DELETE api/lotes/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/lotes/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/lotes/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/lotes/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the lote. Example: 19

GET api/importacao/template/{tipo}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/importacao/template/ducimus" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/importacao/template/ducimus"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/importacao/template/{tipo}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tipo   string   

Example: ducimus

POST api/importacao/clientes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/importacao/clientes" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpobpbKP" 
const url = new URL(
    "https://backend.valuor.com.br/api/importacao/clientes"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/importacao/clientes

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpobpbKP

POST api/importacao/fornecedores

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/importacao/fornecedores" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpCOJnAB" 
const url = new URL(
    "https://backend.valuor.com.br/api/importacao/fornecedores"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/importacao/fornecedores

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpCOJnAB

POST api/importacao/produtos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/importacao/produtos" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpIKDKIE" 
const url = new URL(
    "https://backend.valuor.com.br/api/importacao/produtos"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/importacao/produtos

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpIKDKIE

POST api/importacao/financeiro

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/importacao/financeiro" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpcJngDn" 
const url = new URL(
    "https://backend.valuor.com.br/api/importacao/financeiro"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/importacao/financeiro

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpcJngDn

Tenant — Compras

GET api/compras

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/compras" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/compras

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/compras

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"confirmada\",
    \"numero_nota\": \"ewmvkidpratrxqsgyovxrzpr\",
    \"serie\": \"wxfmx\",
    \"chave_nfe\": \"qselznouujjbypjaqfyaoypfxbnvkyxxdpejiotmlsni\",
    \"data_compra\": \"2026-06-05T15:43:50\",
    \"data_entrega\": \"2026-06-05T15:43:50\",
    \"desconto\": 53,
    \"acrescimo\": 33,
    \"observacoes\": \"voluptatem\",
    \"itens\": [
        {
            \"produto_id\": \"saepe\",
            \"quantidade\": 7,
            \"custo_unitario\": 24,
            \"desconto\": 29,
            \"numero_lote\": \"dnxfwzxbltsdzvns\",
            \"data_validade\": \"2026-06-05T15:43:50\"
        }
    ],
    \"pagamentos\": [
        {
            \"forma_pagamento\": \"ab\",
            \"valor\": 76,
            \"data_vencimento\": \"2026-06-05T15:43:50\"
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/compras"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "confirmada",
    "numero_nota": "ewmvkidpratrxqsgyovxrzpr",
    "serie": "wxfmx",
    "chave_nfe": "qselznouujjbypjaqfyaoypfxbnvkyxxdpejiotmlsni",
    "data_compra": "2026-06-05T15:43:50",
    "data_entrega": "2026-06-05T15:43:50",
    "desconto": 53,
    "acrescimo": 33,
    "observacoes": "voluptatem",
    "itens": [
        {
            "produto_id": "saepe",
            "quantidade": 7,
            "custo_unitario": 24,
            "desconto": 29,
            "numero_lote": "dnxfwzxbltsdzvns",
            "data_validade": "2026-06-05T15:43:50"
        }
    ],
    "pagamentos": [
        {
            "forma_pagamento": "ab",
            "valor": 76,
            "data_vencimento": "2026-06-05T15:43:50"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

fornecedor_id   string  optional  

The id of an existing record in the fornecedores table.

status   string  optional  

Example: confirmada

Must be one of:
  • rascunho
  • confirmada
numero_nota   string  optional  

validation.max. Example: ewmvkidpratrxqsgyovxrzpr

serie   string  optional  

validation.max. Example: wxfmx

chave_nfe   string  optional  

validation.size. Example: qselznouujjbypjaqfyaoypfxbnvkyxxdpejiotmlsni

data_compra   string   

validation.date. Example: 2026-06-05T15:43:50

data_entrega   string  optional  

validation.date. Example: 2026-06-05T15:43:50

desconto   number  optional  

validation.min. Example: 53

acrescimo   number  optional  

validation.min. Example: 33

observacoes   string  optional  

Example: voluptatem

itens   object[]   

validation.min.

produto_id   string   

The id of an existing record in the produtos table. Example: saepe

quantidade   number   

validation.min. Example: 7

custo_unitario   number   

validation.min. Example: 24

desconto   number  optional  

validation.min. Example: 29

lote_id   string  optional  

The id of an existing record in the lotes table.

numero_lote   string  optional  

validation.max. Example: dnxfwzxbltsdzvns

data_validade   string  optional  

validation.date. Example: 2026-06-05T15:43:50

pagamentos   object[]  optional  
forma_pagamento   string   

Example: ab

valor   number   

validation.min. Example: 76

data_vencimento   string   

validation.date. Example: 2026-06-05T15:43:50

GET api/compras/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/compras/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/compras/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the compra. Example: 14

DELETE api/compras/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/compras/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/compras/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the compra. Example: 3

POST api/compras/{compra_id}/enviar-aprovacao

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/15/enviar-aprovacao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/15/enviar-aprovacao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/enviar-aprovacao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 15

POST api/compras/{compra_id}/confirmar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/14/confirmar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/14/confirmar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/confirmar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 14

POST api/compras/{compra_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/2/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/2/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 2

POST api/compras/{compra_id}/aprovar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/6/aprovar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/6/aprovar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/aprovar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 6

POST api/compras/{compra_id}/rejeitar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/5/rejeitar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"motivo\": \"knzcxlthfyqudnifmis\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/5/rejeitar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "motivo": "knzcxlthfyqudnifmis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/rejeitar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 5

Body Parameters

motivo   string  optional  

validation.max. Example: knzcxlthfyqudnifmis

Tenant — Vendas

Gerenciamento de vendas e orçamentos. Status possíveis: orcamento, confirmada, faturada, cancelada. Origens possíveis: web, pdv, mobile.

Listar vendas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/vendas?status=confirmada&cliente_id=1&data_inicio=2026-05-01&data_fim=2026-05-31&per_page=20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas"
);

const params = {
    "status": "confirmada",
    "cliente_id": "1",
    "data_inicio": "2026-05-01",
    "data_fim": "2026-05-31",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/vendas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

status   string  optional  

Filtrar por status. Example: confirmada

cliente_id   integer  optional  

ID do cliente. Example: 1

data_inicio   string  optional  

date Data inicial (YYYY-MM-DD). Example: 2026-05-01

data_fim   string  optional  

date Data final (YYYY-MM-DD). Example: 2026-05-31

per_page   integer  optional  

Itens por página. Example: 20

Criar venda

Cria uma venda transacionalmente: valida estoque, gera número sequencial, reduz estoque e cria pagamentos automaticamente.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/vendas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cliente_id\": 1,
    \"status\": \"confirmada\",
    \"origem\": \"balcao\",
    \"desconto\": 10,
    \"acrescimo\": 0,
    \"observacoes\": \"Cliente preferencial\",
    \"data_venda\": \"2026-06-05T15:44:16\",
    \"itens\": [
        {
            \"produto_id\": 5,
            \"quantidade\": 2,
            \"preco_unitario\": 49.9,
            \"desconto\": 77,
            \"variacao_id\": 10,
            \"variacao_descricao\": \"ri\"
        }
    ],
    \"pagamentos\": [
        {
            \"forma_pagamento\": \"pix\",
            \"valor\": 89.8,
            \"data_vencimento\": \"2026-05-22\",
            \"data_pagamento\": \"2026-06-05T15:44:16\"
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cliente_id": 1,
    "status": "confirmada",
    "origem": "balcao",
    "desconto": 10,
    "acrescimo": 0,
    "observacoes": "Cliente preferencial",
    "data_venda": "2026-06-05T15:44:16",
    "itens": [
        {
            "produto_id": 5,
            "quantidade": 2,
            "preco_unitario": 49.9,
            "desconto": 77,
            "variacao_id": 10,
            "variacao_descricao": "ri"
        }
    ],
    "pagamentos": [
        {
            "forma_pagamento": "pix",
            "valor": 89.8,
            "data_vencimento": "2026-05-22",
            "data_pagamento": "2026-06-05T15:44:16"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201):


{
    "data": {
        "id": 1,
        "numero": "00000001",
        "status": "confirmada",
        "total": "89.80"
    }
}
 

Example response (422):


{
    "message": "Estoque insuficiente para Produto X."
}
 

Request      

POST api/vendas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   string  optional  

The id of an existing record in the empresas table.

deposito_id   string  optional  

The id of an existing record in the depositos table.

cliente_id   integer  optional  

ID do cliente (opcional). Example: 1

vendedor_id   string  optional  

The id of an existing record in the users table.

status   string  optional  

Status inicial: orcamento ou confirmada. Example: confirmada

origem   string  optional  

Example: balcao

Must be one of:
  • balcao
  • pdv
  • online
desconto   number  optional  

Desconto total em R$. Example: 10

acrescimo   number  optional  

Acréscimo total em R$. Example: 0

observacoes   string  optional  

Observações internas. Example: Cliente preferencial

data_venda   string  optional  

validation.date. Example: 2026-06-05T15:44:16

itens   object[]   

Lista de itens da venda.

produto_id   integer   

ID do produto. Example: 5

quantidade   number   

Quantidade. Example: 2

preco_unitario   number   

Preço unitário. Example: 49.9

desconto   number  optional  

validation.min. Example: 77

variacao_id   integer  optional  

Example: 10

variacao_descricao   string  optional  

validation.max. Example: ri

pagamentos   object[]   

Lista de pagamentos.

forma_pagamento   string   

Forma: dinheiro, pix, cartao_credito, cartao_debito, boleto, transferencia, cheque, crediario. Example: pix

valor   number   

Valor do pagamento. Example: 89.8

data_vencimento   date   

Vencimento (YYYY-MM-DD). Example: 2026-05-22

data_pagamento   string  optional  

validation.date. Example: 2026-06-05T15:44:16

Buscar venda (com itens e pagamentos)

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/vendas/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/18"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/vendas/{venda_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 18

Atualizar / retomar venda pendente (orçamento ou pré-venda).

Permite editar itens, converter orçamento↔pré-venda e CONCLUIR (status confirmada), quando os pagamentos informados geram os recebíveis.

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/vendas/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"confirmada\",
    \"origem\": \"pdv\",
    \"desconto\": 88,
    \"acrescimo\": 3,
    \"observacoes\": \"veritatis\",
    \"data_venda\": \"2026-06-05T15:44:17\",
    \"itens\": [
        {
            \"produto_id\": \"totam\",
            \"quantidade\": 32,
            \"preco_unitario\": 33,
            \"desconto\": 7,
            \"variacao_id\": 6,
            \"variacao_descricao\": \"afyxaltfvfbbtsqtdotccakjn\"
        }
    ],
    \"pagamentos\": [
        {
            \"forma_pagamento\": \"cartao_credito\",
            \"valor\": 75,
            \"data_vencimento\": \"2026-06-05T15:44:17\",
            \"data_pagamento\": \"2026-06-05T15:44:17\"
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "confirmada",
    "origem": "pdv",
    "desconto": 88,
    "acrescimo": 3,
    "observacoes": "veritatis",
    "data_venda": "2026-06-05T15:44:17",
    "itens": [
        {
            "produto_id": "totam",
            "quantidade": 32,
            "preco_unitario": 33,
            "desconto": 7,
            "variacao_id": 6,
            "variacao_descricao": "afyxaltfvfbbtsqtdotccakjn"
        }
    ],
    "pagamentos": [
        {
            "forma_pagamento": "cartao_credito",
            "valor": 75,
            "data_vencimento": "2026-06-05T15:44:17",
            "data_pagamento": "2026-06-05T15:44:17"
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/vendas/{venda_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 7

Body Parameters

empresa_id   string  optional  

The id of an existing record in the empresas table.

deposito_id   string  optional  

The id of an existing record in the depositos table.

cliente_id   string  optional  

The id of an existing record in the clientes table.

vendedor_id   string  optional  

The id of an existing record in the users table.

status   string  optional  

Example: confirmada

Must be one of:
  • orcamento
  • prevenda
  • confirmada
  • faturada
origem   string  optional  

Example: pdv

Must be one of:
  • balcao
  • pdv
  • online
desconto   number  optional  

validation.min. Example: 88

acrescimo   number  optional  

validation.min. Example: 3

observacoes   string  optional  

Example: veritatis

data_venda   string  optional  

validation.date. Example: 2026-06-05T15:44:17

itens   object[]   

validation.min.

produto_id   string   

The id of an existing record in the produtos table. Example: totam

quantidade   number   

validation.min. Example: 32

preco_unitario   number  optional  

validation.min. Example: 33

desconto   number  optional  

validation.min. Example: 7

variacao_id   integer  optional  

Example: 6

variacao_descricao   string  optional  

validation.max. Example: afyxaltfvfbbtsqtdotccakjn

pagamentos   object[]  optional  
forma_pagamento   string   

Example: cartao_credito

Must be one of:
  • dinheiro
  • pix
  • cartao_credito
  • cartao_debito
  • boleto
  • transferencia
  • cheque
  • outros
valor   number   

validation.min. Example: 75

data_vencimento   string  optional  

validation.date. Example: 2026-06-05T15:44:17

data_pagamento   string  optional  

validation.date. Example: 2026-06-05T15:44:17

DELETE api/vendas/{venda_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/vendas/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/vendas/{venda_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 9

Confirmar orçamento

Confirma um orçamento, alterando seu status para confirmada.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/vendas/20/confirmar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/20/confirmar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "status": "confirmada"
    }
}
 

Example response (422):


{
    "message": "Apenas orçamentos podem ser confirmados."
}
 

Request      

POST api/vendas/{venda_id}/confirmar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 20

Cancelar venda

Cancela a venda, reverte o estoque dos itens e cancela pagamentos pendentes.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/vendas/16/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/16/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "status": "cancelada"
    }
}
 

Example response (422):


{
    "message": "Venda já está cancelada."
}
 

Request      

POST api/vendas/{venda_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 16

Emitir NF-e a partir de uma venda

Usa NfePayloadBuilder para montar o payload completo no formato da API Fiscal e chama POST /nfe/transmitir (gera + assina + envia para SEFAZ em uma chamada). O resultado é salvo na venda (nfe_chave, nfe_protocolo, nfe_status, etc.).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/vendas/11/emitir-nfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/11/emitir-nfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/vendas/{venda_id}/emitir-nfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 11

Documentos fiscais permitidos para a venda (regra do Cliente Consumidor).

Fonte única consumida pelo PDV/web para habilitar/desabilitar NFC-e e NF-e e exibir o motivo do bloqueio (valor acima do limite, operação interestadual).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/vendas/5/documentos-permitidos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/vendas/5/documentos-permitidos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "nfce": false,
    "nfe": true,
    "motivo_nfce_bloqueada": "Não é permitido emitir NFC-e para clientes localizados em outra UF...",
    "cliente_identificado": true
}
 

Request      

GET api/vendas/{venda_id}/documentos-permitidos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 5

Registra/edita o número de série de um item vendido (TI/eletro).

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/venda-itens/13/serie" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"numero_serie\": \"muitsyjead\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/venda-itens/13/serie"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "numero_serie": "muitsyjead"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/venda-itens/{vendaItem_id}/serie

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

vendaItem_id   integer   

The ID of the vendaItem. Example: 13

Body Parameters

numero_serie   string  optional  

validation.max. Example: muitsyjead

Tenant — Financeiro

Contas a receber e a pagar. tipo: receber | pagar. status: pendente | parcial | pago | vencido | cancelado.

GET api/pagamentos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pagamentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pagamentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resumo (totalizadores) por tipo/período: a vencer, vencido, pago/recebido, em aberto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pagamentos/resumo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/resumo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pagamentos/resumo

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Exporta a listagem (com os filtros atuais) em CSV.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pagamentos/exportar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/exportar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pagamentos/exportar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/pagamentos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pagamentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"fornecedor_nome\": \"u\",
    \"tipo\": \"pagar\",
    \"forma_pagamento\": \"boleto\",
    \"valor\": 25,
    \"data_vencimento\": \"2026-06-05T15:46:51\",
    \"descricao\": \"nxbinesejqgsdlqgfjxzt\",
    \"documento\": \"wporuydcjujcjtc\",
    \"observacoes\": \"tempora\",
    \"total_parcelas\": 21,
    \"recorrencia_meses\": 4
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "fornecedor_nome": "u",
    "tipo": "pagar",
    "forma_pagamento": "boleto",
    "valor": 25,
    "data_vencimento": "2026-06-05T15:46:51",
    "descricao": "nxbinesejqgsdlqgfjxzt",
    "documento": "wporuydcjujcjtc",
    "observacoes": "tempora",
    "total_parcelas": 21,
    "recorrencia_meses": 4
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pagamentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   string  optional  

The id of an existing record in the vendas table.

compra_id   string  optional  

The id of an existing record in the compras table.

cliente_id   string  optional  

The id of an existing record in the clientes table.

fornecedor_id   string  optional  

The id of an existing record in the fornecedores table.

fornecedor_nome   string  optional  

validation.max. Example: u

tipo   string   

Example: pagar

Must be one of:
  • receber
  • pagar
forma_pagamento   string  optional  

Example: boleto

Must be one of:
  • dinheiro
  • pix
  • cartao_credito
  • cartao_debito
  • boleto
  • transferencia
  • cheque
  • crediario
  • outros
conta_corrente_id   string  optional  

The id of an existing record in the contas_correntes table.

plano_conta_id   string  optional  

The id of an existing record in the plano_contas table.

valor   number   

validation.min. Example: 25

data_vencimento   string   

validation.date. Example: 2026-06-05T15:46:51

descricao   string  optional  

validation.max. Example: nxbinesejqgsdlqgfjxzt

documento   string  optional  

validation.max. Example: wporuydcjujcjtc

observacoes   string  optional  

Example: tempora

total_parcelas   integer  optional  

validation.min validation.max. Example: 21

recorrencia_meses   integer  optional  

validation.min validation.max. Example: 4

GET api/pagamentos/{pagamento_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pagamentos/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/5"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pagamentos/{pagamento_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pagamento_id   integer   

The ID of the pagamento. Example: 5

Baixar pagamento (total ou parcial).

Aceita baixa parcial: se valor_pago < saldo, o título fica parcial com o saldo remanescente. Se uma conta corrente for informada, lança automaticamente no extrato.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pagamentos/8/baixar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"valor_pago\": 27,
    \"forma_pagamento\": \"boleto\",
    \"data_pagamento\": \"2026-06-05T15:46:59\",
    \"juros\": 41,
    \"multa\": 86,
    \"desconto\": 72,
    \"observacoes\": \"dolorem\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/8/baixar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "valor_pago": 27,
    "forma_pagamento": "boleto",
    "data_pagamento": "2026-06-05T15:46:59",
    "juros": 41,
    "multa": 86,
    "desconto": 72,
    "observacoes": "dolorem"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pagamentos/{pagamento_id}/baixar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pagamento_id   integer   

The ID of the pagamento. Example: 8

Body Parameters

valor_pago   number   

validation.min. Example: 27

forma_pagamento   string  optional  

Example: boleto

Must be one of:
  • dinheiro
  • pix
  • cartao_credito
  • cartao_debito
  • boleto
  • transferencia
  • cheque
  • crediario
  • outros
conta_corrente_id   string  optional  

The id of an existing record in the contas_correntes table.

data_pagamento   string   

validation.date. Example: 2026-06-05T15:46:59

juros   number  optional  

validation.min. Example: 41

multa   number  optional  

validation.min. Example: 86

desconto   number  optional  

validation.min. Example: 72

observacoes   string  optional  

Example: dolorem

POST api/pagamentos/{pagamento_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pagamentos/11/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/11/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pagamentos/{pagamento_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pagamento_id   integer   

The ID of the pagamento. Example: 11

DELETE api/pagamentos/{pagamento_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/pagamentos/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/pagamentos/{pagamento_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pagamento_id   integer   

The ID of the pagamento. Example: 4

GET api/formas-pagamento

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/formas-pagamento" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/formas-pagamento"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/formas-pagamento

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/formas-pagamento

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/formas-pagamento" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/formas-pagamento"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/formas-pagamento

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/formas-pagamento/{forma_pagamento}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/formas-pagamento/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/formas-pagamento/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/formas-pagamento/{forma_pagamento}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

forma_pagamento   integer   

Example: 2

PUT api/formas-pagamento/{forma_pagamento}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/formas-pagamento/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/formas-pagamento/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/formas-pagamento/{forma_pagamento}

PATCH api/formas-pagamento/{forma_pagamento}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

forma_pagamento   integer   

Example: 15

DELETE api/formas-pagamento/{forma_pagamento}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/formas-pagamento/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/formas-pagamento/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/formas-pagamento/{forma_pagamento}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

forma_pagamento   integer   

Example: 19

GET api/plano-contas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/plano-contas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plano-contas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/plano-contas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/plano-contas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/plano-contas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plano-contas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/plano-contas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/plano-contas/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/plano-contas/15" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plano-contas/15"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/plano-contas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano conta. Example: 15

PUT api/plano-contas/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/plano-contas/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plano-contas/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/plano-contas/{id}

PATCH api/plano-contas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano conta. Example: 16

DELETE api/plano-contas/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/plano-contas/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/plano-contas/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/plano-contas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the plano conta. Example: 9

Transferência entre contas correntes.

Cria débito na origem e crédito no destino, na mesma transação.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/contas-correntes/transferir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"conta_origem_id\": \"perspiciatis\",
    \"conta_destino_id\": \"molestiae\",
    \"valor\": 70,
    \"data\": \"2026-06-05T15:47:36\",
    \"descricao\": \"xrzax\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/transferir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "conta_origem_id": "perspiciatis",
    "conta_destino_id": "molestiae",
    "valor": 70,
    "data": "2026-06-05T15:47:36",
    "descricao": "xrzax"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/contas-correntes/transferir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

conta_origem_id   string   

The id of an existing record in the contas_correntes table. The value and conta_destino_id must be different. Example: perspiciatis

conta_destino_id   string   

The id of an existing record in the contas_correntes table. Example: molestiae

valor   number   

validation.min. Example: 70

data   string   

validation.date. Example: 2026-06-05T15:47:36

descricao   string  optional  

validation.max. Example: xrzax

Resumo consolidado das contas correntes: saldo total, conciliado e a conciliar (uma chamada em vez de N), para KPIs de liquidez.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/contas-correntes/resumo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/resumo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/contas-correntes/resumo

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/contas-correntes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/contas-correntes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/contas-correntes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/contas-correntes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/contas-correntes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"banco\": \"g\",
    \"agencia\": \"dijj\",
    \"conta\": \"peltkotmjpp\",
    \"descricao\": \"nopxjxfsfiwib\",
    \"saldo_inicial\": 18072516.2,
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "banco": "g",
    "agencia": "dijj",
    "conta": "peltkotmjpp",
    "descricao": "nopxjxfsfiwib",
    "saldo_inicial": 18072516.2,
    "ativo": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/contas-correntes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

banco   string   

validation.max. Example: g

agencia   string  optional  

validation.max. Example: dijj

conta   string  optional  

validation.max. Example: peltkotmjpp

descricao   string   

validation.max. Example: nopxjxfsfiwib

saldo_inicial   number  optional  

Example: 18072516.2

ativo   boolean  optional  

Example: false

GET api/contas-correntes/{contaCorrente_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/contas-correntes/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/contas-correntes/{contaCorrente_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 8

PUT api/contas-correntes/{contaCorrente_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/contas-correntes/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"banco\": \"nvlaxrvlr\",
    \"agencia\": \"pgekjnd\",
    \"conta\": \"aofhcnyzxeyqjkzzni\",
    \"descricao\": \"nmhpshtra\",
    \"saldo_inicial\": 2047.11116,
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "banco": "nvlaxrvlr",
    "agencia": "pgekjnd",
    "conta": "aofhcnyzxeyqjkzzni",
    "descricao": "nmhpshtra",
    "saldo_inicial": 2047.11116,
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/contas-correntes/{contaCorrente_id}

PATCH api/contas-correntes/{contaCorrente_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 3

Body Parameters

banco   string  optional  

validation.max. Example: nvlaxrvlr

agencia   string  optional  

validation.max. Example: pgekjnd

conta   string  optional  

validation.max. Example: aofhcnyzxeyqjkzzni

descricao   string  optional  

validation.max. Example: nmhpshtra

saldo_inicial   number  optional  

Example: 2047.11116

ativo   boolean  optional  

Example: true

DELETE api/contas-correntes/{contaCorrente_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/contas-correntes/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/18"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/contas-correntes/{contaCorrente_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 18

GET api/contas-correntes/{contaCorrente_id}/extrato

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/contas-correntes/2/extrato" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/2/extrato"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/contas-correntes/{contaCorrente_id}/extrato

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 2

POST api/contas-correntes/{contaCorrente_id}/lancamentos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/contas-correntes/9/lancamentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data\": \"2026-06-05T15:55:28\",
    \"descricao\": \"t\",
    \"valor\": 71,
    \"tipo\": \"debito\",
    \"conciliado\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/9/lancamentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data": "2026-06-05T15:55:28",
    "descricao": "t",
    "valor": 71,
    "tipo": "debito",
    "conciliado": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/contas-correntes/{contaCorrente_id}/lancamentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 9

Body Parameters

data   string   

validation.date. Example: 2026-06-05T15:55:28

descricao   string   

validation.max. Example: t

valor   number   

validation.min. Example: 71

tipo   string   

Example: debito

Must be one of:
  • credito
  • debito
conciliado   boolean  optional  

Example: false

pagamento_id   string  optional  

The id of an existing record in the pagamentos table.

POST api/contas-correntes/{contaCorrente_id}/importar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/contas-correntes/19/importar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"lancamentos\": [
        {
            \"data\": \"2026-06-05T15:55:30\",
            \"descricao\": \"gi\",
            \"valor\": 2607007.8516243,
            \"tipo\": \"credito\"
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/contas-correntes/19/importar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "lancamentos": [
        {
            "data": "2026-06-05T15:55:30",
            "descricao": "gi",
            "valor": 2607007.8516243,
            "tipo": "credito"
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/contas-correntes/{contaCorrente_id}/importar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

contaCorrente_id   integer   

The ID of the contaCorrente. Example: 19

Body Parameters

lancamentos   object[]   

validation.min.

data   string   

validation.date. Example: 2026-06-05T15:55:30

descricao   string   

validation.max. Example: gi

valor   number   

Example: 2607007.8516243

tipo   string   

Example: credito

Must be one of:
  • credito
  • debito

PATCH api/extrato-lancamentos/{lancamento_id}/conciliar

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/extrato-lancamentos/6/conciliar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/extrato-lancamentos/6/conciliar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PATCH",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PATCH api/extrato-lancamentos/{lancamento_id}/conciliar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

lancamento_id   integer   

The ID of the lancamento. Example: 6

Tenant — Caixa

Sessão aberta do operador + resumo corrente (ou null se fechado).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/caixa/sessao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/sessao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/caixa/sessao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Abre o caixa com saldo inicial.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/caixa/abrir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"saldo_inicial\": 2,
    \"observacao\": \"t\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/abrir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "saldo_inicial": 2,
    "observacao": "t"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/caixa/abrir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

saldo_inicial   number   

validation.min. Example: 2

observacao   string  optional  

validation.max. Example: t

Fecha o caixa (conferência): gera o fechamento e encerra a sessão.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/caixa/fechar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"saldo_real\": 45036.862,
    \"observacao\": \"zjhabakjcmgrpa\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/fechar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "saldo_real": 45036.862,
    "observacao": "zjhabakjcmgrpa"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/caixa/fechar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

saldo_real   number   

Example: 45036.862

observacao   string  optional  

validation.max. Example: zjhabakjcmgrpa

GET api/caixa/movimentacoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/caixa/movimentacoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/movimentacoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/caixa/movimentacoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/caixa/movimentacoes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/caixa/movimentacoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tipo\": \"suprimento\",
    \"valor\": 17,
    \"observacao\": \"jirsxxjdwzcnklpiztpbm\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/movimentacoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tipo": "suprimento",
    "valor": 17,
    "observacao": "jirsxxjdwzcnklpiztpbm"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/caixa/movimentacoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

tipo   string   

Example: suprimento

Must be one of:
  • sangria
  • suprimento
valor   number   

validation.min. Example: 17

observacao   string  optional  

validation.max. Example: jirsxxjdwzcnklpiztpbm

GET api/caixa/fechamentos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/caixa/fechamentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/fechamentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/caixa/fechamentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/caixa/fechamentos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/caixa/fechamentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_abertura\": \"2026-06-05T15:54:33\",
    \"data_fechamento\": \"2026-06-05T15:54:33\",
    \"valor_abertura\": 28,
    \"total_vendas\": 17,
    \"total_dinheiro\": 25,
    \"total_cartao_credito\": 27,
    \"total_cartao_debito\": 39,
    \"total_pix\": 64,
    \"total_outros\": 37,
    \"total_sangrias\": 60,
    \"total_suprimentos\": 49,
    \"saldo_esperado\": 2.845,
    \"saldo_real\": 69212.5328968,
    \"diferenca\": 5461.5689,
    \"observacao\": \"ipxqpsespmhbeovvhrbmjbb\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/fechamentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_abertura": "2026-06-05T15:54:33",
    "data_fechamento": "2026-06-05T15:54:33",
    "valor_abertura": 28,
    "total_vendas": 17,
    "total_dinheiro": 25,
    "total_cartao_credito": 27,
    "total_cartao_debito": 39,
    "total_pix": 64,
    "total_outros": 37,
    "total_sangrias": 60,
    "total_suprimentos": 49,
    "saldo_esperado": 2.845,
    "saldo_real": 69212.5328968,
    "diferenca": 5461.5689,
    "observacao": "ipxqpsespmhbeovvhrbmjbb"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/caixa/fechamentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

data_abertura   string   

validation.date. Example: 2026-06-05T15:54:33

data_fechamento   string   

validation.date. Example: 2026-06-05T15:54:33

valor_abertura   number   

validation.min. Example: 28

total_vendas   number   

validation.min. Example: 17

total_dinheiro   number  optional  

validation.min. Example: 25

total_cartao_credito   number  optional  

validation.min. Example: 27

total_cartao_debito   number  optional  

validation.min. Example: 39

total_pix   number  optional  

validation.min. Example: 64

total_outros   number  optional  

validation.min. Example: 37

total_sangrias   number  optional  

validation.min. Example: 60

total_suprimentos   number  optional  

validation.min. Example: 49

saldo_esperado   number   

Example: 2.845

saldo_real   number  optional  

Example: 69212.5328968

diferenca   number  optional  

Example: 5461.5689

observacao   string  optional  

validation.max. Example: ipxqpsespmhbeovvhrbmjbb

GET api/caixa/fechamentos/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/caixa/fechamentos/ad" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/caixa/fechamentos/ad"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/caixa/fechamentos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the fechamento. Example: ad

Tenant — Comissões

GET api/comissoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/comissoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comissoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/comissoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PATCH api/comissoes/{comissao_id}/pagar

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/comissoes/18/pagar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_pagamento\": \"2026-06-05T15:54:41\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/comissoes/18/pagar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_pagamento": "2026-06-05T15:54:41"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PATCH api/comissoes/{comissao_id}/pagar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comissao_id   integer   

The ID of the comissao. Example: 18

Body Parameters

data_pagamento   string   

validation.date. Example: 2026-06-05T15:54:41

PATCH api/comissoes/{comissao_id}/cancelar

Example request:
curl --request PATCH \
    "https://backend.valuor.com.br/api/comissoes/19/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comissoes/19/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PATCH",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PATCH api/comissoes/{comissao_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comissao_id   integer   

The ID of the comissao. Example: 19

Tenant — Tabelas de Preço

GET api/tabelas-preco

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/tabelas-preco" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tabelas-preco"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/tabelas-preco

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/tabelas-preco

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/tabelas-preco" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"dxxsufyvctkc\",
    \"descricao\": \"aut\",
    \"ativo\": true,
    \"padrao\": true,
    \"itens\": [
        {
            \"produto_id\": \"nemo\",
            \"preco\": 24
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/tabelas-preco"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "dxxsufyvctkc",
    "descricao": "aut",
    "ativo": true,
    "padrao": true,
    "itens": [
        {
            "produto_id": "nemo",
            "preco": 24
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/tabelas-preco

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: dxxsufyvctkc

descricao   string  optional  

Example: aut

ativo   boolean  optional  

Example: true

padrao   boolean  optional  

Example: true

itens   object[]  optional  
produto_id   string   

The id of an existing record in the produtos table. Example: nemo

preco   number   

validation.min. Example: 24

GET api/tabelas-preco/{tabelaPreco_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/tabelas-preco/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tabelas-preco/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/tabelas-preco/{tabelaPreco_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabelaPreco_id   integer   

The ID of the tabelaPreco. Example: 19

PUT api/tabelas-preco/{tabelaPreco_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/tabelas-preco/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"cbdesoiccfjrxsforijc\",
    \"descricao\": \"qui\",
    \"ativo\": false,
    \"padrao\": true,
    \"itens\": [
        {
            \"produto_id\": \"voluptates\",
            \"preco\": 15
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/tabelas-preco/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "cbdesoiccfjrxsforijc",
    "descricao": "qui",
    "ativo": false,
    "padrao": true,
    "itens": [
        {
            "produto_id": "voluptates",
            "preco": 15
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/tabelas-preco/{tabelaPreco_id}

PATCH api/tabelas-preco/{tabelaPreco_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabelaPreco_id   integer   

The ID of the tabelaPreco. Example: 7

Body Parameters

nome   string  optional  

validation.max. Example: cbdesoiccfjrxsforijc

descricao   string  optional  

Example: qui

ativo   boolean  optional  

Example: false

padrao   boolean  optional  

Example: true

itens   object[]  optional  
produto_id   string   

The id of an existing record in the produtos table. Example: voluptates

preco   number   

validation.min. Example: 15

DELETE api/tabelas-preco/{tabelaPreco_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/tabelas-preco/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tabelas-preco/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/tabelas-preco/{tabelaPreco_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabelaPreco_id   integer   

The ID of the tabelaPreco. Example: 9

Tenant — Ordens de Serviço

GET api/ordens-servico

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/ordens-servico" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/ordens-servico"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/ordens-servico

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/ordens-servico

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/ordens-servico" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"equipamento\": \"yagbklznbwc\",
    \"marca_equipamento\": \"sumwmghmstgvaznerdopy\",
    \"modelo_equipamento\": \"pzmfahpheihredgsgsni\",
    \"serial\": \"ronpgyosmbmjkghzlb\",
    \"descricao_defeito\": \"dolorem\",
    \"servico_executado\": \"quod\",
    \"status\": \"aberta\",
    \"prioridade\": \"alta\",
    \"data_abertura\": \"2026-06-05T15:54:59\",
    \"data_previsao\": \"2026-06-05T15:54:59\",
    \"data_conclusao\": \"2026-06-05T15:54:59\",
    \"valor_servico\": 9,
    \"desconto\": 27,
    \"observacoes\": \"dolores\",
    \"itens\": [
        {
            \"descricao\": \"dahpxizkhxcyef\",
            \"quantidade\": 49,
            \"preco_unitario\": 83
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/ordens-servico"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "equipamento": "yagbklznbwc",
    "marca_equipamento": "sumwmghmstgvaznerdopy",
    "modelo_equipamento": "pzmfahpheihredgsgsni",
    "serial": "ronpgyosmbmjkghzlb",
    "descricao_defeito": "dolorem",
    "servico_executado": "quod",
    "status": "aberta",
    "prioridade": "alta",
    "data_abertura": "2026-06-05T15:54:59",
    "data_previsao": "2026-06-05T15:54:59",
    "data_conclusao": "2026-06-05T15:54:59",
    "valor_servico": 9,
    "desconto": 27,
    "observacoes": "dolores",
    "itens": [
        {
            "descricao": "dahpxizkhxcyef",
            "quantidade": 49,
            "preco_unitario": 83
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/ordens-servico

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cliente_id   string  optional  

The id of an existing record in the clientes table.

tecnico_id   string  optional  

The id of an existing record in the users table.

equipamento   string  optional  

validation.max. Example: yagbklznbwc

marca_equipamento   string  optional  

validation.max. Example: sumwmghmstgvaznerdopy

modelo_equipamento   string  optional  

validation.max. Example: pzmfahpheihredgsgsni

serial   string  optional  

validation.max. Example: ronpgyosmbmjkghzlb

descricao_defeito   string  optional  

Example: dolorem

servico_executado   string  optional  

Example: quod

status   string   

Example: aberta

Must be one of:
  • aberta
  • em_andamento
  • aguardando_pecas
  • concluida
  • entregue
  • cancelada
prioridade   string   

Example: alta

Must be one of:
  • baixa
  • normal
  • alta
  • urgente
data_abertura   string   

validation.date. Example: 2026-06-05T15:54:59

data_previsao   string  optional  

validation.date. Example: 2026-06-05T15:54:59

data_conclusao   string  optional  

validation.date. Example: 2026-06-05T15:54:59

valor_servico   number  optional  

validation.min. Example: 9

desconto   number  optional  

validation.min. Example: 27

observacoes   string  optional  

Example: dolores

itens   object[]  optional  
produto_id   string  optional  

The id of an existing record in the produtos table.

descricao   string  optional  

validation.max. Example: dahpxizkhxcyef

quantidade   number   

validation.min. Example: 49

preco_unitario   number   

validation.min. Example: 83

GET api/ordens-servico/{ordemServico_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/ordens-servico/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/ordens-servico/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/ordens-servico/{ordemServico_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ordemServico_id   integer   

The ID of the ordemServico. Example: 16

PUT api/ordens-servico/{ordemServico_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/ordens-servico/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"equipamento\": \"emvoultgfuhbuk\",
    \"marca_equipamento\": \"mqmlrhixwqiuruiaporpi\",
    \"modelo_equipamento\": \"plunkzrwedexlemjx\",
    \"serial\": \"rl\",
    \"descricao_defeito\": \"nisi\",
    \"servico_executado\": \"non\",
    \"status\": \"aberta\",
    \"prioridade\": \"alta\",
    \"data_abertura\": \"2026-06-05T15:55:08\",
    \"data_previsao\": \"2026-06-05T15:55:08\",
    \"data_conclusao\": \"2026-06-05T15:55:08\",
    \"valor_servico\": 58,
    \"desconto\": 85,
    \"observacoes\": \"at\",
    \"itens\": [
        {
            \"descricao\": \"my\",
            \"quantidade\": 29,
            \"preco_unitario\": 78
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/ordens-servico/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "equipamento": "emvoultgfuhbuk",
    "marca_equipamento": "mqmlrhixwqiuruiaporpi",
    "modelo_equipamento": "plunkzrwedexlemjx",
    "serial": "rl",
    "descricao_defeito": "nisi",
    "servico_executado": "non",
    "status": "aberta",
    "prioridade": "alta",
    "data_abertura": "2026-06-05T15:55:08",
    "data_previsao": "2026-06-05T15:55:08",
    "data_conclusao": "2026-06-05T15:55:08",
    "valor_servico": 58,
    "desconto": 85,
    "observacoes": "at",
    "itens": [
        {
            "descricao": "my",
            "quantidade": 29,
            "preco_unitario": 78
        }
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/ordens-servico/{ordemServico_id}

PATCH api/ordens-servico/{ordemServico_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ordemServico_id   integer   

The ID of the ordemServico. Example: 14

Body Parameters

cliente_id   string  optional  

The id of an existing record in the clientes table.

tecnico_id   string  optional  

The id of an existing record in the users table.

equipamento   string  optional  

validation.max. Example: emvoultgfuhbuk

marca_equipamento   string  optional  

validation.max. Example: mqmlrhixwqiuruiaporpi

modelo_equipamento   string  optional  

validation.max. Example: plunkzrwedexlemjx

serial   string  optional  

validation.max. Example: rl

descricao_defeito   string  optional  

Example: nisi

servico_executado   string  optional  

Example: non

status   string  optional  

Example: aberta

Must be one of:
  • aberta
  • em_andamento
  • aguardando_pecas
  • concluida
  • entregue
  • cancelada
prioridade   string  optional  

Example: alta

Must be one of:
  • baixa
  • normal
  • alta
  • urgente
data_abertura   string  optional  

validation.date. Example: 2026-06-05T15:55:08

data_previsao   string  optional  

validation.date. Example: 2026-06-05T15:55:08

data_conclusao   string  optional  

validation.date. Example: 2026-06-05T15:55:08

valor_servico   number  optional  

validation.min. Example: 58

desconto   number  optional  

validation.min. Example: 85

observacoes   string  optional  

Example: at

itens   object[]  optional  
produto_id   string  optional  

The id of an existing record in the produtos table.

descricao   string  optional  

validation.max. Example: my

quantidade   number   

validation.min. Example: 29

preco_unitario   number   

validation.min. Example: 78

DELETE api/ordens-servico/{ordemServico_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/ordens-servico/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/ordens-servico/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/ordens-servico/{ordemServico_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ordemServico_id   integer   

The ID of the ordemServico. Example: 19

Tenant — NFC-e

Emissão de Nota Fiscal de Consumidor Eletrônica. Suporta emissão online (via provider configurado) e contingência offline.

Configure o provider via .env: NFCE_PROVIDER=focus_nfe|enotas|mock NFCE_TOKEN= NFCE_BASE_URL=https://homologacao.focusnfe.com.br/v2

Listar NFC-e emitidas (vendas com nfce_chave).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfce" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfce

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Ambiente da emissão fiscal: 1=produção (valor fiscal real) / 2=homologação (teste). `simulado` só é true em caso de configuração inválida (provider mock fora dos testes) — não é um modo de operação.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfce/emissor-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/emissor-status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfce/emissor-status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/nfce

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfce" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 12,
    \"venda_local_id\": 15,
    \"valor_total\": 42,
    \"data_emissao\": \"2026-06-05T15:49:50\",
    \"origem\": \"pdv\",
    \"contingencia\": false,
    \"justificativa\": \"xvlmvmnzajgrrqmsljqnv\",
    \"itens\": [
        {
            \"nome\": \"swaawajuwbltmyfpwml\",
            \"qtde\": 7,
            \"valor\": 4
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 12,
    "venda_local_id": 15,
    "valor_total": 42,
    "data_emissao": "2026-06-05T15:49:50",
    "origem": "pdv",
    "contingencia": false,
    "justificativa": "xvlmvmnzajgrrqmsljqnv",
    "itens": [
        {
            "nome": "swaawajuwbltmyfpwml",
            "qtde": 7,
            "valor": 4
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfce

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer  optional  

validation.min. Example: 12

venda_local_id   integer   

validation.min. Example: 15

valor_total   number   

validation.min. Example: 42

data_emissao   string   

validation.date. Example: 2026-06-05T15:49:50

origem   string  optional  

Example: pdv

Must be one of:
  • pdv
  • mobile
itens   object[]  optional  
nome   string  optional  

validation.max. Example: swaawajuwbltmyfpwml

qtde   number  optional  

validation.min. Example: 7

valor   number  optional  

validation.min. Example: 4

contingencia   boolean  optional  

Contingência off-line (tpEmis=9, NT 2026.002). Example: false

justificativa   string  optional  

validation.min validation.max. Example: xvlmvmnzajgrrqmsljqnv

Re-emitir NFC-e em contingência

Tenta re-transmitir uma NFC-e previamente emitida em contingência. Passar a chave de contingência gerada localmente no PDV/Mobile.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfce/reemitir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave_contingencia\": \"35260522000000000000000000000000000000000042\",
    \"venda_local_id\": 42,
    \"valor_total\": 129.9,
    \"data_emissao\": \"2026-05-22T14:00:00-03:00\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/reemitir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave_contingencia": "35260522000000000000000000000000000000000042",
    "venda_local_id": 42,
    "valor_total": 129.9,
    "data_emissao": "2026-05-22T14:00:00-03:00"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfce/reemitir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave_contingencia   string   

Chave local de 44 dígitos gerada em contingência. Example: 35260522000000000000000000000000000000000042

venda_local_id   integer   

ID local da venda original. Example: 42

valor_total   number   

Valor total original. Example: 129.9

data_emissao   string   

Data/hora original de emissão. Example: 2026-05-22T14:00:00-03:00

Cancelar NFC-e

Cancela a NFC-e autorizada vinculada à venda (evento de cancelamento na SEFAZ).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfce/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 42,
    \"justificativa\": \"Cliente desistiu da compra\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 42,
    "justificativa": "Cliente desistiu da compra"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfce/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

ID da venda no backend. Example: 42

justificativa   string   

Justificativa (mín. 15 caracteres). Example: Cliente desistiu da compra

Consultar NFC-e

Consulta a situação atual da NFC-e da venda na SEFAZ (pela chave de acesso).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfce/consultar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 42
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/consultar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 42
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfce/consultar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

ID da venda no backend. Example: 42

Exportar XML(s) autorizado(s) de NFC-e.

Critérios (ao menos um):

1 nota → devolve o .xml direto; 2+ → devolve um .zip.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfce/exportar-xml" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chaves\": [
        \"35260522...\"
    ],
    \"data_inicio\": \"similique\",
    \"data_fim\": \"omnis\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/exportar-xml"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chaves": [
        "35260522..."
    ],
    "data_inicio": "similique",
    "data_fim": "omnis"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfce/exportar-xml

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chaves   string[]  optional  

Chaves de acesso (44 dígitos) a exportar.

data_inicio   string  optional  

Data inicial (Y-m-d) para exportar o período. Example: similique

data_fim   string  optional  

Data final (Y-m-d) para exportar o período. Example: omnis

Imprimir DANFCe

Faz proxy do PDF do cupom (DANFCe) gerado pela API Fiscal, para o navegador autenticado (que não tem a X-Api-Key da API Fiscal).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfce/6/danfce" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfce/6/danfce"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfce/{venda_id}/danfce

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

venda_id   integer   

The ID of the venda. Example: 6

Tenant — NF-e

GET api/nfe

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Ambiente de emissão (produção × homologação) para o alerta da tela.

O ambiente fiscal é global do tenant (nfce_ambiente vale para NF-e/CT-e/MDF-e).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfe/emissor-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/emissor-status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfe/emissor-status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Emitir NF-e a partir de uma venda (by venda_id) ou de payload bruto.

Quando venda_id é fornecido, usa NfePayloadBuilder para montar o payload completo e envia diretamente ao /nfe/transmitir da API Fiscal.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 48,
    \"simplificado\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 48,
    "simplificado": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer  optional  

validation.min. Example: 48

simplificado   boolean  optional  

Example: true

Emissão MANUAL de NF-e (tela de emissão): monta o payload a partir de cliente + itens informados e transmite via API Fiscal.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe/manual" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cliente_id\": 17,
    \"natureza_operacao\": \"glckssyqmupoqzbgvolyerlzr\",
    \"finalidade\": \"2\",
    \"consumidor_final\": false,
    \"forma_pagamento\": \"kifuupyjlkifsmyjuxwtdx\",
    \"info_complementar\": \"xqdtqvlzbdc\",
    \"itens\": [
        {
            \"produto_id\": 6,
            \"quantidade\": 33,
            \"preco_unitario\": 15,
            \"cfop\": \"jx\",
            \"nome_produto\": \"okaymooccw\",
            \"codigo_produto\": \"vtpuzvdpqqt\",
            \"ncm\": \"diyi\",
            \"cst_csosn\": \"hag\",
            \"cod_barras\": \"vmur\"
        }
    ],
    \"transporte\": {
        \"modalidade_frete\": \"l\"
    }
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/manual"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cliente_id": 17,
    "natureza_operacao": "glckssyqmupoqzbgvolyerlzr",
    "finalidade": "2",
    "consumidor_final": false,
    "forma_pagamento": "kifuupyjlkifsmyjuxwtdx",
    "info_complementar": "xqdtqvlzbdc",
    "itens": [
        {
            "produto_id": 6,
            "quantidade": 33,
            "preco_unitario": 15,
            "cfop": "jx",
            "nome_produto": "okaymooccw",
            "codigo_produto": "vtpuzvdpqqt",
            "ncm": "diyi",
            "cst_csosn": "hag",
            "cod_barras": "vmur"
        }
    ],
    "transporte": {
        "modalidade_frete": "l"
    }
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe/manual

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cliente_id   integer  optional  

validation.min. Example: 17

natureza_operacao   string  optional  

validation.max. Example: glckssyqmupoqzbgvolyerlzr

finalidade   string  optional  

Example: 2

Must be one of:
  • 1
  • 2
  • 3
  • 4
consumidor_final   boolean  optional  

Example: false

forma_pagamento   string  optional  

validation.max. Example: kifuupyjlkifsmyjuxwtdx

info_complementar   string  optional  

validation.max. Example: xqdtqvlzbdc

itens   object[]   

validation.min.

produto_id   integer  optional  

Example: 6

quantidade   number   

validation.min. Example: 33

preco_unitario   number   

validation.min. Example: 15

cfop   string  optional  

validation.max. Example: jx

nome_produto   string  optional  

validation.max. Example: okaymooccw

codigo_produto   string  optional  

validation.max. Example: vtpuzvdpqqt

ncm   string  optional  

validation.max. Example: diyi

cst_csosn   string  optional  

validation.max. Example: hag

cod_barras   string  optional  

validation.max. Example: vmur

transporte   object  optional  

Bloco de transporte (F10) — opcional/experimental.

modalidade_frete   string  optional  

validation.max. Example: l

transportador   object  optional  
veiculo   object  optional  
volumes   object  optional  

Baixa o PDF do DANFE pela chave.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfe/danfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave\": \"qeucccijfuwscsemmcbllbvweyvnivflutzingmcbayj\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/danfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave": "qeucccijfuwscsemmcbllbvweyvnivflutzingmcbayj"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfe/danfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave   string   

validation.size. Example: qeucccijfuwscsemmcbllbvweyvnivflutzingmcbayj

POST api/nfe/consultar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe/consultar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave\": \"iqjkmtlfkkawppjwgerssthyfyvgtxpopeyftkepjeov\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/consultar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave": "iqjkmtlfkkawppjwgerssthyfyvgtxpopeyftkepjeov"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe/consultar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave   string   

validation.size. Example: iqjkmtlfkkawppjwgerssthyfyvgtxpopeyftkepjeov

POST api/nfe/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave\": \"luzkfwbzmwaltjfnuyodfxnkkctnlgkhctjjarioawsn\",
    \"justificativa\": \"xgictssnmduwtbzxt\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave": "luzkfwbzmwaltjfnuyodfxnkkctnlgkhctjjarioawsn",
    "justificativa": "xgictssnmduwtbzxt"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave   string   

validation.size. Example: luzkfwbzmwaltjfnuyodfxnkkctnlgkhctjjarioawsn

justificativa   string   

validation.min validation.max. Example: xgictssnmduwtbzxt

Exportar XML(s) autorizado(s) de NF-e por chave(s).

1 nota → .xml direto; 2+ → .zip. Chaves vêm da seleção (ou de todas as linhas filtradas) na tela — a listagem de NF-e vem da API Fiscal.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe/exportar-xml" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chaves\": [
        \"bjddqyuarbhomsfoktobtwllmyipoqcmoiwzlpqfupzd\"
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe/exportar-xml"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chaves": [
        "bjddqyuarbhomsfoktobtwllmyipoqcmoiwzlpqfupzd"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe/exportar-xml

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chaves   string[]  optional  

validation.size.

GET api/fiscal/certificados

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/certificados" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/certificados"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/certificados

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/fiscal/certificados

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/certificados" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "senha=vabspsupsepmazxlqlmmpy"\
    --form "cnpj=14743617704283"\
    --form "arquivo=@/tmp/phpiFEEKc" 
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/certificados"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('senha', 'vabspsupsepmazxlqlmmpy');
body.append('cnpj', '14743617704283');
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/certificados

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpiFEEKc

senha   string   

validation.max. Example: vabspsupsepmazxlqlmmpy

cnpj   string   

Must match the regex /^\d{14}$/. Example: 14743617704283

DELETE api/fiscal/certificados/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/fiscal/certificados/rerum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/certificados/rerum"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/fiscal/certificados/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the certificado. Example: rerum

Tenant — Fiscal

Verifica a saúde do fiscal: API Fiscal online, certificado, CSC e a conectividade com a SEFAZ (Status do Serviço) para NF-e (55) e NFC-e (65).

GET /fiscal/diagnostico — estado geral (API Fiscal, certificado, CSC).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/diagnostico" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/diagnostico"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/diagnostico

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST /fiscal/status-sefaz — testa o Status do Serviço da SEFAZ.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/status-sefaz" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"modelo\": \"65\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/status-sefaz"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "modelo": "65"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/status-sefaz

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

modelo   integer   

Example: 65

Must be one of:
  • 55
  • 65

GET api/fiscal/prontidao

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/prontidao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/prontidao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/prontidao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Dashboard

KPIs e dados para o painel principal. Todos os valores são filtrados pela empresa do usuário autenticado.

GET api/dashboard/kpis

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/kpis" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/kpis"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/kpis

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/dashboard/kpis-vendedor

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/kpis-vendedor" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/kpis-vendedor"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/kpis-vendedor

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/dashboard/vendas-por-dia

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/vendas-por-dia" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/vendas-por-dia"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/vendas-por-dia

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/dashboard/top-produtos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/top-produtos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/top-produtos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/top-produtos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Insights analíticos do período: formas de pagamento, top clientes e top vendedores.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/insights" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/insights"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/insights

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Fluxo de caixa projetado — recebíveis vs. pagáveis em aberto, por semana (mais um bloco "em atraso"), com saldo do período e saldo acumulado.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/fluxo-caixa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/fluxo-caixa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/fluxo-caixa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Comparativo entre empresas (matriz/filiais) no período.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/comparativo-empresas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/comparativo-empresas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/comparativo-empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/dashboard/proximos-vencimentos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/dashboard/proximos-vencimentos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/dashboard/proximos-vencimentos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/dashboard/proximos-vencimentos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Relatórios

GET api/relatorios/vendas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/vendas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_inicio\": \"2026-06-05T15:49:24\",
    \"data_fim\": \"2084-01-28\",
    \"agrupar_por\": \"produto\",
    \"status\": \"confirmada\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/vendas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_inicio": "2026-06-05T15:49:24",
    "data_fim": "2084-01-28",
    "agrupar_por": "produto",
    "status": "confirmada"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/vendas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

data_inicio   string   

validation.date. Example: 2026-06-05T15:49:24

data_fim   string   

validation.date validation.after_or_equal. Example: 2084-01-28

agrupar_por   string  optional  

Example: produto

Must be one of:
  • dia
  • semana
  • mes
  • produto
status   string  optional  

Example: confirmada

Must be one of:
  • orcamento
  • confirmada
  • faturada
  • cancelada

GET api/relatorios/fluxo-caixa

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/fluxo-caixa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_inicio\": \"2026-06-05T15:49:26\",
    \"data_fim\": \"2069-12-30\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/fluxo-caixa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_inicio": "2026-06-05T15:49:26",
    "data_fim": "2069-12-30"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/fluxo-caixa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

data_inicio   string   

validation.date. Example: 2026-06-05T15:49:26

data_fim   string   

validation.date validation.after_or_equal. Example: 2069-12-30

GET api/relatorios/estoque

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/estoque" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/estoque"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/estoque

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Giro/rotação de estoque no período: identifica capital imobilizado (produtos parados) vs. produtos de alta rotação. giro_anual = consumo anualizado / estoque; dias_cobertura = estoque / consumo diário.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/giro-estoque" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/giro-estoque"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/giro-estoque

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/relatorios/contas-receber

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/contas-receber" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/contas-receber"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/contas-receber

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/relatorios/contas-pagar

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/contas-pagar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/contas-pagar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/contas-pagar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

DRE gerencial (regime de competência) em cascata: Receita Bruta de Vendas − Descontos = Receita Líquida − CMV (custo dos produtos vendidos) = Lucro Bruto − Despesas Operacionais + Outras Receitas = Resultado Líquido

Vendas: por data_venda (confirmada/faturada). Despesas e outras receitas: por data_vencimento, excluindo canceladas (despesa reconhecida no período).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/dre" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data_inicio\": \"2026-06-05T15:49:42\",
    \"data_fim\": \"2109-05-26\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/dre"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data_inicio": "2026-06-05T15:49:42",
    "data_fim": "2109-05-26"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/dre

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

data_inicio   string   

validation.date. Example: 2026-06-05T15:49:42

data_fim   string   

validation.date validation.after_or_equal. Example: 2109-05-26

Tenant — Inteligência

GET api/produtos/{produto_id}/previsao-estoque

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/10/previsao-estoque" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/10/previsao-estoque"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/previsao-estoque

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 10

GET api/inteligencia/resumo

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/inteligencia/resumo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/inteligencia/resumo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/inteligencia/resumo

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/inteligencia/previsao-estoque

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/inteligencia/previsao-estoque" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/inteligencia/previsao-estoque"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/inteligencia/previsao-estoque

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/compras/importar-xml

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/importar-xml" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "xml=@/tmp/phpBOAoGG" 
const url = new URL(
    "https://backend.valuor.com.br/api/compras/importar-xml"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('xml', document.querySelector('input[name="xml"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/importar-xml

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

xml   file   

Must be a file. validation.max. Example: /tmp/phpBOAoGG

POST /api/compras/{compra}/itens/{item}/vincular Vincula um item importado a um produto e grava o de-para do fornecedor (para reconhecer o item automaticamente em importações futuras).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/compras/11/itens/13/vincular" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": \"aspernatur\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/compras/11/itens/13/vincular"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": "aspernatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/compras/{compra_id}/itens/{item_id}/vincular

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

compra_id   integer   

The ID of the compra. Example: 11

item_id   integer   

The ID of the item. Example: 13

Body Parameters

produto_id   string   

The id of an existing record in the produtos table. Example: aspernatur

Autenticação — 2FA (TOTP)

Fluxo: setup (gera segredo) → confirm (valida 1º código, ativa e devolve os códigos de recuperação) → disable. O segredo e os códigos ficam cifrados (cast encrypted no model User).

Status do 2FA do usuário autenticado.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auth/2fa/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/2fa/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/auth/2fa/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera um segredo (ainda não ativa) e retorna o otpauth:// para QR Code.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/2fa/setup" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/2fa/setup"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/auth/2fa/setup

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Valida o primeiro código, ativa o 2FA e devolve os códigos de recuperação (uma vez).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/2fa/confirm" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"code\": \"aut\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/2fa/confirm"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "code": "aut"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/auth/2fa/confirm

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

code   string   

Example: aut

Desativa o 2FA (exige código TOTP/recuperação OU a senha).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/auth/2fa/disable" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"code\": \"quam\",
    \"password\": \"}f%7>v7nTVYG|y#cUD(\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/auth/2fa/disable"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "code": "quam",
    "password": "}f%7>v7nTVYG|y#cUD("
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/auth/2fa/disable

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

code   string  optional  

Example: quam

password   string  optional  

Example: }f%7>v7nTVYG|y#cUD(

Outros

Lista as variações de um produto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/10/variacoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/10/variacoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/variacoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 10

Gera as variações a partir da grade do produto (produto cartesiano das opções). Cria apenas as combinações que ainda não existem.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/produtos/6/variacoes/gerar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/6/variacoes/gerar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/produtos/{produto_id}/variacoes/gerar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 6

Atualiza uma variação (SKU, EAN, preço, estoque, ativo).

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/variacoes/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"codigo\": \"efigfefpsrnger\",
    \"codigo_barras\": \"dmcuvbwctbmvujmfudfpy\",
    \"preco\": 81,
    \"estoque\": 24,
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/variacoes/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "codigo": "efigfefpsrnger",
    "codigo_barras": "dmcuvbwctbmvujmfudfpy",
    "preco": 81,
    "estoque": 24,
    "ativo": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/variacoes/{variacao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

variacao_id   integer   

The ID of the variacao. Example: 3

Body Parameters

codigo   string  optional  

validation.max. Example: efigfefpsrnger

codigo_barras   string  optional  

validation.max. Example: dmcuvbwctbmvujmfudfpy

preco   number  optional  

validation.min. Example: 81

estoque   number  optional  

validation.min. Example: 24

ativo   boolean  optional  

Example: true

DELETE api/variacoes/{variacao_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/variacoes/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/variacoes/11"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/variacoes/{variacao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

variacao_id   integer   

The ID of the variacao. Example: 11

Ficha técnica: insumos do produto composto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/20/insumos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/20/insumos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/insumos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 20

POST api/produtos/{produto_id}/insumos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/produtos/3/insumos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"insumo_id\": 1,
    \"quantidade\": 26
}"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/3/insumos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "insumo_id": 1,
    "quantidade": 26
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/produtos/{produto_id}/insumos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 3

Body Parameters

insumo_id   integer   

The id of an existing record in the produtos table. The value and produto must be different. Example: 1

quantidade   number   

validation.min. Example: 26

DELETE api/produto-insumos/{insumo_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/produto-insumos/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produto-insumos/17"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/produto-insumos/{insumo_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

insumo_id   integer   

The ID of the insumo. Example: 17

GET api/mesas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/mesas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mesas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/mesas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/mesas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/mesas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"hbncnkpckjxsdfgi\",
    \"capacidade\": 35,
    \"ativo\": true
}"
const url = new URL(
    "https://backend.valuor.com.br/api/mesas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "hbncnkpckjxsdfgi",
    "capacidade": 35,
    "ativo": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/mesas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string   

validation.max. Example: hbncnkpckjxsdfgi

capacidade   integer  optional  

validation.min. Example: 35

ativo   boolean  optional  

Example: true

PUT api/mesas/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/mesas/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"sncoyiqmxshxj\",
    \"capacidade\": 50,
    \"status\": \"livre\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/mesas/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "sncoyiqmxshxj",
    "capacidade": 50,
    "status": "livre",
    "ativo": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/mesas/{id}

PATCH api/mesas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the mesa. Example: 14

Body Parameters

nome   string  optional  

validation.max. Example: sncoyiqmxshxj

capacidade   integer  optional  

validation.min. Example: 50

status   string  optional  

Example: livre

Must be one of:
  • livre
  • ocupada
ativo   boolean  optional  

Example: false

DELETE api/mesas/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/mesas/12" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mesas/12"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/mesas/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the mesa. Example: 12

Comandas abertas (painel do salão).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/comandas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/comandas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

KDS — itens em produção das comandas abertas (não entregues).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/comandas/kds" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/kds"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/comandas/kds

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Avança o status de preparo de um item (KDS).

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/comanda-itens/16/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"pendente\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/comanda-itens/16/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "pendente"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/comanda-itens/{item_id}/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

item_id   integer   

The ID of the item. Example: 16

Body Parameters

status   string   

Example: pendente

Must be one of:
  • pendente
  • preparo
  • pronto
  • entregue

GET api/comandas/{comanda_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/comandas/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/comandas/{comanda_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comanda_id   integer   

The ID of the comanda. Example: 3

Abre uma comanda (em mesa ou avulsa/balcão).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/comandas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"mesa_id\": 2,
    \"cliente_id\": 14
}"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "mesa_id": 2,
    "cliente_id": 14
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/comandas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

mesa_id   integer  optional  

The id of an existing record in the mesas table. Example: 2

cliente_id   integer  optional  

The id of an existing record in the clientes table. Example: 14

Adiciona um item à comanda.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/comandas/14/itens" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": 5,
    \"quantidade\": 78,
    \"observacao\": \"huprhaiclnwknvmccjr\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/14/itens"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": 5,
    "quantidade": 78,
    "observacao": "huprhaiclnwknvmccjr"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/comandas/{comanda_id}/itens

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comanda_id   integer   

The ID of the comanda. Example: 14

Body Parameters

produto_id   integer   

The id of an existing record in the produtos table. Example: 5

quantidade   number   

validation.min. Example: 78

observacao   string  optional  

validation.max. Example: huprhaiclnwknvmccjr

DELETE api/comandas/{comanda_id}/itens/{itemId}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/comandas/9/itens/vero" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/9/itens/vero"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/comandas/{comanda_id}/itens/{itemId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comanda_id   integer   

The ID of the comanda. Example: 9

itemId   string   

Example: vero

Fecha a comanda gerando uma venda (baixa estoque + financeiro).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/comandas/18/fechar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"desconto\": 33,
    \"pagamentos\": [
        {
            \"forma_pagamento\": \"omnis\",
            \"valor\": 39
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/18/fechar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "desconto": 33,
    "pagamentos": [
        {
            "forma_pagamento": "omnis",
            "valor": 39
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/comandas/{comanda_id}/fechar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comanda_id   integer   

The ID of the comanda. Example: 18

Body Parameters

pagamentos   object[]  optional  
forma_pagamento   string  optional  

This field is required when pagamentos is present. Example: omnis

valor   number  optional  

This field is required when pagamentos is present. validation.min. Example: 39

desconto   number  optional  

validation.min. Example: 33

POST api/comandas/{comanda_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/comandas/13/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/comandas/13/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/comandas/{comanda_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

comanda_id   integer   

The ID of the comanda. Example: 13

Lista as devoluções (mais recentes primeiro).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/devolucoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/devolucoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Cria uma devolução a partir de uma venda (total ou parcial).

Dá entrada no estoque e estorna o financeiro.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 17,
    \"motivo\": \"maildpsgvmmhcorqap\",
    \"observacoes\": \"fyjk\",
    \"itens\": [
        {
            \"venda_item_id\": 19,
            \"quantidade\": 47
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 17,
    "motivo": "maildpsgvmmhcorqap",
    "observacoes": "fyjk",
    "itens": [
        {
            "venda_item_id": 19,
            "quantidade": 47
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

The id of an existing record in the vendas table. Example: 17

motivo   string  optional  

validation.max. Example: maildpsgvmmhcorqap

observacoes   string  optional  

validation.max. Example: fyjk

itens   object[]   

validation.min.

venda_item_id   integer   

Example: 19

quantidade   number   

validation.min. Example: 47

Detalhe da devolução (com itens).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/devolucoes/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/devolucoes/{devolucao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucao_id   integer   

The ID of the devolucao. Example: 2

Emite a NF-e de devolução (finNFe=4) referenciando a nota original.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes/12/emitir-nfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes/12/emitir-nfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes/{devolucao_id}/emitir-nfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucao_id   integer   

The ID of the devolucao. Example: 12

Cancela a devolução, revertendo estoque e financeiro.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes/10/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes/10/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes/{devolucao_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucao_id   integer   

The ID of the devolucao. Example: 10

GET api/devolucoes-compra

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/devolucoes-compra" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes-compra"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/devolucoes-compra

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/devolucoes-compra/{devolucaoCompra_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/devolucoes-compra/20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes-compra/20"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/devolucoes-compra/{devolucaoCompra_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucaoCompra_id   integer   

The ID of the devolucaoCompra. Example: 20

POST api/devolucoes-compra

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes-compra" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"compra_id\": 19,
    \"motivo\": \"spzbrpsmkzkqlownjkyx\",
    \"observacoes\": \"tr\",
    \"itens\": [
        {
            \"compra_item_id\": 3,
            \"quantidade\": 16
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes-compra"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "compra_id": 19,
    "motivo": "spzbrpsmkzkqlownjkyx",
    "observacoes": "tr",
    "itens": [
        {
            "compra_item_id": 3,
            "quantidade": 16
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes-compra

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

compra_id   integer   

The id of an existing record in the compras table. Example: 19

motivo   string  optional  

validation.max. Example: spzbrpsmkzkqlownjkyx

observacoes   string  optional  

validation.max. Example: tr

itens   object[]   

validation.min.

compra_item_id   integer   

Example: 3

quantidade   number   

validation.min. Example: 16

Emite a NF-e de devolução de compra (saída, finNFe=4) ao fornecedor.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes-compra/20/emitir-nfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes-compra/20/emitir-nfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes-compra/{devolucaoCompra_id}/emitir-nfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucaoCompra_id   integer   

The ID of the devolucaoCompra. Example: 20

POST api/devolucoes-compra/{devolucaoCompra_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/devolucoes-compra/2/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/devolucoes-compra/2/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/devolucoes-compra/{devolucaoCompra_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

devolucaoCompra_id   integer   

The ID of the devolucaoCompra. Example: 2

Sugere a tributação (CST/CSOSN, CFOP, alíquotas) para um NCM/origem, a partir das regras cadastradas ou do regime + alíquota da UF.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/sugerir-tributacao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ncm\": \"be\",
    \"origem\": 3
}"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/sugerir-tributacao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ncm": "be",
    "origem": 3
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/sugerir-tributacao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

ncm   string   

validation.max. Example: be

origem   integer  optional  

validation.min validation.max. Example: 3

POST api/imposto/ncm/importar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/ncm/importar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ncm/importar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/ncm/importar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/imposto/ibpt/consultar/{ncm}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/ibpt/consultar/quis" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt/consultar/quis"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/ibpt/consultar/{ncm}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

ncm   string   

Example: quis

GET api/fiscal/classificacoes-tributarias

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/classificacoes-tributarias" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/classificacoes-tributarias"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/classificacoes-tributarias

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/health

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/health" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/health"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": "ok",
    "db": true,
    "version": "dev",
    "timestamp": "2026-06-05T15:55:39-03:00"
}
 

Request      

GET api/health

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/broadcasting/auth

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/broadcasting/auth" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/broadcasting/auth"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/broadcasting/auth

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/webhooks/stripe

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/webhooks/stripe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/webhooks/stripe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 59
vary: Origin
 

OK
 

Request      

POST api/webhooks/stripe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/webhooks/efipay

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/webhooks/efipay" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/webhooks/efipay"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (400):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 59
vary: Origin
 

Invalid payload
 

Request      

POST api/webhooks/efipay

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/admin/backup/status

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/backup/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/backup/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/backup/status

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/backup/executar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/backup/executar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/backup/executar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/backup/executar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/backup/tenant/{tenant_id}

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/backup/tenant/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/backup/tenant/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/backup/tenant/{tenant_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tenant_id   integer   

The ID of the tenant. Example: 4

GET api/admin/config

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/admin/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

GET api/admin/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/admin/config

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/admin/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

PUT api/admin/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-smtp

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-smtp" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-smtp"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-smtp

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-cloudflare

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-cloudflare" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-cloudflare"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-cloudflare

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-tunnel

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-tunnel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-tunnel"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-tunnel

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-stripe

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-stripe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-stripe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-stripe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-efipay

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-efipay" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-efipay"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-efipay

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-telegram

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-telegram" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-telegram"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-telegram

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/test-aapanel

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/test-aapanel" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/test-aapanel"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/test-aapanel

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/admin/config/limpar-cache

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/admin/config/limpar-cache" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/admin/config/limpar-cache"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Não autenticado."
}
 

Request      

POST api/admin/config/limpar-cache

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Auditoria

Trilha de auditoria: criações, alterações e exclusões dos registros sensíveis (produtos, clientes, fornecedores, vendas, compras, pagamentos).

GET api/auditoria

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auditoria" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auditoria"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/auditoria

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tipos de registro disponíveis na trilha (para o filtro).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/auditoria/tipos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/auditoria/tipos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/auditoria/tipos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — CRM Notas

GET api/cliente-notas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cliente-notas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cliente-notas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/cliente-notas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cliente-notas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cliente-notas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/cliente-notas/{clienteNota_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cliente-notas/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas/5"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cliente-notas/{clienteNota_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteNota_id   integer   

The ID of the clienteNota. Example: 5

PUT api/cliente-notas/{clienteNota_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/cliente-notas/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas/6"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/cliente-notas/{clienteNota_id}

PATCH api/cliente-notas/{clienteNota_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteNota_id   integer   

The ID of the clienteNota. Example: 6

DELETE api/cliente-notas/{clienteNota_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/cliente-notas/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas/6"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/cliente-notas/{clienteNota_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteNota_id   integer   

The ID of the clienteNota. Example: 6

POST api/cliente-notas/{clienteNota_id}/fixar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cliente-notas/11/fixar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-notas/11/fixar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cliente-notas/{clienteNota_id}/fixar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteNota_id   integer   

The ID of the clienteNota. Example: 11

Tenant — CRM Oportunidades

CRUD + funil + forecast de oportunidades comerciais (CRM Fase 2).

GET /oportunidades/funil — agregado por estágio (forecast).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/oportunidades/funil" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades/funil"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/oportunidades/funil

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Listar com filtros: ?cliente_id, ?estagio, ?owner_user_id, ?empresa_id, ?vencendo_em_dias, ?abertas=1, ?search.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/oportunidades" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/oportunidades

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/oportunidades

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/oportunidades" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 6,
    \"cliente_id\": 7,
    \"owner_user_id\": 14,
    \"titulo\": \"lxrmzwxklezi\",
    \"descricao\": \"fugit\",
    \"estagio\": \"negociacao\",
    \"valor_estimado\": 64,
    \"probabilidade\": 8,
    \"fechamento_previsto\": \"2026-06-05T15:40:33\",
    \"origem\": \"kpknhpnbzdvnagdrq\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 6,
    "cliente_id": 7,
    "owner_user_id": 14,
    "titulo": "lxrmzwxklezi",
    "descricao": "fugit",
    "estagio": "negociacao",
    "valor_estimado": 64,
    "probabilidade": 8,
    "fechamento_previsto": "2026-06-05T15:40:33",
    "origem": "kpknhpnbzdvnagdrq"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/oportunidades

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer   

Example: 6

cliente_id   integer   

Example: 7

owner_user_id   integer  optional  

Example: 14

titulo   string   

validation.max. Example: lxrmzwxklezi

descricao   string  optional  

Example: fugit

estagio   string  optional  

Example: negociacao

Must be one of:
  • qualificacao
  • proposta
  • negociacao
  • ganha
  • perdida
valor_estimado   number  optional  

validation.min. Example: 64

probabilidade   integer  optional  

validation.min validation.max. Example: 8

fechamento_previsto   string  optional  

validation.date. Example: 2026-06-05T15:40:33

origem   string  optional  

validation.max. Example: kpknhpnbzdvnagdrq

produtos   object  optional  
tags   object  optional  

GET api/oportunidades/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/oportunidades/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades/18"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/oportunidades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the oportunidade. Example: 18

PUT api/oportunidades/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/oportunidades/10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"owner_user_id\": 12,
    \"titulo\": \"gmsdzekedydeyb\",
    \"descricao\": \"at\",
    \"valor_estimado\": 28,
    \"probabilidade\": 15,
    \"fechamento_previsto\": \"2026-06-05T15:40:39\",
    \"origem\": \"iwragirn\",
    \"motivo_perda\": \"y\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades/10"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "owner_user_id": 12,
    "titulo": "gmsdzekedydeyb",
    "descricao": "at",
    "valor_estimado": 28,
    "probabilidade": 15,
    "fechamento_previsto": "2026-06-05T15:40:39",
    "origem": "iwragirn",
    "motivo_perda": "y"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/oportunidades/{id}

PATCH api/oportunidades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the oportunidade. Example: 10

Body Parameters

owner_user_id   integer  optional  

Example: 12

titulo   string  optional  

validation.max. Example: gmsdzekedydeyb

descricao   string  optional  

Example: at

valor_estimado   number  optional  

validation.min. Example: 28

probabilidade   integer  optional  

validation.min validation.max. Example: 15

fechamento_previsto   string  optional  

validation.date. Example: 2026-06-05T15:40:39

origem   string  optional  

validation.max. Example: iwragirn

produtos   object  optional  
tags   object  optional  
motivo_perda   string  optional  

validation.max. Example: y

DELETE api/oportunidades/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/oportunidades/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/oportunidades/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the oportunidade. Example: 2

Mudar de estágio. Em ganha/perdida fecha automático e atualiza prob.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/oportunidades/14/estagio" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"estagio\": \"molestias\",
    \"motivo_perda\": \"vel\",
    \"venda_id\": 19
}"
const url = new URL(
    "https://backend.valuor.com.br/api/oportunidades/14/estagio"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "estagio": "molestias",
    "motivo_perda": "vel",
    "venda_id": 19
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/oportunidades/{oportunidade_id}/estagio

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

oportunidade_id   integer   

The ID of the oportunidade. Example: 14

Body Parameters

estagio   string   

qualificacao|proposta|negociacao|ganha|perdida Example: molestias

motivo_perda   string  optional  

Obrigatório quando estagio=perdida. Example: vel

venda_id   integer  optional  

Opcional — amarra a oportunidade ganha a uma venda existente. Example: 19

Tenant — CRM Tarefas

GET api/cliente-tarefas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cliente-tarefas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cliente-tarefas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/cliente-tarefas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cliente-tarefas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cliente-tarefas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/cliente-tarefas/{clienteTarefa_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cliente-tarefas/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cliente-tarefas/{clienteTarefa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteTarefa_id   integer   

The ID of the clienteTarefa. Example: 3

PUT api/cliente-tarefas/{clienteTarefa_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/cliente-tarefas/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/cliente-tarefas/{clienteTarefa_id}

PATCH api/cliente-tarefas/{clienteTarefa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteTarefa_id   integer   

The ID of the clienteTarefa. Example: 16

DELETE api/cliente-tarefas/{clienteTarefa_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/cliente-tarefas/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/cliente-tarefas/{clienteTarefa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteTarefa_id   integer   

The ID of the clienteTarefa. Example: 7

POST api/cliente-tarefas/{clienteTarefa_id}/concluir

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cliente-tarefas/18/concluir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas/18/concluir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cliente-tarefas/{clienteTarefa_id}/concluir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteTarefa_id   integer   

The ID of the clienteTarefa. Example: 18

POST api/cliente-tarefas/{clienteTarefa_id}/reabrir

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cliente-tarefas/20/reabrir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cliente-tarefas/20/reabrir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cliente-tarefas/{clienteTarefa_id}/reabrir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

clienteTarefa_id   integer   

The ID of the clienteTarefa. Example: 20

Tenant — CT-e

Emissão de Conhecimento de Transporte Eletrônico (modelo 57) via API Fiscal, reaproveitando os cadastros de Transportadora (remetente/destinatário).

Lista os CT-e emitidos/rascunho do tenant.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cte" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cte"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cte

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Emite o CT-e: monta payload, transmite e persiste o resultado.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cte" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"natureza_operacao\": \"ozfutberamff\",
    \"cfop\": \"ai\",
    \"tomador_papel\": \"3\",
    \"remetente_id\": 9,
    \"destinatario_id\": 5,
    \"cst\": \"lvw\",
    \"perc_icms\": 77.93,
    \"data_prevista_entrega\": \"2026-06-05T15:52:23\",
    \"valor_transporte\": 8,
    \"valor_receber\": 8414.58900933,
    \"valor_carga\": 74,
    \"produto_predominante\": \"dkw\",
    \"rntrc\": \"dgedfrxetlr\",
    \"cod_mun_fim\": \"e\",
    \"nome_mun_fim\": \"fnymgjobwxajghdvebaczjyqn\",
    \"uf_fim\": \"ow\",
    \"quantidade_carga\": 173706996.70492,
    \"chaves_nfe\": [
        \"sed\"
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/cte"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "natureza_operacao": "ozfutberamff",
    "cfop": "ai",
    "tomador_papel": "3",
    "remetente_id": 9,
    "destinatario_id": 5,
    "cst": "lvw",
    "perc_icms": 77.93,
    "data_prevista_entrega": "2026-06-05T15:52:23",
    "valor_transporte": 8,
    "valor_receber": 8414.58900933,
    "valor_carga": 74,
    "produto_predominante": "dkw",
    "rntrc": "dgedfrxetlr",
    "cod_mun_fim": "e",
    "nome_mun_fim": "fnymgjobwxajghdvebaczjyqn",
    "uf_fim": "ow",
    "quantidade_carga": 173706996.70492,
    "chaves_nfe": [
        "sed"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cte

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

natureza_operacao   string  optional  

validation.max. Example: ozfutberamff

cfop   string  optional  

validation.max. Example: ai

tomador_papel   integer   

Example: 3

Must be one of:
  • 0
  • 1
  • 2
  • 3
remetente_id   integer   

Example: 9

destinatario_id   integer   

Example: 5

cst   string  optional  

validation.max. Example: lvw

perc_icms   number  optional  

Example: 77.93

data_prevista_entrega   string  optional  

validation.date. Example: 2026-06-05T15:52:23

valor_transporte   number   

validation.min. Example: 8

valor_receber   number  optional  

Example: 8414.58900933

valor_carga   number   

validation.min. Example: 74

produto_predominante   string  optional  

validation.max. Example: dkw

rntrc   string  optional  

validation.max. Example: dgedfrxetlr

cod_mun_fim   string  optional  

validation.max. Example: e

nome_mun_fim   string  optional  

validation.max. Example: fnymgjobwxajghdvebaczjyqn

uf_fim   string  optional  

validation.size. Example: ow

quantidade_carga   number  optional  

Example: 173706996.70492

chaves_nfe   string[]  optional  

GET api/cte/{cte_id}/consultar

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cte/18/consultar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cte/18/consultar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cte/{cte_id}/consultar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cte_id   integer   

The ID of the cte. Example: 18

POST api/cte/{cte_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/cte/2/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"justificativa\": \"sgshfjctypodoxoqcufi\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/cte/2/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "justificativa": "sgshfjctypodoxoqcufi"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/cte/{cte_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cte_id   integer   

The ID of the cte. Example: 2

Body Parameters

justificativa   string   

validation.min validation.max. Example: sgshfjctypodoxoqcufi

Baixa o DACTE (PDF) pela chave.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cte/16/dacte" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cte/16/dacte"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cte/{cte_id}/dacte

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cte_id   integer   

The ID of the cte. Example: 16

Tenant — Clientes (CRM)

Endpoints de agregação para o perfil 360° do cliente. Todos aceitam ?empresa_id= para escopar matriz/filial (omitir = todas).

GET api/clientes/{cliente_id}/perfil

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/8/perfil" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/8/perfil"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/perfil

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 8

GET api/clientes/{cliente_id}/timeline

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/9/timeline" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/9/timeline"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/timeline

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 9

GET api/clientes/{cliente_id}/financeiro

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/8/financeiro" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/8/financeiro"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/financeiro

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 8

GET api/clientes/{cliente_id}/pontos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/4/pontos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/4/pontos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/pontos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 4

GET api/clientes/{cliente_id}/os

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/clientes/3/os" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/clientes/3/os"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/clientes/{cliente_id}/os

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 3

Tenant — Cobrança (régua/dunning)

Histórico de lembretes de cobrança enviados e disparo manual por pagamento.

Dispara cobrança manual de um recebível.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pagamentos/1/cobrar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pagamentos/1/cobrar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pagamentos/{pagamento_id}/cobrar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pagamento_id   integer   

The ID of the pagamento. Example: 1

GET api/cobrancas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/cobrancas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/cobrancas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/cobrancas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Conta

Dados da CONTA (tenant) vistos/editados pelo próprio tenant. Nada fiscal aqui — o fiscal vive nas Empresas (matriz/filial) do tenant.

GET api/configuracoes/empresa

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/configuracoes/empresa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/configuracoes/empresa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/configuracoes/empresa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/configuracoes/empresa

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/configuracoes/empresa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"nmsguydsvaawfiyuktvo\",
    \"cnpj\": \"oeihvajidbmsxq\",
    \"email\": \"[email protected]\",
    \"telefone\": \"tf\",
    \"logradouro\": \"ut\",
    \"numero\": \"ko\",
    \"complemento\": \"ullam\",
    \"bairro\": \"vel\",
    \"cidade\": \"voluptatem\",
    \"uf\": \"bd\",
    \"cep\": \"yamm\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/configuracoes/empresa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "nmsguydsvaawfiyuktvo",
    "cnpj": "oeihvajidbmsxq",
    "email": "[email protected]",
    "telefone": "tf",
    "logradouro": "ut",
    "numero": "ko",
    "complemento": "ullam",
    "bairro": "vel",
    "cidade": "voluptatem",
    "uf": "bd",
    "cep": "yamm"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/configuracoes/empresa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string  optional  

validation.max. Example: nmsguydsvaawfiyuktvo

cnpj   string  optional  

validation.size. Example: oeihvajidbmsxq

email   string  optional  

validation.email. Example: [email protected]

telefone   string  optional  

validation.max. Example: tf

logradouro   string  optional  

Example: ut

numero   string  optional  

validation.max. Example: ko

complemento   string  optional  

Example: ullam

bairro   string  optional  

Example: vel

cidade   string  optional  

Example: voluptatem

uf   string  optional  

validation.size. Example: bd

cep   string  optional  

validation.max. Example: yamm

configuracoes   object  optional  

Tenant — Empresas (matriz/filial)

CRUD das empresas/estabelecimentos do tenant. Cada empresa é um CNPJ emitente, com sua própria identidade fiscal (IE, CSC, séries, numeração) usada na emissão de NFC-e/NF-e.

Lista enxuta das empresas ativas do tenant para o SELECT da tela de login.

Pública (sem auth) — o tenant já está resolvido pelo domínio e só expõe id/nome (nenhum dado fiscal sensível), para o usuário escolher em qual empresa (matriz/filial) deseja operar antes de autenticar.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/empresas-publicas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas-publicas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/empresas-publicas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/empresas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/empresas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/empresas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/empresas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/empresas/{empresa_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/empresas/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas/17"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/empresas/{empresa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 17

PUT api/empresas/{empresa_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/empresas/10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas/10"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/empresas/{empresa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 10

DELETE api/empresas/{empresa_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/empresas/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/empresas/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/empresas/{empresa_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa_id   integer   

The ID of the empresa. Example: 7

Tenant — Estoque (Depósitos)

Depósitos/almoxarifados por empresa. O saldo é mantido por (produto × depósito) e o estoque_atual do produto reflete a soma de todos os depósitos.

Saldos dos produtos neste depósito. Sinaliza itens críticos (saldo no depósito ≤ estoque mínimo do produto) — um depósito pode estar zerado mesmo com saldo total positivo em outro.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/depositos/18/saldos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos/18/saldos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/depositos/{deposito_id}/saldos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

deposito_id   integer   

The ID of the deposito. Example: 18

GET api/depositos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/depositos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/depositos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/depositos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/depositos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/depositos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/depositos/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/depositos/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos/11"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/depositos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the deposito. Example: 11

PUT api/depositos/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/depositos/20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos/20"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/depositos/{id}

PATCH api/depositos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the deposito. Example: 20

DELETE api/depositos/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/depositos/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/depositos/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/depositos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the deposito. Example: 4

Tenant — Estoque (Transferências)

Transferência de produtos entre depósitos (saída no origem + entrada no destino). O total do produto (estoque_atual) permanece inalterado.

GET api/transferencias

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/transferencias" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transferencias"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/transferencias

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/transferencias

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/transferencias" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"deposito_origem_id\": 8,
    \"deposito_destino_id\": 20,
    \"observacoes\": \"dolore\",
    \"itens\": [
        {
            \"produto_id\": 13,
            \"quantidade\": 5184
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/transferencias"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "deposito_origem_id": 8,
    "deposito_destino_id": 20,
    "observacoes": "dolore",
    "itens": [
        {
            "produto_id": 13,
            "quantidade": 5184
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/transferencias

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

deposito_origem_id   integer   

The value and deposito_destino_id must be different. The id of an existing record in the depositos table. Example: 8

deposito_destino_id   integer   

The id of an existing record in the depositos table. Example: 20

observacoes   string  optional  

Example: dolore

itens   object[]   

validation.min.

produto_id   integer   

The id of an existing record in the produtos table. Example: 13

quantidade   number   

Example: 5184

GET api/transferencias/{transferencia_id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/transferencias/12" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transferencias/12"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/transferencias/{transferencia_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transferencia_id   integer   

The ID of the transferencia. Example: 12

Tenant — Fidelidade (pontos)

A CONFIGURAÇÃO fica em empresas.configuracoes.fidelidade (editada no modal da empresa).

Config efetiva (lida da empresa) — usada pelo PDV.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fidelidade/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fidelidade/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fidelidade/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Saldo e extrato de pontos de um cliente.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fidelidade/clientes/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fidelidade/clientes/5"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fidelidade/clientes/{cliente_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

cliente_id   integer   

The ID of the cliente. Example: 5

Resgata pontos e devolve o valor de desconto.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fidelidade/resgatar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cliente_id\": 8,
    \"pontos\": 83
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fidelidade/resgatar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cliente_id": 8,
    "pontos": 83
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fidelidade/resgatar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

cliente_id   integer   

The id of an existing record in the clientes table. Example: 8

pontos   integer   

validation.min. Example: 83

Tenant — Financeiro / Boleto

Configuração do convênio bancário para emissão de boletos (registro único).

GET api/boleto/config

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/boleto/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/boleto/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/boleto/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/boleto/config

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/boleto/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"banco\": \"rmkuinhjbuhltjm\",
    \"agencia\": \"aecljrilonzukv\",
    \"agencia_dv\": \"o\",
    \"conta\": \"mw\",
    \"conta_dv\": \"u\",
    \"carteira\": \"hwtsyidc\",
    \"convenio\": \"zchjoybf\",
    \"cedente_nome\": \"xtkjztwiinorvajmhuqbvrzrz\",
    \"cedente_documento\": \"yzundayxag\",
    \"nosso_numero_atual\": 9,
    \"juros_dia\": 15,
    \"multa\": 18,
    \"dias_protesto\": 18,
    \"instrucoes\": \"rhrlwuzkvxosucaeoq\",
    \"ativo\": false
}"
const url = new URL(
    "https://backend.valuor.com.br/api/boleto/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "banco": "rmkuinhjbuhltjm",
    "agencia": "aecljrilonzukv",
    "agencia_dv": "o",
    "conta": "mw",
    "conta_dv": "u",
    "carteira": "hwtsyidc",
    "convenio": "zchjoybf",
    "cedente_nome": "xtkjztwiinorvajmhuqbvrzrz",
    "cedente_documento": "yzundayxag",
    "nosso_numero_atual": 9,
    "juros_dia": 15,
    "multa": 18,
    "dias_protesto": 18,
    "instrucoes": "rhrlwuzkvxosucaeoq",
    "ativo": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/boleto/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

banco   string  optional  

validation.max. Example: rmkuinhjbuhltjm

agencia   string  optional  

validation.max. Example: aecljrilonzukv

agencia_dv   string  optional  

validation.max. Example: o

conta   string  optional  

validation.max. Example: mw

conta_dv   string  optional  

validation.max. Example: u

carteira   string  optional  

validation.max. Example: hwtsyidc

convenio   string  optional  

validation.max. Example: zchjoybf

cedente_nome   string  optional  

validation.max. Example: xtkjztwiinorvajmhuqbvrzrz

cedente_documento   string  optional  

validation.max. Example: yzundayxag

nosso_numero_atual   integer  optional  

validation.min. Example: 9

juros_dia   number  optional  

validation.min validation.max. Example: 15

multa   number  optional  

validation.min validation.max. Example: 18

dias_protesto   integer  optional  

validation.min validation.max. Example: 18

instrucoes   string  optional  

validation.max. Example: rhrlwuzkvxosucaeoq

ativo   boolean  optional  

Example: false

Tenant — Financeiro / Boleto CNAB

Geração de remessa e leitura de retorno de cobrança bancária (CNAB 240). Confira sempre as posições no manual do seu banco e valide no portal antes de usar em produção.

Lista as contas a receber elegíveis para remessa (pendentes, a receber).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/boleto/remessa/titulos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/boleto/remessa/titulos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/boleto/remessa/titulos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera o arquivo de remessa CNAB 240 e atualiza o nosso número.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/boleto/remessa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"titulos\": [
        10
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/boleto/remessa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "titulos": [
        10
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/boleto/remessa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

titulos   integer[]  optional  

Lê um arquivo de retorno CNAB 240 enviado e devolve as ocorrências.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/boleto/retorno" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpnEnnmb" 
const url = new URL(
    "https://backend.valuor.com.br/api/boleto/retorno"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/boleto/retorno

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. validation.max. Example: /tmp/phpnEnnmb

Tenant — Fiscal / Imposto

GET api/imposto/cfop

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/cfop" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/cfop"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/cfop

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/imposto/cfop

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/cfop" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/cfop"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/cfop

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/imposto/cfop/{tabela_cfop}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/imposto/cfop/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/cfop/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/imposto/cfop/{tabela_cfop}

PATCH api/imposto/cfop/{tabela_cfop}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_cfop   integer   

Example: 16

DELETE api/imposto/cfop/{tabela_cfop}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/imposto/cfop/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/cfop/11"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/imposto/cfop/{tabela_cfop}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_cfop   integer   

Example: 11

GET api/imposto/ncm

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/ncm" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ncm"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/ncm

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/imposto/ncm

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/ncm" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ncm"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/ncm

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/imposto/ncm/{tabela_ncm}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/imposto/ncm/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ncm/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/imposto/ncm/{tabela_ncm}

PATCH api/imposto/ncm/{tabela_ncm}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_ncm   integer   

Example: 8

DELETE api/imposto/ncm/{tabela_ncm}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/imposto/ncm/12" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ncm/12"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/imposto/ncm/{tabela_ncm}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_ncm   integer   

Example: 12

GET api/imposto/icms

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/icms" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/icms"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/icms

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/imposto/icms

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/icms" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/icms"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/icms

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/imposto/icms/{tabela_icm}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/imposto/icms/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/icms/5"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/imposto/icms/{tabela_icm}

PATCH api/imposto/icms/{tabela_icm}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_icm   integer   

Example: 5

DELETE api/imposto/icms/{tabela_icm}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/imposto/icms/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/icms/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/imposto/icms/{tabela_icm}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_icm   integer   

Example: 14

Importa o arquivo oficial do IBPT (De Olho no Imposto), CSV separado por ';' baixado por UF no site do IBPT. Substitui a tabela vigente (dado oficial, trimestral). Cabeçalho esperado: codigo;ex;tipo;descricao;nacionalfederal;importadosfederal;estadual;municipal;vigenciainicio;vigenciafim;chave;versao;fonte

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/ibpt/importar" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "arquivo=@/tmp/phpmBcJHA" 
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt/importar"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('arquivo', document.querySelector('input[name="arquivo"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/ibpt/importar

Headers

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

Body Parameters

arquivo   file   

Must be a file. Example: /tmp/phpmBcJHA

GET api/imposto/ibpt

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/ibpt" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/ibpt

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/imposto/ibpt

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/ibpt" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/ibpt

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/imposto/ibpt/{tabela_ibpt}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/imposto/ibpt/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/imposto/ibpt/{tabela_ibpt}

PATCH api/imposto/ibpt/{tabela_ibpt}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_ibpt   integer   

Example: 4

DELETE api/imposto/ibpt/{tabela_ibpt}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/imposto/ibpt/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/ibpt/17"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/imposto/ibpt/{tabela_ibpt}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tabela_ibpt   integer   

Example: 17

GET api/imposto/regra

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/imposto/regra" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/regra"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/imposto/regra

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/imposto/regra

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/imposto/regra" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/regra"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/imposto/regra

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/imposto/regra/{regra_imposto}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/imposto/regra/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/regra/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/imposto/regra/{regra_imposto}

PATCH api/imposto/regra/{regra_imposto}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

regra_imposto   integer   

Example: 7

DELETE api/imposto/regra/{regra_imposto}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/imposto/regra/14" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/imposto/regra/14"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/imposto/regra/{regra_imposto}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

regra_imposto   integer   

Example: 14

Tenant — Fiscal / Inventário

Inventário fiscal de estoque (base do Bloco H do SPED Fiscal), agrupado por CSOSN, CST, origem da mercadoria ou NCM. Calcula valor pelo custo: estoque_atual × preco_custo.

GET api/fiscal/inventario

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/inventario" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data\": \"2026-06-05T15:51:59\",
    \"search\": \"dwyoei\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/inventario"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "data": "2026-06-05T15:51:59",
    "search": "dwyoei"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/inventario

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

agrupar   string  optional  
data   string  optional  

validation.date. Example: 2026-06-05T15:51:59

search   string  optional  

validation.max. Example: dwyoei

Tenant — Fiscal / Lote XML

Empacota em ZIP os XMLs dos documentos fiscais de um período.

Quantidade de documentos disponíveis no período (pré-visualização).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/lote-xml/previa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/lote-xml/previa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/lote-xml/previa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera e baixa o ZIP com os XMLs do período.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/lote-xml/baixar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/lote-xml/baixar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/lote-xml/baixar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Fiscal / SPED

Geração do arquivo SPED Fiscal (EFD ICMS/IPI) a partir dos dados do tenant. Sempre valide o arquivo gerado no PVA da Receita antes de transmitir.

Pré-visualização: estatísticas do período (sem baixar o arquivo).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/sped/previa" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/sped/previa"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/sped/previa

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera e baixa o arquivo .txt do SPED Fiscal.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/sped/fiscal" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/sped/fiscal"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/sped/fiscal

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera e baixa o arquivo .txt da EFD-Contribuições (PIS/COFINS).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/sped/contribuicoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/sped/contribuicoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/sped/contribuicoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera e baixa o arquivo .txt do Sintegra (Convênio ICMS 57/95).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/sped/sintegra" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/sped/sintegra"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/sped/sintegra

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Tenant — Fiscal Eventos

Eventos pós-emissão fiscal: Carta de Correção (CC-e), Inutilização de numeração e EPEC (Evento Prévio em Contingência). Cancelamento continua nos controllers específicos (NfeController/NfceController) por conveniência.

Listar eventos (com filtros por tipo, modelo, chave).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/eventos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/eventos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/eventos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Carta de Correção (CC-e) — apenas NF-e (modelo 55). NFC-e não suporta.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/eventos/cce" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave\": \"repellat\",
    \"correcao\": \"voluptatem\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/eventos/cce"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave": "repellat",
    "correcao": "voluptatem"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/eventos/cce

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave   string   

Chave da NF-e a corrigir. Example: repellat

correcao   string   

Texto da correção (15..1000 chars). Example: voluptatem

Inutilização de range numérico.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/eventos/inutilizar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"modelo\": 1,
    \"serie\": 12,
    \"numero_inicial\": 4,
    \"numero_final\": 20,
    \"justificativa\": \"et\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/eventos/inutilizar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "modelo": 1,
    "serie": 12,
    "numero_inicial": 4,
    "numero_final": 20,
    "justificativa": "et"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/eventos/inutilizar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

modelo   integer   

55 ou 65 Example: 1

serie   integer   

Série (geralmente 1) Example: 12

numero_inicial   integer   

Primeiro número não utilizado Example: 4

numero_final   integer   

Último número não utilizado Example: 20

justificativa   string   

Mín. 15 caracteres Example: et

EPEC — Evento Prévio de Emissão em Contingência (NF-e modelo 55).

Dispara quando SEFAZ está fora; a NF-e completa é transmitida depois e amarrada ao protocolo do EPEC.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/eventos/epec" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 12
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/eventos/epec"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 12
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/eventos/epec

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

Example: 12

Tenant — Fiscal Painel

Painel operacional do fiscal: vendas pendentes/em contingência/rejeitadas, reprocessamento em lote, alertas (certificado expirando, SEFAZ off).

GET /fiscal/painel — KPI consolidado do dia + listas operacionais.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/painel?dias=7&empresa_id=1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/painel"
);

const params = {
    "dias": "7",
    "empresa_id": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/painel

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

dias   integer  optional  

Janela de tempo (padrão 7). Example: 7

empresa_id   integer  optional  

Filtro por empresa específica. Example: 1

GET /fiscal/painel/alertas — apenas os alertas (versão enxuta para o header).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/fiscal/painel/alertas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/painel/alertas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/fiscal/painel/alertas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST /fiscal/painel/reprocessar — reprocessa em lote vendas pendentes.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/fiscal/painel/reprocessar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_ids\": [
        \"quia\"
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/fiscal/painel/reprocessar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_ids": [
        "quia"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/fiscal/painel/reprocessar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_ids   string[]   

IDs das vendas a reprocessar.

Tenant — Importação (sistema legado)

Recebe lotes do migrador (Delphi) e faz upsert idempotente por codigo_legado. Multiloja: cada lote informa empresa_id (loja destino). Importação não dispara efeitos de negócio (estoque/fiscal/fidelidade) — é gravação de histórico.

POST api/import/clientes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/clientes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/clientes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/clientes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/import/produtos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/produtos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/produtos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/produtos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/import/financeiro

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/financeiro" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/financeiro"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/financeiro

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/import/vendas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/vendas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/vendas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/vendas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/import/notas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/notas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/notas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/notas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Baixa o XML arquivado de uma nota importada.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/import/notas/15/xml" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/notas/15/xml"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/import/notas/{nota_id}/xml

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

nota_id   integer   

The ID of the nota. Example: 15

Empresas (lojas) do tenant — o migrador casa as lojas do legado por CNPJ.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/import/empresas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/empresas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/import/empresas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Contagens já importadas (o migrador confere o que entrou).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/import/resumo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 2
}"
const url = new URL(
    "https://backend.valuor.com.br/api/import/resumo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 2
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/import/resumo

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer   

The id of an existing record in the empresas table. Example: 2

Lista os tokens do migrador do usuário logado.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/import/tokens" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/tokens"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/import/tokens

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Gera um novo token (mostrado uma única vez) para o migrador.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/import/tokens" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nome\": \"pgfnciiqhchykpdlhe\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/import/tokens"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "nome": "pgfnciiqhchykpdlhe"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/import/tokens

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

nome   string  optional  

validation.max. Example: pgfnciiqhchykpdlhe

Revoga um token do migrador.

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/import/tokens/suscipit" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/import/tokens/suscipit"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/import/tokens/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the token. Example: suscipit

Tenant — Integrações (canais de venda)

Configuração de canais externos (e-commerce/marketplace). Credenciais são armazenadas criptografadas. A ingestão de pedidos externos vira Venda.

GET api/integracoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/integracoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/integracoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/integracoes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/integracoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/integracoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/integracoes/{integracao_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/integracoes/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes/5"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/integracoes/{integracao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

integracao_id   integer   

The ID of the integracao. Example: 5

DELETE api/integracoes/{integracao_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/integracoes/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes/16"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/integracoes/{integracao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

integracao_id   integer   

The ID of the integracao. Example: 16

POST api/integracoes/{integracao_id}/regenerar-token

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/integracoes/8/regenerar-token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes/8/regenerar-token"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/integracoes/{integracao_id}/regenerar-token

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

integracao_id   integer   

The ID of the integracao. Example: 8

Ingestão de um pedido normalizado do canal → cria a Venda.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/integracoes/8/pedido" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"itens\": [
        {
            \"sku\": \"libero\",
            \"codigo\": \"ea\",
            \"quantidade\": 316425.0124,
            \"preco_unitario\": 73
        }
    ],
    \"observacoes\": \"optio\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/integracoes/8/pedido"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "itens": [
        {
            "sku": "libero",
            "codigo": "ea",
            "quantidade": 316425.0124,
            "preco_unitario": 73
        }
    ],
    "observacoes": "optio"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/integracoes/{integracao_id}/pedido

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

integracao_id   integer   

The ID of the integracao. Example: 8

Body Parameters

cliente   object  optional  
itens   object[]   

validation.min.

sku   string  optional  

This field is required when itens.*.codigo is not present. Example: libero

codigo   string  optional  

Example: ea

quantidade   number   

Example: 316425.0124

preco_unitario   number  optional  

validation.min. Example: 73

pagamento   object  optional  
observacoes   string  optional  

Example: optio

Tenant — MDF-e

Emissão de Manifesto Eletrônico de Documentos Fiscais (modelo 58) via API Fiscal, reaproveitando o cadastro de Veículos da Transportadora.

GET api/mdfe

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/mdfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/mdfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/mdfe

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/mdfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"uf_fim\": \"co\",
    \"data_inicio_viagem\": \"2026-06-05T15:52:34\",
    \"condutor_nome\": \"tlvajjydomtfvkj\",
    \"condutor_cpf\": \"dkognohd\",
    \"valor_carga\": 38,
    \"quantidade_carga\": 68,
    \"tipo_emitente\": \"1\",
    \"tipo_transporte\": \"3\",
    \"veiculo_ids\": [
        11
    ],
    \"nome_mun_descarregamento\": \"uhjzomsgivwhcvymhgbo\",
    \"cod_mun_descarregamento\": \"rxsrm\",
    \"lacre_rodoviario\": \"vyibnk\",
    \"info_complementar\": \"b\",
    \"chaves_nfe\": [
        \"aut\"
    ],
    \"chaves_cte\": [
        \"similique\"
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "uf_fim": "co",
    "data_inicio_viagem": "2026-06-05T15:52:34",
    "condutor_nome": "tlvajjydomtfvkj",
    "condutor_cpf": "dkognohd",
    "valor_carga": 38,
    "quantidade_carga": 68,
    "tipo_emitente": "1",
    "tipo_transporte": "3",
    "veiculo_ids": [
        11
    ],
    "nome_mun_descarregamento": "uhjzomsgivwhcvymhgbo",
    "cod_mun_descarregamento": "rxsrm",
    "lacre_rodoviario": "vyibnk",
    "info_complementar": "b",
    "chaves_nfe": [
        "aut"
    ],
    "chaves_cte": [
        "similique"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/mdfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

uf_fim   string   

validation.size. Example: co

data_inicio_viagem   string   

validation.date. Example: 2026-06-05T15:52:34

condutor_nome   string   

validation.max. Example: tlvajjydomtfvkj

condutor_cpf   string   

validation.max. Example: dkognohd

valor_carga   number   

validation.min. Example: 38

quantidade_carga   number   

validation.min. Example: 68

tipo_emitente   integer  optional  

Example: 1

Must be one of:
  • 1
  • 2
tipo_transporte   integer  optional  

Example: 3

Must be one of:
  • 1
  • 2
  • 3
veiculo_ids   integer[]  optional  
nome_mun_descarregamento   string  optional  

validation.max. Example: uhjzomsgivwhcvymhgbo

cod_mun_descarregamento   string  optional  

validation.max. Example: rxsrm

lacre_rodoviario   string  optional  

validation.max. Example: vyibnk

info_complementar   string  optional  

validation.max. Example: b

chaves_nfe   string[]  optional  
chaves_cte   string[]  optional  

GET api/mdfe/{mdfe_id}/consultar

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/mdfe/7/consultar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe/7/consultar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/mdfe/{mdfe_id}/consultar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

mdfe_id   integer   

The ID of the mdfe. Example: 7

POST api/mdfe/{mdfe_id}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/mdfe/8/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"justificativa\": \"knebgnclq\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe/8/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "justificativa": "knebgnclq"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/mdfe/{mdfe_id}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

mdfe_id   integer   

The ID of the mdfe. Example: 8

Body Parameters

justificativa   string   

validation.min validation.max. Example: knebgnclq

POST api/mdfe/{mdfe_id}/encerrar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/mdfe/15/encerrar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe/15/encerrar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/mdfe/{mdfe_id}/encerrar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

mdfe_id   integer   

The ID of the mdfe. Example: 15

GET api/mdfe/{mdfe_id}/damdfe

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/mdfe/6/damdfe" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/mdfe/6/damdfe"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/mdfe/{mdfe_id}/damdfe

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

mdfe_id   integer   

The ID of the mdfe. Example: 6

Tenant — Metas de Vendas

Metas mensais por vendedor (ou gerais da empresa) com acompanhamento do realizado, percentual de atingimento e projeção linear até o fim do mês.

GET api/metas

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/metas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/metas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/metas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Resumo consolidado do mês corrente (para o painel).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/metas/resumo" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/metas/resumo"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/metas/resumo

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/metas

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/metas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 11,
    \"vendedor_id\": 11,
    \"ano\": 18,
    \"mes\": 11,
    \"valor_meta\": 58
}"
const url = new URL(
    "https://backend.valuor.com.br/api/metas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 11,
    "vendedor_id": 11,
    "ano": 18,
    "mes": 11,
    "valor_meta": 58
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/metas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer  optional  

Example: 11

vendedor_id   integer  optional  

Example: 11

ano   integer   

validation.min validation.max. Example: 18

mes   integer   

validation.min validation.max. Example: 11

valor_meta   number   

validation.min. Example: 58

PUT api/metas/{meta_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/metas/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"valor_meta\": 53
}"
const url = new URL(
    "https://backend.valuor.com.br/api/metas/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "valor_meta": 53
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/metas/{meta_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

meta_id   integer   

The ID of the meta. Example: 19

Body Parameters

valor_meta   number   

validation.min. Example: 53

DELETE api/metas/{meta_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/metas/17" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/metas/17"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/metas/{meta_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

meta_id   integer   

The ID of the meta. Example: 17

Tenant — NF Destinadas (Manifesto do Destinatário)

Consulta notas fiscais emitidas CONTRA o CNPJ do tenant (compras), manifesta ciência/confirmação e permite dar entrada no estoque.

GET /nfe-destinadas — lista as notas destinadas já baixadas.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfe-destinadas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe-destinadas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfe-destinadas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST /nfe-destinadas/buscar — consulta SEFAZ por novos documentos.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe-destinadas/buscar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe-destinadas/buscar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe-destinadas/buscar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST /nfe-destinadas/manifestar — manifesta um documento.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/nfe-destinadas/manifestar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"chave\": \"bftxpbjlhzkiovxrslbhugtqrpiimaahhwzjabgshcvc\",
    \"evento\": \"3\",
    \"justificativa\": \"ukkkztcrohgwzppcj\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe-destinadas/manifestar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "chave": "bftxpbjlhzkiovxrslbhugtqrpiimaahhwzjabgshcvc",
    "evento": "3",
    "justificativa": "ukkkztcrohgwzppcj"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/nfe-destinadas/manifestar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

chave   string   

validation.size. Example: bftxpbjlhzkiovxrslbhugtqrpiimaahhwzjabgshcvc

evento   integer   

Example: 3

Must be one of:
  • 1
  • 2
  • 3
  • 4
justificativa   string  optional  

validation.min validation.max. Example: ukkkztcrohgwzppcj

GET /nfe-destinadas/{chave}/xml — baixa o XML do documento.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/nfe-destinadas/sed/xml" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/nfe-destinadas/sed/xml"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/nfe-destinadas/{chave}/xml

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

chave   string   

Example: sed

Tenant — PDV

Autoriza um desconto acima do limite do operador, mediante senha de um supervisor/gerente/admin (ou usuário com limite suficiente). Não troca a sessão.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pdv/autorizar-desconto" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"identificador\": \"totam\",
    \"senha\": \"sit\",
    \"percentual\": 1
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pdv/autorizar-desconto"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "identificador": "totam",
    "senha": "sit",
    "percentual": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pdv/autorizar-desconto

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

identificador   string   

Example: totam

senha   string   

email ou login do supervisor. Example: sit

percentual   number   

validation.min validation.max. Example: 1

Imprime o cupom de uma venda em impressora térmica ESC/POS via rede.

A impressora (IP/porta) vem das configurações da empresa (configuracoes.pdv_impressora_ip / pdv_impressora_porta).

Retorna { printed: false } (200) quando não há impressora configurada, para o PDV cair no cupom do navegador.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pdv/imprimir-rede" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 2
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pdv/imprimir-rede"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 2
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pdv/imprimir-rede

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

validation.min. Example: 2

Retorna os bytes ESC/POS do cupom em base64, para impressão no navegador via QZ Tray (cenário nuvem → impressora na rede local).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pdv/cupom-escpos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"venda_id\": 32
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pdv/cupom-escpos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "venda_id": 32
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pdv/cupom-escpos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

venda_id   integer   

validation.min. Example: 32

Tenant — PIX (recebimento)

Webhook do provedor (sem auth; tenant resolvido pelo domínio).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pix/webhook/est" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pix/webhook/est"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pix/webhook/{provedor}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

provedor   string   

Example: est

Configuração atual do PIX (admin).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pix/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pix/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pix/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Salva a configuração do PIX.

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/pix/config" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"provedor\": \"autem\",
    \"ativo\": false,
    \"sandbox\": false,
    \"chave_pix\": \"svrzbppmmdcihc\",
    \"expira_segundos\": 20
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pix/config"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "provedor": "autem",
    "ativo": false,
    "sandbox": false,
    "chave_pix": "svrzbppmmdcihc",
    "expira_segundos": 20
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/pix/config

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

provedor   string   

Example: autem

ativo   boolean  optional  

Example: false

sandbox   boolean  optional  

Example: false

chave_pix   string  optional  

validation.max. Example: svrzbppmmdcihc

expira_segundos   integer  optional  

validation.min validation.max. Example: 20

credenciais   object  optional  

Cria uma cobrança PIX (QR dinâmico).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/pix/cobrancas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"valor\": 50,
    \"venda_id\": 12,
    \"descricao\": \"rdubrmlxy\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/pix/cobrancas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "valor": 50,
    "venda_id": 12,
    "descricao": "rdubrmlxy"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/pix/cobrancas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

valor   number   

validation.min. Example: 50

venda_id   integer  optional  

Example: 12

descricao   string  optional  

validation.max. Example: rdubrmlxy

Consulta/atualiza o status de uma cobrança (polling do PDV).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/pix/cobrancas/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/pix/cobrancas/11"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/pix/cobrancas/{pixCobranca_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

pixCobranca_id   integer   

The ID of the pixCobranca. Example: 11

Tenant — Produtos (Perfil 360°)

Endpoints de agregação para o perfil 360° do produto: entradas (compras), saídas (vendas), documentos fiscais (NF-e/NFC-e) e indicadores consolidados. Todos aceitam ?empresa_id= para escopar as saídas por empresa (omitir = todas).

Curva ABC — classificação de produtos por faturamento.

A = até 80% do faturamento acumulado · B = 80–95% · C = 95–100%.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/curva-abc?meses=12&empresa_id=1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/curva-abc"
);

const params = {
    "meses": "12",
    "empresa_id": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/curva-abc

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

meses   integer  optional  

Janela em meses (0 = todo o histórico). Example: 12

empresa_id   integer  optional  

Escopa por empresa. Example: 1

Alerta de reposição — cruza classe ABC × cobertura de estoque.

Para cada produto com saída no período calcula o consumo diário, os dias de cobertura do estoque atual e uma sugestão de compra para atingir a cobertura-alvo (definida por classe: A mais dias, C menos). Prioriza A com baixa cobertura.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/reposicao?meses=6&empresa_id=1&classe=A&status=critico&apenas_alerta=1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/reposicao"
);

const params = {
    "meses": "6",
    "empresa_id": "1",
    "classe": "A",
    "status": "critico",
    "apenas_alerta": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/reposicao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

meses   integer  optional  

Janela de consumo em meses. Example: 6

empresa_id   integer  optional  

Escopa por empresa. Example: 1

classe   string  optional  

Filtrar por classe (A|B|C). Example: A

status   string  optional  

Filtrar por status (critico|atencao|ok). Example: critico

apenas_alerta   boolean  optional  

Retornar só itens em alerta (default true). Example: true

GET api/produtos/{produto_id}/perfil

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/9/perfil" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/9/perfil"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/perfil

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 9

Saldo do produto por depósito.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/1/saldos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/1/saldos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/saldos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 1

Saídas — itens de venda deste produto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/17/vendas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/17/vendas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/vendas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 17

Entradas — itens de compra deste produto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/9/compras" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/9/compras"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/compras

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 9

Documentos fiscais (NF-e e NFC-e) que contêm o produto.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/produtos/17/fiscal" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/produtos/17/fiscal"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/produtos/{produto_id}/fiscal

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

produto_id   integer   

The ID of the produto. Example: 17

Tenant — Quick Search

Busca global em paralelo nas entidades mais consultadas. Usada pelo Cmd+K da interface — devolve até 5 resultados por entidade, com URL de destino.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/quick-search" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/quick-search"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Tenant — Relatórios (exportação)

Exporta os relatórios existentes em CSV (Excel) ou PDF, reaproveitando a mesma lógica/filtros do RelatorioController. Ex.: GET /relatorios/vendas/export?formato=csv

GET api/relatorios/{tipo}/export

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/relatorios/incidunt/export" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/relatorios/incidunt/export"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/relatorios/{tipo}/export

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

tipo   string   

Example: incidunt

Tenant — Tags (clientes)

GET api/tags

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tags"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/tags

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/tags

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/tags" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tags"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/tags

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

GET api/tags/{id}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/tags/9" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tags/9"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/tags/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the tag. Example: 9

PUT api/tags/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/tags/6" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tags/6"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/tags/{id}

PATCH api/tags/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the tag. Example: 6

DELETE api/tags/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/tags/7" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/tags/7"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/tags/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the tag. Example: 7

Tenant — Transportadora

Parceiros de transporte: tomador de serviço, destinatário e remetente. Filtrados/segmentados pelo campo papel.

GET api/transportadores

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/transportadores" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transportadores"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/transportadores

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/transportadores

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/transportadores" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transportadores"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/transportadores

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/transportadores/{transportador_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/transportadores/13" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transportadores/13"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/transportadores/{transportador_id}

PATCH api/transportadores/{transportador_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transportador_id   integer   

The ID of the transportador. Example: 13

DELETE api/transportadores/{transportador_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/transportadores/4" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/transportadores/4"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/transportadores/{transportador_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

transportador_id   integer   

The ID of the transportador. Example: 4

GET api/veiculos

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/veiculos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/veiculos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/veiculos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/veiculos

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/veiculos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/veiculos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/veiculos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/veiculos/{id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/veiculos/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/veiculos/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/veiculos/{id}

PATCH api/veiculos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the veiculo. Example: 3

DELETE api/veiculos/{id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/veiculos/3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/veiculos/3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/veiculos/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   integer   

The ID of the veiculo. Example: 3

GET api/parceiros-transporte

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/parceiros-transporte" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/parceiros-transporte"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/parceiros-transporte

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/parceiros-transporte

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/parceiros-transporte" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/parceiros-transporte"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/parceiros-transporte

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/parceiros-transporte/{parceiro_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/parceiros-transporte/19" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/parceiros-transporte/19"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/parceiros-transporte/{parceiro_id}

PATCH api/parceiros-transporte/{parceiro_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

parceiro_id   integer   

The ID of the parceiro. Example: 19

DELETE api/parceiros-transporte/{parceiro_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/parceiros-transporte/20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/parceiros-transporte/20"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/parceiros-transporte/{parceiro_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

parceiro_id   integer   

The ID of the parceiro. Example: 20

Tenant — Valuor Shopping

Carrinho do cliente (scan & go): cria sessão ao ler o QR da loja, adiciona/ remove itens escaneados, finaliza e importa no caixa (gera Venda).

Obs.: enquanto o app do consumidor não existe, estes endpoints rodam sob a autenticação do tenant. Quando o app for criado, a criação de sessão/itens ganhará um guard de cliente-consumidor próprio.

POST api/shopping/app/sessao

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/sessao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 8,
    \"cliente_id\": 8,
    \"origem\": \"app\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/sessao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 8,
    "cliente_id": 8,
    "origem": "app"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/sessao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer   

The id of an existing record in the empresas table. Example: 8

cliente_id   integer  optional  

The id of an existing record in the clientes table. Example: 8

origem   string  optional  

Example: app

Must be one of:
  • app
  • pwa
  • totem

GET api/shopping/app/{token}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/app/recusandae" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/recusandae"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/app/{token}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: recusandae

POST api/shopping/app/{token}/itens

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/veniam/itens" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": 15,
    \"codigo_barras\": \"kctulrte\",
    \"quantidade\": 21
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/veniam/itens"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": 15,
    "codigo_barras": "kctulrte",
    "quantidade": 21
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/{token}/itens

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: veniam

Body Parameters

produto_id   integer  optional  

Example: 15

codigo_barras   string  optional  

validation.max. Example: kctulrte

quantidade   number  optional  

validation.min. Example: 21

DELETE api/shopping/app/{token}/itens/{item}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/shopping/app/aut/itens/voluptatibus" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/aut/itens/voluptatibus"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/shopping/app/{token}/itens/{item}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: aut

item   string   

Example: voluptatibus

Identificação do consumidor por CPF (F3). Vincula/cria o cliente e o associa ao carrinho — habilita pontos de fidelidade na venda gerada.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/hic/identificar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"cpf\": \"lukzlgoglztuuy\",
    \"nome\": \"wzlkxmmjktfmlcf\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/hic/identificar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "cpf": "lukzlgoglztuuy",
    "nome": "wzlkxmmjktfmlcf"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/{token}/identificar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: hic

Body Parameters

cpf   string   

validation.max. Example: lukzlgoglztuuy

nome   string  optional  

validation.max. Example: wzlkxmmjktfmlcf

Histórico de compras do consumidor identificado no carrinho (F3).

Atrelado a uma sessão ativa (token) para evitar enumeração por CPF.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/app/quibusdam/historico" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/quibusdam/historico"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/app/{token}/historico

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: quibusdam

Lista os favoritos do consumidor identificado (F4).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/app/distinctio/favoritos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/distinctio/favoritos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/app/{token}/favoritos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: distinctio

Liga/desliga um produto dos favoritos do consumidor (F4).

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/molestiae/favoritos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": 19
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/molestiae/favoritos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": 19
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/{token}/favoritos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: molestiae

Body Parameters

produto_id   integer   

Example: 19

Ficha do produto (F4) — campos gated pela config `exibir` da empresa.

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/app/voluptatem/produto/nesciunt" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/voluptatem/produto/nesciunt"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/app/{token}/produto/{produto}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: voluptatem

produto   string   

The produto. Example: nesciunt

Define os pontos de cashback a resgatar nesta compra (F4). `pontos=0` cancela.

A baixa dos pontos ocorre só na importação no caixa.

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/aut/resgatar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"pontos\": 69
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/aut/resgatar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "pontos": 69
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/{token}/resgatar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: aut

Body Parameters

pontos   integer   

validation.min. Example: 69

POST api/shopping/app/{token}/finalizar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/app/consequatur/finalizar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/app/consequatur/finalizar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/app/{token}/finalizar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: consequatur

Parâmetros do Valuor Shopping da empresa (para a tela de gestão).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/config/delectus" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/config/delectus"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/config/{empresa}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa   string   

Example: delectus

Atualiza (merge) os parâmetros do Shopping em configuracoes['shopping'].

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/shopping/config/nisi" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"expiracao_minutos\": 1,
    \"divergencia\": \"autorizar\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/config/nisi"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "expiracao_minutos": 1,
    "divergencia": "autorizar"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/shopping/config/{empresa}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa   string   

Example: nisi

Body Parameters

expiracao_minutos   integer  optional  

validation.min validation.max. Example: 1

divergencia   string  optional  

Example: autorizar

Must be one of:
  • alertar
  • autorizar
  • bloquear
compartilhar   object  optional  
exibir   object  optional  

GET api/shopping/promocoes

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/promocoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/promocoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/promocoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

POST api/shopping/promocoes

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/promocoes" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/promocoes"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/promocoes

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

PUT api/shopping/promocoes/{promocao_id}

Example request:
curl --request PUT \
    "https://backend.valuor.com.br/api/shopping/promocoes/11" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/promocoes/11"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

PUT api/shopping/promocoes/{promocao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

promocao_id   integer   

The ID of the promocao. Example: 11

DELETE api/shopping/promocoes/{promocao_id}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/shopping/promocoes/8" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/promocoes/8"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/shopping/promocoes/{promocao_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

promocao_id   integer   

The ID of the promocao. Example: 8

Monitor de carrinhos da loja (gestão/caixa).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/carrinhos" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 19,
    \"status\": \"psybocp\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/carrinhos"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 19,
    "status": "psybocp"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/carrinhos

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer  optional  

Example: 19

status   string  optional  

validation.max. Example: psybocp

Métricas de gestão da loja (Valuor Shopping): conversão, faturamento, ticket médio e carrinhos ativos agora. Período em dias (padrão: hoje).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/metricas" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 4,
    \"dias\": 2
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/metricas"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 4,
    "dias": 2
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/metricas

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer  optional  

Example: 4

dias   integer  optional  

validation.min validation.max. Example: 2

Payload do QR da loja — exibido/impresso pela loja; o app do consumidor lê para iniciar a sessão de carrinho. A "loja" é a empresa (matriz/filial).

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/loja-qr/sit" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/loja-qr/sit"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/loja-qr/{empresa}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

empresa   string   

Example: sit

POST api/shopping/sessao

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"empresa_id\": 8,
    \"cliente_id\": 19,
    \"origem\": \"app\"
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "empresa_id": 8,
    "cliente_id": 19,
    "origem": "app"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

empresa_id   integer   

The id of an existing record in the empresas table. Example: 8

cliente_id   integer  optional  

The id of an existing record in the clientes table. Example: 19

origem   string  optional  

Example: app

Must be one of:
  • app
  • pwa
  • totem

GET api/shopping/sessao/{token}

Example request:
curl --request GET \
    --get "https://backend.valuor.com.br/api/shopping/sessao/nihil" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/nihil"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

GET api/shopping/sessao/{token}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: nihil

POST api/shopping/sessao/{token}/itens

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/quasi/itens" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"produto_id\": 18,
    \"codigo_barras\": \"eqpydrc\",
    \"quantidade\": 46
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/quasi/itens"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "produto_id": 18,
    "codigo_barras": "eqpydrc",
    "quantidade": 46
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/itens

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: quasi

Body Parameters

produto_id   integer  optional  

Example: 18

codigo_barras   string  optional  

validation.max. Example: eqpydrc

quantidade   number  optional  

validation.min. Example: 46

DELETE api/shopping/sessao/{token}/itens/{item}

Example request:
curl --request DELETE \
    "https://backend.valuor.com.br/api/shopping/sessao/mollitia/itens/officia" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/mollitia/itens/officia"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

DELETE api/shopping/sessao/{token}/itens/{item}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: mollitia

item   string   

Example: officia

POST api/shopping/sessao/{token}/itens/{item}/pesar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/a/itens/veritatis/pesar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"quantidade\": 68
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/a/itens/veritatis/pesar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "quantidade": 68
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/itens/{item}/pesar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: a

item   string   

Example: veritatis

Body Parameters

quantidade   number   

validation.min. Example: 68

POST api/shopping/sessao/{token}/conferir

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/illo/conferir" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"itens\": [
        {
            \"produto_id\": 13,
            \"codigo_barras\": \"wuswxpjjvpgwvieacxu\",
            \"quantidade\": 83
        }
    ]
}"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/illo/conferir"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "itens": [
        {
            "produto_id": 13,
            "codigo_barras": "wuswxpjjvpgwvieacxu",
            "quantidade": 83
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/conferir

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: illo

Body Parameters

itens   object[]   

validation.min.

produto_id   integer  optional  

Example: 13

codigo_barras   string  optional  

validation.max. Example: wuswxpjjvpgwvieacxu

quantidade   number  optional  

validation.min. Example: 83

POST api/shopping/sessao/{token}/finalizar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/omnis/finalizar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/omnis/finalizar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/finalizar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: omnis

POST api/shopping/sessao/{token}/cancelar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/sed/cancelar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/sed/cancelar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/cancelar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: sed

POST api/shopping/sessao/{token}/importar

Example request:
curl --request POST \
    "https://backend.valuor.com.br/api/shopping/sessao/dolores/importar" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://backend.valuor.com.br/api/shopping/sessao/dolores/importar"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "message": "Server Error"
}
 

Request      

POST api/shopping/sessao/{token}/importar

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

token   string   

Example: dolores