API Pigee Shipping Partner · v1

API Shipping Partner Pigee

Integra spedizione globale multi-vettore live, dogana automatizzata, tracciamento in tempo reale e riscossione dei pagamenti nei tuoi sistemi, con una singola API REST. Funziona per agenti di spedizione, 3PL, piattaforme di e-commerce e integrazioni di fulfillment personalizzate.

REST
JSON
190+ paesi
200+ vettori
135+ valute

Tariffe multi-vettore in tempo reale

DHL, FedEx, UPS, Aramex, Parcelforce e 200+ corrieri locali, tutto in un singolo POST. Restituisce tariffe ordinate con tempi di transito e costo totale.

🤖

Automazione doganale con IA

Classifica automaticamente i codici HS dal tuo catalogo prodotti. Fatture commerciali, dichiarazioni doganali e dazi calcolati per destinazione.

💳

Riscossione Pigee Pay

Condividi un link di pagamento o integra il checkout. Raccogli dai clienti finali in 135+ valute e accredita sul tuo conto in valuta locale.

📡

Webhook in tempo reale

Ricevi shipment.created, payment.received, parcel.delivered e altri eventi inviati istantaneamente al tuo endpoint.

🏷️

Etichette e fatture

Etichette PDF e fatture commerciali generate automaticamente alla creazione dell'ordine. Nessun accesso ai portali dei vettori richiesto.

💰

Commissioni servizio personalizzate

Aggiungi il tuo margine percentuale o a importo fisso sulle tariffe base Pigee per vettore, per rotta o globalmente.

Guida rapida

Dal momento in cui crei l'account al tuo primo spedimento live in meno di un'ora. Segui questi cinque passaggi:

  1. Crea un account Pigee gratuito su account.pigeepost.com e seleziona Shipping Partner come tipo di account.
  2. Vai a Dashboard → Developer → API Keys e genera una chiave live e una chiave di test.
  3. Scegli la modalità di pagamento: Pigee Pay oppure Saldo account Pigee.
  4. Configura la tua commissione servizio in Pannello di controllo → Commissioni.
  5. Importa la collezione Postman per lo sviluppo in staging.
💡
Consiglio: La sandbox Postman riproduce la produzione con corrieri sintetici, eventi doganali e pagamenti. Nessun addebito reale viene effettuato.

Autenticazione

Ogni richiesta deve includere la tua API key nell' Authorization intestazione come token Bearer. Le chiavi sono associate al tuo account partner e includono la tua configurazione commissioni e la modalità di pagamento.

Intestazione HTTP
Authorization: Bearer pgk_live_YOUR_API_KEY_HERE

Tipi di chiave

PrefissoAmbienteDescrizione
pgk_live_…LIVESpedizioni reali e addebiti reali.
pgk_test_…TESTSolo sandbox. Nessun addebito, risposte di corrieri sintetiche, sicuro per CI/CD.
⚠️
Sicurezza: Non esporre mai la tua API key lato client o in repository pubblici. Rigenera immediatamente le chiavi compromesse dal tuo pannello di controllo.

Ambienti e URL di base

Produzionehttps://api.pigeepost.comLIVE
Sandboxhttps://sandbox.api.pigeepost.comTEST

La sandbox è uno specchio completo 1:1 della produzione. Cambia ambiente scambiando il prefisso della tua chiave, oppure usa l'URL sandbox esplicito per maggiore chiarezza.

ℹ️
Versione API: Tutti gli endpoint sono attualmente su v1. La versione fa parte del percorso: /api/v1/….

SDK e librerie

Gli SDK ufficiali incapsulano l'API REST con modelli tipizzati, tentativi automatici e helper sandbox.

🟨 JavaScript / Node.js
🐍 Python
🐘 PHP
📱 iOS Swift
🤖 Android Kotlin
🛒 Plugin WooCommerce
🛍️ App Shopify
📮 collezione Postman

Convalida Chiave API

Chiama questo endpoint per confermare che la tua chiave API è attiva e configurata correttamente prima di andare live.

POST/api/v1/store/valid200 OK
Convalida la tua chiave API e restituisce i dettagli dell'account partner.
Richiesta
POST /api/v1/store/valid
Authorization: Bearer pgk_live_…
Content-Type: application/json

{
  "store_type": 2,
  "api_key": "pgk_live_YOUR_KEY"
}
Risposta 200
{
  "valid": true,
  "account": {
    "id": "acc_7H4K",
    "type": "shipping_partner",
    "payment_mode": "pigee_pay",
    "service_fee_pct": 8.5,
    "balance_gbp": 240.00
  }
}

Ottieni Tariffe di Spedizione

Recupera le tariffe live dei vettori per una spedizione. Restituisce tutti i servizi disponibili ordinati per prezzo, incluso il tempo di transito, il supporto del valore assicurato e il costo sbarcato.

