Tool standalone per generare etichette SpedirePro bypassando l'interfaccia web che blocca in attesa dell'ACK UPS sulla doganale.
URL Produzione: https://sp-label-generator.vercel.app
SpedirePro non rilascia le etichette finché i documenti doganali non vengono caricati e confermati da UPS. L'interfaccia web rimane bloccata in attesa.
Soluzione: Questa app usa le API SpedirePro direttamente per:
- Creare l'ordine
- Generare i PDF doganali (invoice + declaration)
- Caricarli su SpedirePro via API
- Sbloccare l'etichetta senza aspettare l'ACK manuale
Ci sono due account separati:
| Account | Env Variable | Uso | Stato |
|---|---|---|---|
| DDP | SPRO_API_KEY |
USA + EU (dazi prepagati) | ✅ Implementato |
| DDU | SPRO_API_KEY_NODDP |
Resto mondo (dazi a carico cliente) | ⏳ Prossima release |
Nota: Per ora l'app supporta solo DDP. DDU verrà aggiunto in futuro.
- Crea etichetta via API SpedirePro (
POST /create-label) - Genera PDF doganale (invoice + declaration) - 2 pagine separate
- Upload doganale su SpedirePro (
document_type: 1= fattura,2= dichiarazione) - Salva su Google Drive etichetta e doganale con struttura
/MM/MMddyyyy/
- Contatti: Nabeel Malik (default) o copia/incolla da Shopify
- Magazzino: Milano (MI) o Roma (RM)
- Prodotti: Wooden Rosary, Holy Water, Religious Medal, Crucifix
- Campi: Qty, USD, HS Code, Peso kg
SPRO_API_KEY= # Account DDP (USA/EU) - OBBLIGATORIO
GOOGLE_SERVICE_ACCOUNT_EMAIL=
GOOGLE_SERVICE_ACCOUNT_PRIVATE_KEY=
GOOGLE_DRIVE_FOLDER_ID=npm install
vercel --prodSP-Label-Generator/
├── public/
│ └── index.html # Frontend (dark theme, stile Customs-Generator)
├── api/
│ └── create-label.js # API principale
├── lib/
│ └── country-codes.js # Mapping country name → ISO code
├── package.json
├── vercel.json
└── README.md
1. Utente inserisce indirizzo (o seleziona Nabeel)
2. Seleziona magazzino, tipo, prodotto
3. Click "Genera Etichetta"
↓
4. POST /api/create-label
├── Chiama SpedirePro /create-label
├── Riceve tracking + label_url
├── Download etichetta da AWS
├── Genera PDF doganale (PDFKit)
├── Upload etichetta su Google Drive
├── Upload doganale su Google Drive
├── Upload doganale su SpedirePro (2 document_type)
└── Return URLs
↓
5. Frontend mostra status + download buttons
1. POST /api/create-label
└── Chiama SpedirePro POST /create-label
└── Riceve orderRef (etichetta non ancora pronta)
2. POST /api/check-status (polling manuale)
├── GET /shipments-list → cerca spedizione per receiver
├── POST /get-label → ottiene URL etichetta AWS
├── Download etichetta PDF
├── Genera Invoice PDF (PDFKit) → document_type: 1
├── Genera Declaration PDF (PDFKit) → document_type: 2
├── POST /api/documents/dogana/upload (x2)
├── POST /api/user/shipment/customs-uploaded (x2)
├── Upload su Google Drive (label + inv + dog)
└── Return URLs
- Ordini NON legati a Shopify (uso standalone per test/emergenze)
- Parsing smart indirizzo Shopify (skip "Contact information", "Shipping address")
- HS Code auto-mapping per tipo prodotto
- Stessa firma digitale di Customs-Generator (Shopify CDN)
- I documenti doganali usano SEMPRE l'account DDP (anche se la spedizione è DDU)
- SP-webhooks-app - Automazione webhook Shopify ↔ SpedirePro (produzione)
- Customs-Generator - Generatore PDF doganali standalone
- Supporto DDU (account NODDP) per resto mondo
- Auto-polling invece di click manuale "Verifica Stato"