Sessões de caixa
Abertura, movimentos e fechamento.
Base: https://api.nivesistemas.com.br · 16 endpoints
GET /cash-sessions/active
Seção intitulada “GET /cash-sessions/active”Sessão de caixa ativa
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/active" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/active", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/active", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/suggested-opening
Seção intitulada “GET /cash-sessions/suggested-opening”Sugestão de saldo inicial (último fechamento)
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/suggested-opening" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/suggested-opening", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/suggested-opening", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions
Seção intitulada “GET /cash-sessions”Listar sessões de caixa
curl -X GET "https://api.nivesistemas.com.br/cash-sessions" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/:id
Seção intitulada “GET /cash-sessions/:id”Detalhe
Parâmetros de rota: id
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/{id}" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/{id}", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())POST /cash-sessions/open
Seção intitulada “POST /cash-sessions/open”Abrir sessão de caixa
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/open" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/open", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/open", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())POST /cash-sessions/:id/movements
Seção intitulada “POST /cash-sessions/:id/movements”Registrar lançamento de caixa
Parâmetros de rota: id
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/{id}/movements" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/movements", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/{id}/movements", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())POST /cash-sessions/:id/close
Seção intitulada “POST /cash-sessions/:id/close”Fechar sessão de caixa
Parâmetros de rota: id
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/{id}/close" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/close", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/{id}/close", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/movements
Seção intitulada “GET /cash-sessions/movements”Histórico de movimentações de caixa (todas as sessões)
Query params
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
from |
string | não | Data inicial |
to |
string | não | Data final |
registerId |
uuid | não | Caixa |
userId |
uuid | não | Operador |
sessionId |
uuid | não | Sessão |
type |
string | não | Tipo da movimentação |
status |
string | não | ACTIVE ou CANCELLED |
page |
integer | não | Página |
pageSize |
integer | não | Itens por página (até 100) |
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/movements" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/movements", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/movements", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/:id/movements
Seção intitulada “GET /cash-sessions/:id/movements”Movimentações da sessão
Parâmetros de rota: id
Query params
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status |
string | não | ACTIVE, CANCELLED ou all |
type |
string | não | Tipo da movimentação |
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/{id}/movements" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/movements", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/{id}/movements", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/:id/summary
Seção intitulada “GET /cash-sessions/:id/summary”Resumo da sessão (totais por forma de pagamento)
Parâmetros de rota: id
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/{id}/summary" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/summary", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/{id}/summary", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())GET /cash-sessions/:id/report
Seção intitulada “GET /cash-sessions/:id/report”Relatório de fechamento
Parâmetros de rota: id
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/{id}/report" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/report", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/{id}/report", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())POST /cash-sessions/:id/adjustments
Seção intitulada “POST /cash-sessions/:id/adjustments”Lançar ajuste de caixa
Parâmetros de rota: id
Corpo (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type |
string | sim | ADJUSTMENT_IN ou ADJUSTMENT_OUT |
amount |
number | sim | Valor |
notes |
string | sim | Motivo |
Resposta: 201 Created
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/{id}/adjustments" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo" \ -H "Content-Type: application/json" \ -d '{"type":"","amount":0,"notes":""}'const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/adjustments", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", "Content-Type": "application/json", }, body: JSON.stringify({ "type": "", "amount": 0, "notes": "" }),});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/{id}/adjustments", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", }, json={ "type": "", "amount": 0, "notes": "" },)print(res.json())POST /cash-sessions/:id/reopen
Seção intitulada “POST /cash-sessions/:id/reopen”Reabrir sessão fechada
Parâmetros de rota: id
Corpo (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
reason |
string | não | Motivo |
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/{id}/reopen" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo" \ -H "Content-Type: application/json" \ -d '{"reason":""}'const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/reopen", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", "Content-Type": "application/json", }, body: JSON.stringify({ "reason": "" }),});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/{id}/reopen", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", }, json={ "reason": "" },)print(res.json())POST /cash-sessions/movements/:movementId/cancel
Seção intitulada “POST /cash-sessions/movements/:movementId/cancel”Cancelar movimentação (sangria, suprimento, ajuste)
Parâmetros de rota: movementId
Corpo (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
reason |
string | não | Motivo |
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/movements/{movementId}/cancel" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo" \ -H "Content-Type: application/json" \ -d '{"reason":""}'const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/movements/{movementId}/cancel", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", "Content-Type": "application/json", }, body: JSON.stringify({ "reason": "" }),});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/movements/{movementId}/cancel", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", }, json={ "reason": "" },)print(res.json())GET /cash-sessions/treasury-accounts
Seção intitulada “GET /cash-sessions/treasury-accounts”Contas (cofre, banco…) que podem receber a sangria ou o valor retirado no fechamento
Resposta: Lista de contas ativas: id, name, type e defaultCashDestination.
curl -X GET "https://api.nivesistemas.com.br/cash-sessions/treasury-accounts" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo"const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/treasury-accounts", { method: "GET", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },});const data = await res.json();import requests
res = requests.request( "GET", "https://api.nivesistemas.com.br/cash-sessions/treasury-accounts", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", },)print(res.json())POST /cash-sessions/:id/transfer
Seção intitulada “POST /cash-sessions/:id/transfer”Transferir dinheiro entre dois caixas abertos (sangria na origem + suprimento no destino)
Parâmetros de rota: id
Corpo (JSON)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
targetSessionId |
uuid | sim | Sessão de caixa de destino (diferente da origem) |
amount |
number | sim | Valor maior que zero |
notes |
string | não | Motivo (até 500) |
allowOverdraft |
boolean | não | Permite deixar o caixa de origem negativo; só vale para quem tem a permissão cash.authorize_difference |
Resposta: 201 Created — o detalhe da sessão de origem. Exige a permissão cash.manage. 400 se as duas sessões não estão abertas ou reabertas, ou se são de filiais diferentes; saldo insuficiente na origem também é recusado, salvo allowOverdraft autorizado.
curl -X POST "https://api.nivesistemas.com.br/cash-sessions/{id}/transfer" \ -H "Authorization: Bearer sl_live_exemplo_abc123xyz789" \ -H "X-Store-Slug: loja-demo" \ -H "Content-Type: application/json" \ -d '{"targetSessionId":"00000000-0000-0000-0000-000000000000","amount":0,"notes":"","allowOverdraft":true}'const res = await fetch("https://api.nivesistemas.com.br/cash-sessions/{id}/transfer", { method: "POST", headers: { Authorization: "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", "Content-Type": "application/json", }, body: JSON.stringify({ "targetSessionId": "00000000-0000-0000-0000-000000000000", "amount": 0, "notes": "", "allowOverdraft": true }),});const data = await res.json();import requests
res = requests.request( "POST", "https://api.nivesistemas.com.br/cash-sessions/{id}/transfer", headers={ "Authorization": "Bearer sl_live_exemplo_abc123xyz789", "X-Store-Slug": "loja-demo", }, json={ "targetSessionId": "00000000-0000-0000-0000-000000000000", "amount": 0, "notes": "", "allowOverdraft": True },)print(res.json())