POST/api/v1/store/order/getcarriercost200 OK
Restituisce un array di opzioni vettore disponibili con tariffazione, stime di transito e un carrier_request_id da utilizzare quando si crea l'ordine.
Corpo della richiesta
{
  "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"
    }
  }
}
Risposta 200
{
  "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"
}

Parametri della richiesta

CampoTipoObbligatorioDescrizione
shop_urlstringaobbligatorioURL del tuo negozio o piattaforma.
valutastringaobbligatorioCodice valuta ISO 4217.
parcel.typestringaobbligatorioBox | Bag | Tube | Pallet
parcel.boxsizeinteroobbligatorioLivello di dimensione da 1 a 6.
weight.valuenumeroobbligatorioPeso effettivo del pacco.
weight.unitsstringaobbligatoriokg | lbs
dimensionoggettofacoltativoLunghezza, larghezza, altezza e unità di misura.
address.pickupoggettoobbligatorioIndirizzo del mittente.
address.destinationoggettoobbligatorioIndirizzo del destinatario.

Crea ordine

Crea un ordine Pigee utilizzando una carrier_request_id dall'endpoint tariffe. Pigee genera l'etichetta, la fattura commerciale e, se utilizzi Pigee Pay, un link di pagamento ospitato.

ℹ️
Modalità di pagamento è impostata nel tuo pannello, non in questa richiesta.
POST/api/v1/store/order/create200 OK
Crea una spedizione e restituisce un ID ordine Pigee, URL dell'etichetta e link di pagamento ospitato se necessario.
Corpo della richiesta
{
  "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"
    }
  }
}
Risposta 200
{
  "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
}

Evadi ordine

Invia i dettagli di evasione finale una volta confermato il pagamento. Pigee genera l'etichetta di spedizione, prenota il vettore e restituisce un numero di tracciamento.

POST/api/v1/store/order/fulfill200 OK
Attiva la generazione dell'etichetta e la prenotazione del vettore.
Corpo della richiesta
{
  "order_id": "po_78910",
  "status": "processing",
  "shop_id": "https://your-store.com",
  "currency": "GBP",
  "total": 725.50,
  "shipping_total": 125.50
}
Risposta 200
{
  "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"
}

Tracciamento

Recupera gli eventi di tracciamento in tempo reale per qualsiasi spedizione creata tramite API.

GET/api/v1/tracking/{pigee_order_id}200 OK
Restituisce la cronologia di tracciamento normalizzata per una spedizione.
Risposta 200
{
  "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"
    }
  ]
}

Modalità di pagamento

Pigee supporta due modalità di pagamento. La modalità attiva è impostata nel tuo pannello partner e si applica a tutti gli ordini.

ModalitàCome funzionaIdeale per
Pigee PayPigee ospita una pagina di checkout. La creazione dell'ordine restituisce un payment_url.Integrazioni e-commerce e marketplace.
Saldo contoIl costo della spedizione viene detratto dal tuo saldo Pigee pre-finanziato.Spedizionieri, 3PL e partner ad alto volume.

Commissioni di servizio

Come Shipping Partner puoi aggiungere una commissione propria sulle tariffe base dei corrieri di Pigee. Le commissioni sono configurate nel tuo pannello e applicate automaticamente prima della restituzione delle tariffe.

  • Commissione percentuale: Applicata come percentuale del costo del corriere base.
  • Commissione fissa: Un importo fisso aggiunto per spedizione.
  • Sovraccarichi per tratta: Sovrascrivi la commissione globale per coppie di origine/destinazione specifiche.

Liquidazioni e cambio

Pigee Pay raccoglie da clienti finali in 135+ valute e liquida sul tuo conto bancario nella tua valuta locale.

  • Il ciclo di liquidazione è generalmente T+2 giorni lavorativi dopo la conferma di consegna della spedizione.
  • Preleva dal tuo saldo Pigee tramite il pannello.
  • I registri transazionali dettagliati sono disponibili in Finanza → Liquidazioni.
  • Le fatture per le transazioni liquidate vengono generate automaticamente e sono disponibili in PDF.

Webhook

Pigee invia eventi in tempo reale al tuo endpoint HTTPS come richieste JSON POST Configura l'URL del tuo webhook in Pannello → Sviluppatore → Webhook.

Payload webhook di esempio
{
  "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"
  }
}

Riferimento evento webhook

shipment.createdOrdine confermato, vettore prenotato, etichetta generata.shipment
payment.receivedCliente ha completato Pigee Pay.payment
payment.failedPagamento Pigee Pay scaduto o rifiutato.payment
parcel.collectedVettore ha ritirato il pacco dal mittente.tracking
parcel.in_transitPacco scansionato presso un centro di smistamento.tracking
parcel.customs_holdPacco trattenuto dalla dogana.customs
parcel.customs_clearedSdoganamento completato.customs
parcel.out_for_deliveryPacco caricato su veicolo per la consegna finale.tracking
parcel.deliveredConsegna confermata.tracking
parcel.delivery_failedTentativo di consegna non riuscito.tracking
parcel.returnedPacco restituito al mittente.tracking
settlement.completedFondi versati sul tuo conto bancario.payment

