#!/bin/bash
# Exemplo de integração com a API Fiscal SysVelox — cURL (funciona em qualquer terminal
# Linux/macOS com curl instalado; no Windows, use o Git Bash ou WSL).
#
# 1. Troque API_KEY pela sua chave (gerada em https://api.sysvelox.com/conta/chaves.php)
# 2. Troque COMPANY_ID pelo ID da sua empresa (veja em https://api.sysvelox.com/conta/empresas.php)
# 3. Rode: bash exemplo.sh

set -e

API_KEY="sk_test_TROQUE_PELA_SUA_CHAVE"
COMPANY_ID="TROQUE_PELO_ID_DA_EMPRESA"
BASE_URL="https://api.sysvelox.com"

# payment_method (opcional, padrão "dinheiro"): dinheiro, cheque, cartao_credito,
# cartao_debito, credito_loja, vale_alimentacao, vale_refeicao, vale_presente,
# vale_combustivel, boleto, deposito_bancario, pix, transferencia, sem_pagamento, outros.
# destinatario (opcional): CPF/CNPJ do cliente na nota — omita pra consumidor não identificado.
#
# OPÇÕES AVANÇADAS (JSON não aceita comentário dentro do -d, então ficam aqui em texto —
# só acrescentar a chave dentro do corpo abaixo quando precisar). Referência completa em
# https://api.sysvelox.com/docs/referencia.php:
#   "discount_cents": 500        desconto total da venda, em centavos
#   "freight_cents": 300         frete, em centavos
#   "change_cents": 500          troco (só com payment_method = dinheiro)
#   "payments": [                pagamento dividido — substitui payment_method
#     {"method": "dinheiro", "amount_cents": 500},
#     {"method": "cartao_credito", "amount_cents": 500}
#   ]
echo "== Emitindo NFC-e =="
RESPOSTA=$(curl -sS -X POST "$BASE_URL/v1/nfce" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: exemplo-$(date +%s)" \
  -d '{
    "company_id": "'"$COMPANY_ID"'",
    "payment_method": "pix",
    "destinatario": {
      "documento": "11122233396",
      "nome": "Cliente Exemplo"
    },
    "items": [
      {
        "description": "Produto de exemplo",
        "ncm": "12345678",
        "cfop": "5102",
        "unit": "UN",
        "quantity": 1,
        "unit_price_cents": 1000,
        "total_cents": 1000,
        "csosn": "102",
        "cst_pis": "07",
        "cst_cofins": "07"
      }
    ]
  }')

echo "$RESPOSTA"

# Extrai o id do documento da resposta (sem dependência de jq — só grep/sed)
DOC_ID=$(echo "$RESPOSTA" | grep -o '"id":"[^"]*"' | head -1 | sed 's/"id":"//;s/"//')

if [ -z "$DOC_ID" ]; then
  echo "Não consegui extrair o id do documento — confira o erro acima."
  exit 1
fi

echo ""
echo "== Consultando status de $DOC_ID (aguardando alguns segundos) =="
sleep 5

curl -sS "$BASE_URL/v1/notas/$DOC_ID" \
  -H "Authorization: Bearer $API_KEY"
echo ""
