Um sistema automatizado que consulta pedidos da plataforma VTEX e envia alertas via Telegram quando há pedidos pendentes de faturamento.
O projeto foi desenvolvido para empresas que utilizam a VTEX como plataforma de e-commerce e precisam de um monitoramento em tempo real dos pedidos que ainda não foram faturados.
Ao detectar pedidos com status pendente, o bot envia uma notificação para um grupo ou usuário específico no Telegram.
- Python 3.9
- VTEX API
- Telegram Bot API
requests,dotenv,loggingpytestpara testes automatizados
vetx_order_notification/
├── main.py # Script principal de execução
├── .env # Variáveis de ambiente (não subir no Git!)
├── requirements.txt # Bibliotecas necessárias
├── pytest.ini # Configuração do pytest
├── render.yaml # Configuração para deploy na Render
├── vtex/ # Módulo com funções de integração com a VTEX
│ ├── __init__.py
│ └── vtex_api.py
├── utils/ # Funções auxiliares (horário, relatórios, etc.)
│ ├── __init__.py
│ └── utils.py
├── notifications/ # Módulo de notificações via Telegram
│ ├── __init__.py
│ └── telegram.py
├── tests/ # Testes automatizados
│ ├── test_env_vars.py
│ ├── test_api_vtex_real.py
│ ├── test_telegram_real.py
│ └── __init__.py
└── logs/ # (gerado em runtime) arquivos de log do dia- Consulta a API da VTEX e coleta todos os pedidos do mês atual.
- Filtra pedidos com status diferente de "faturado" ou "cancelado".
- Envia mensagens personalizadas no Telegram com os dados do pedido.
- Gera e envia um resumo com o total de pedidos pendentes, faturados e cancelados.
- Exibe logs informativos no console (ou arquivo se configurado).
git clone https://github.com/seu-usuario/vetx_order_notification.git
cd vetx_order_notificationpython3.9 -m venv venv
source venv/bin/activate # ou .\venv\Scripts\activate no Windowspip install -r requirements.txtCrie um arquivo .env com:
URL=https://sualoja.vtexcommercestable.com.br/api/oms/pvt/orders
APPKEY=sua_app_key
APPTOKEN=seu_token
BOTTOKEN=token_do_bot_telegram
CHATID=id_do_chat_telegrampython main.pyExecute todos os testes:
pytest -vExecute somente testes que fazem requisições reais:
pytest -m realapi -vEste projeto possui um arquivo render.yaml para deploy na plataforma Render, permitindo agendamento automático com cron.
- Integração com outras plataformas (como Discord, WhatsApp API)
MIT © Vinicius Damaceno