API de Parceiros de Envio Pigee
Integre envios globais multioperadora em tempo real, automação aduaneira, rastreamento em tempo real e cobrança de pagamentos nos seus sistemas, com uma única API REST. Funciona para agentes de transporte, 3PLs, plataformas de e-commerce e integrações de logística personalizadas.
Tarifas multioperadora em tempo real
DHL, FedEx, UPS, Aramex, Parcelforce e 200+ transportadoras locais, tudo num único POST. Retorna tarifas ordenadas com tempo de trânsito e custo final.
Automação aduaneira com IA
Classifica automaticamente códigos HS do seu catálogo de produtos. Faturas comerciais, declarações aduaneiras e taxas calculadas por destino.
Cobrança Pigee Pay
Partilhe uma ligação de pagamento ou incorpore checkout. Receba de clientes finais em 135+ moedas e liquide no seu banco em moeda local.
Webhooks em tempo real
Receba shipment.created, payment.received, parcel.delivered e muito mais eventos enviados para o seu endpoint instantaneamente.
Etiquetas e faturas
Etiquetas em PDF e faturas comerciais geradas automaticamente na criação de encomendas. Sem necessidade de portais de transportadoras.
Taxas de serviço personalizadas
Adicione a sua própria margem em percentagem ou taxa fixa sobre as tarifas base Pigee por transportadora, por rota ou globalmente.
Início rápido
Da criação da conta ao seu primeiro envio em produção em menos de uma hora. Siga estes cinco passos:
- Crie uma conta Pigee Post gratuita em account.pigeepost.com e selecione Parceiro de Envios como tipo de conta.
- Vá para Dashboard → Developer → API Keys e gere uma chave em produção e uma chave de teste.
- Escolha o seu modo de pagamento: Pigee Pay ou Saldo de Conta Pigee.
- Configure a sua taxa de serviço em Dashboard → Fees.
- Importe a coleção Postman para desenvolvimento em staging.
Autenticação
Cada pedido deve incluir a sua chave API no Authorization cabeçalho como um token Bearer. As chaves têm âmbito na sua conta de parceiro e contêm a configuração da sua taxa e modo de pagamento.
Authorization: Bearer pgk_live_YOUR_API_KEY_HERE
Tipos de chave
| Prefixo | Ambiente | Descrição |
|---|---|---|
| pgk_live_… | ATIVO | Envios reais e cobranças reais. |
| pgk_test_… | TESTE | Apenas sandbox. Sem cobranças, respostas sintéticas de operadoras, seguro para CI/CD. |
Ambientes e URLs Base
O sandbox é um espelho completo 1:1 da produção. Alterne entre ambientes trocando o prefixo da sua chave, ou use a URL sandbox explícita para maior clareza.
v1. A versão faz parte do caminho: /api/v1/….SDKs e Bibliotecas
Os SDKs oficiais encapsulam a API REST com modelos tipados, tentativas automáticas e auxiliares de sandbox.
Validar Chave API
Chame este endpoint para confirmar que a sua chave API está ativa e corretamente configurada antes de entrar em produção.
POST /api/v1/store/valid Authorization: Bearer pgk_live_… Content-Type: application/json { "store_type": 2, "api_key": "pgk_live_YOUR_KEY" }
{
"valid": true,
"account": {
"id": "acc_7H4K",
"type": "shipping_partner",
"payment_mode": "pigee_pay",
"service_fee_pct": 8.5,
"balance_gbp": 240.00
}
}
Obter Tarifas de Envio
Obtenha tarifas de transportadoras em tempo real para um envio. Devolve todos os serviços disponíveis ordenados por preço, incluindo prazo de entrega, suporte a valor seguro e custo final.
carrier_request_id a usar na criação do pedido.{
"shop_url": "https://your-store.com",
"currency": "GBP",
"parcel": {
"type": "Box",
"boxsize": 4
},
"weight": { "value": 4, "units": "kg" },
"dimension": {
"length": 40,
"width": 30,
"height": 20,
"units": "cms"
},
"address": {
"pickup": {
"address_line1": "10 High Street",
"town": "London",
"post_code": "SW1A 1AA",
"country": "United Kingdom"
},
"destination": {
"address_line1": "123 Ocean Drive",
"town": "Miami",
"post_code": "33101",
"country": "United States"
}
}
}
{
"rates": [
{
"carrier_request_id": "cr_abc123",
"carrier_id": "dhl",
"pigee_carrier_id": "DHL_EXPRESS_WORLDWIDE",
"method_title": "DHL Express Worldwide",
"price": 125.50,
"currency": "GBP",
"transit_days": 2,
"insurance_available": true,
"customs_included": true
}
],
"currency": "GBP",
"request_id": "req_7H4K2026"
}
Parâmetros de pedido
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| shop_url | string | obrigatório | URL da sua loja ou plataforma. |
| currency | string | obrigatório | Código de moeda ISO 4217. |
| parcel.type | string | obrigatório | Box | Bag | Tube | Pallet |
| parcel.boxsize | integer | obrigatório | Escalão de tamanho 1 a 6. |
| weight.value | number | obrigatório | Peso real da encomenda. |
| weight.units | string | obrigatório | kg | lbs |
| dimension | object | opcional | Comprimento, largura, altura e unidades. |
| address.pickup | object | obrigatório | Endereço do remetente. |
| address.destination | object | obrigatório | Endereço do destinatário. |
Criar Encomenda
Criar uma encomenda Pigee usando um carrier_request_id do endpoint de preços. A Pigee gera a etiqueta, a fatura comercial e, se utilizar Pigee Pay, uma ligação de pagamento alojada.
{
"order_from": "api",
"shop_url": "https://your-store.com",
"order_id": "ORDER-10001",
"currency": "GBP",
"items": [
{
"name": "Vintage leather jacket",
"quantity": 1,
"value": 600.00,
"currency": "GBP",
"hs_code": "4203100090"
}
],
"shippingData": {
"method_title": "DHL Express Worldwide",
"cost": 125.50,
"currency": "GBP",
"meta_data": {
"carrier_request_id": "cr_abc123",
"carrier_id": "dhl",
"pigee_carrier_id": "DHL_EXPRESS_WORLDWIDE"
}
}
}
{
"order_id": "po_78910",
"pigee_order_id": "PGE-7H4K-2026-0042",
"status": "pending_payment",
"payment_url": "https://pay.pigee.com/c/abc123",
"label_url": null,
"tracking_number": null
}
Executar Encomenda
Envie os dados finais de cumprimento assim que o pagamento for confirmado. A Pigee gera a etiqueta de envio, marca a transportadora e devolve um número de rastreamento.
{
"order_id": "po_78910",
"status": "processing",
"shop_id": "https://your-store.com",
"currency": "GBP",
"total": 725.50,
"shipping_total": 125.50
}
{
"order_id": "po_78910",
"pigee_order_id": "PGE-7H4K-2026-0042",
"status": "booked",
"label_url": "https://labels.pigeepost.com/PGE-7H4K-2026-0042.pdf",
"tracking_number": "1234567890",
"carrier": "DHL",
"estimated_delivery": "2026-05-08"
}
Rastreamento
Recupere eventos de rastreamento em tempo real para qualquer encomenda criada através da API.
{
"pigee_order_id": "PGE-7H4K-2026-0042",
"tracking_number": "1234567890",
"carrier": "DHL",
"status": "in_transit",
"estimated_delivery": "2026-05-08",
"events": [
{
"timestamp": "2026-05-06T08:14:00Z",
"status": "in_transit",
"location": "DHL Hub, Leipzig",
"description": "Shipment in transit"
}
]
}
Modos de Pagamento
A Pigee suporta dois modos de pagamento. O modo ativo é configurado no seu painel de parceiro e aplica-se a todas as encomendas.
| Modo | Como funciona | Melhor para |
|---|---|---|
| Pigee Pay | A Pigee aloja uma página de checkout. A criação da encomenda devolve um payment_url. | Integrações de comércio eletrónico e marketplaces. |
| Saldo da Conta | O custo de envio é deduzido do seu saldo Pigee pré-financiado. | Agentes de envio, 3PLs e parceiros de grande volume. |
Taxas de Serviço
Como Parceiro de Envio, pode adicionar a sua própria taxa aos preços base da transportadora da Pigee. As taxas são configuradas no seu painel de controlo e aplicadas automaticamente antes dos preços serem devolvidos.
- Taxa percentual: Aplicada como uma percentagem do custo base da transportadora.
- Taxa fixa: Um montante fixo adicionado por encomenda.
- Substituições por rota: Substituir a taxa global para pares de origem/destino específicos.
Liquidações e Câmbio
Pigee Pay cobra dos clientes finais em 135+ moedas e efectua os pagamentos na sua conta bancária na sua moeda local.
- O ciclo de liquidação é tipicamente T+2 dias úteis após a confirmação da entrega.
- Levante fundos do seu saldo Pigee através do painel de controlo.
- Registos de transações detalhados estão disponíveis em Finanças → Liquidações.
- As facturas para transações liquidadas são geradas automaticamente e disponibilizadas em PDF.
Webhooks
Pigee envia eventos em tempo real para o seu endpoint HTTPS como pedidos JSON. POST Configure o seu URL de webhook em Painel de Controlo → Programador → Webhooks.
{
"event": "parcel.delivered",
"created_at": "2026-05-08T14:22:07Z",
"api_version": "v1",
"data": {
"pigee_order_id": "PGE-7H4K-2026-0042",
"order_id": "ORDER-10001",
"carrier": "DHL",
"tracking_number": "1234567890",
"delivered_at": "2026-05-08T14:18:00Z"
}
}
Referência de Eventos Webhook
Assinaturas de Webhook
Cada pedido de webhook inclui um X-Pigee-Signature cabeçalho, um resumo HMAC-SHA256 do corpo do pedido bruto. Sempre verifique isto antes de processar.
// Node.js const crypto = require('crypto'); function verifyPigeeWebhook(rawBody, signature, secret) { const expected = crypto .createHmac('sha256', secret) .update(rawBody) .digest('hex'); return crypto.timingSafeEqual( Buffer.from(expected, 'hex'), Buffer.from(signature, 'hex') ); }
Erros
Todos os erros devolvem JSON com um error objeto contendo um code e um message.
{
"error": {
"code": "INSUFFICIENT_BALANCE",
"message": "Your Pigee partner balance is not sufficient to create this shipment.",
"request_id": "req_7H4K2026"
}
}
| HTTP | Código de erro | Significado e resolução |
|---|---|---|
| 400 | PEDIDO_INVÁLIDO | Campo em falta ou mal formado. |
| 401 | CHAVE_API_INVÁLIDA | A chave está em falta, mal formada ou revogada. |
| 402 | SALDO_INSUFICIENTE | Saldo da conta demasiado baixo. |
| 403 | PROIBIDO | O tipo de conta não tem acesso a este endpoint. |
| 404 | ENCOMENDA_NÃO_ENCONTRADA | Nenhuma encomenda encontrada para o ID fornecido. |
| 409 | ENCOMENDA_JÁ_CUMPRIDA | Encomenda já cumprida. |
| 422 | ENDEREÇO_INVÁLIDO | O endereço não pôde ser validado. |
| 422 | TRANSPORTADOR_INDISPONÍVEL | Nenhum serviço de transportador disponível para esta rota. |
| 422 | TARIFA_EXPIRADA | carrier_request_id expirada. Obtenha as tarifas novamente. |
| 429 | LIMITE_DE_TAXA | Demasiados pedidos. Aguarde e tente novamente. |
| 500 | ERRO_INTERNO | Erro no lado da Pigee. Tente novamente com recuo. |
| 503 | TIMEOUT_TRANSPORTADOR | A API do transportador de downstream expirou. |
Limites de Taxa
Limites de taxa são aplicados por chave de API e aumentam com o seu nível de conta.
| Nível de conta | Pedidos / minuto | Pedidos / dia |
|---|---|---|
| Teste gratuito | 60 | 1,000 |
| Parceiro de envio ativo | 300 | 50,000 |
| Empresarial | Personalizado | Personalizado |
Quando um limite de taxa é atingido, a API devolve HTTP 429 com um Retry-After cabeçalho.
Tipos de Dados e Convenções
- Datas e horas - ISO 8601 UTC, p.ex.
2026-05-06T14:22:07Z - Moedas - Códigos ISO 4217 de três letras, p.ex.
GBP,USD,NGN - Valores monetários -
numbercom duas casas decimais, sempre associado a umcurrencycampo - Nomes de países - Nomes completos em inglês, p.ex.
"United Kingdom","United States" - Números de telefone - Formato E.164 recomendado, p.ex.
+447700900123 - Pesos -
kgoulbsespecificado por pedido - IDs - IDs gerados pela Pigee usam formato de prefixo, p.ex.
po_78910,cr_abc123
Referência de IDs de Transportadoras
Utilização pigee_carrier_id valores da resposta de tarifas ao criar encomendas.
| carrier_id | ID de transportadora Pigee exemplo | Região |
|---|---|---|
| dhl | DHL_EXPRESS_WORLDWIDE, DHL_EXPRESS_12 | Global |
| fedex | FEDEX_INTERNATIONAL_PRIORITY, FEDEX_INTERNATIONAL_ECONOMY | Global |
| ups | UPS_WORLDWIDE_EXPRESS, UPS_WORLDWIDE_EXPEDITED | Global |
| aramex | ARAMEX_EXPRESS, ARAMEX_ECONOMY | MENA, África, Ásia |
| parcelforce | PARCELFORCE_EXPRESS24, PARCELFORCE_GLOBAL_EXPRESS | Reino Unido e Internacional |
| teleport | TELEPORT_STANDARD | Sudeste Asiático |
| local_* | local_5b3, local_8ac | Regional, devolvido dinamicamente |
Changelog
v1.3 - Maio 2026
- Adicionado
insurance_availableecustoms_includedsinalizadores à resposta de tarifas. - Verificação de assinatura de webhook agora usa HMAC-SHA256.
- Novo código de erro
RATE_EXPIRED. - Endpoint de rastreamento adicionado:
GET /api/v1/tracking/{pigee_order_id}.
v1.2 - Fevereiro 2026
- Adicionadas substituições de taxa de serviço por corredor no painel.
- Os links de pagamento do Pigee Pay agora incluem um
expires_atcampo. - Novos eventos de webhook adicionados para aduanas e liquidações.
v1.1 - Outubro 2025
- Coleção inicial do Postman publicada.
- Ambiente sandbox lançado.
- Modo de pagamento Saldo da Conta lançado.
v1.0 - Junho 2025
- Lançamento público inicial: Validar, Obter Tarifas, Criar Pedido, Cumprir Pedido.