Firme webhook

Ogni richiesta webhook include un X-Pigee-Signature header, un digest HMAC-SHA256 del corpo della richiesta raw. Verificare sempre prima di elaborare.

Esempio di verifica Node.js
// 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')
  );
}
⚠️
Utilizzo confronto timing-safe per prevenire attacchi di timing. Rifiutare qualsiasi webhook il cui signature non corrisponde.

Errori

Tutti gli errori restituiscono JSON con un error oggetto contenente un code e un message.

Risposta di errore
{
  "error": {
    "code": "INSUFFICIENT_BALANCE",
    "message": "Your Pigee partner balance is not sufficient to create this shipment.",
    "request_id": "req_7H4K2026"
  }
}
HTTPCodice erroreSignificato e risoluzione
400INVALID_REQUESTCampo mancante o malformato.
401INVALID_API_KEYChiave mancante, malformata o revocata.
402INSUFFICIENT_BALANCESaldo account insufficiente.
403FORBIDDENIl tipo di account non ha accesso a questo endpoint.
404ORDER_NOT_FOUNDNessun ordine trovato per l'ID fornito.
409ORDER_ALREADY_FULFILLEDOrdine già evaso.
422INVALID_ADDRESSL'indirizzo non ha potuto essere convalidato.
422CARRIER_UNAVAILABLENessun servizio di corriere disponibile per questa rotta.
422RATE_EXPIREDcarrier_request_id scaduto. Recuperare nuovamente le tariffe.
429RATE_LIMITEDTroppe richieste. Attendere e riprovare.
500ERRORE_INTERNOErrore lato Pigee. Riprovare con back-off.
503TIMEOUT_VETTORETimeout dell'API del vettore a valle.

Limiti di velocità

I limiti di velocità vengono applicati per chiave API e scalano con il livello del tuo account.

Livello accountRichieste / minutoRichieste / giorno
Test gratuito601,000
Partner di spedizione in diretta30050,000
EnterprisePersonalizzatoPersonalizzato

Quando viene raggiunto un limite di velocità, l'API restituisce HTTP 429 con un Retry-After header.

Tipi di dati e convenzioni

  • Date e orari - ISO 8601 UTC, ad es. 2026-05-06T14:22:07Z
  • Valute - Codici ISO 4217 a tre lettere, ad es. GBP, USD, NGN
  • Valori monetari - number con due decimali, sempre accoppiato a un currency field
  • Nomi dei paesi - Nomi completi in inglese, ad es. "United Kingdom", "United States"
  • Numeri di telefono - Formato E.164 consigliato, ad es. +447700900123
  • Pesi - kg oppure lbs specificato per richiesta
  • ID - Gli ID generati da Pigee utilizzano il formato con prefisso, ad es. po_78910, cr_abc123

Riferimento ID Vettore

Utilizzo pigee_carrier_id valori della risposta tariffaria durante la creazione degli ordini.

carrier_idEsempio pigee_carrier_idRegione
dhlDHL_EXPRESS_WORLDWIDE, DHL_EXPRESS_12Globale
fedexFEDEX_INTERNATIONAL_PRIORITY, FEDEX_INTERNATIONAL_ECONOMYGlobale
upsUPS_WORLDWIDE_EXPRESS, UPS_WORLDWIDE_EXPEDITEDGlobale
aramexARAMEX_EXPRESS, ARAMEX_ECONOMYMENA, Africa, Asia
parcelforcePARCELFORCE_EXPRESS24, PARCELFORCE_GLOBAL_EXPRESSUK e Internazionale
teleportTELEPORT_STANDARDAsia Sudorientale
local_*local_5b3, local_8acRegionale, restituito dinamicamente

Cronologia modifiche

v1.3 - maggio 2026

  • Aggiunto insurance_available e customs_included flag nella risposta tariffaria.
  • La verifica della firma webhook ora utilizza HMAC-SHA256.
  • Nuovo codice di errore RATE_EXPIRED.
  • Endpoint di tracciamento aggiunto: GET /api/v1/tracking/{pigee_order_id}.

v1.2 - febbraio 2026

  • Aggiunti override delle commissioni per corsia nel dashboard.
  • I link di pagamento Pigee Pay ora includono un expires_at campo.
  • Nuovi eventi webhook aggiunti per dogana e accordamenti.

v1.1 - Ottobre 2025

  • Collezione Postman iniziale pubblicata.
  • Ambiente sandbox lanciato.
  • Modalità di pagamento Saldo conto rilasciata.

v1.0 - Giugno 2025

  • Versione pubblica iniziale: Convalida, Ottieni tariffe, Crea ordine, Evadi ordine.
🚀 SEO by Pigee