zplCloud Blog
DHL Internetmarke पोस्टेज: स्टैम्प ही ZPL लेबल
आपके DHL क्रेडेंशियल, आपकी Portokasse, आपका प्रिंटर। एक प्राप्तकर्ता POST करें और 203-dpi स्टैम्प ZPL या PDF के रूप में वापस पाएँ।
एक स्टैम्प सिर्फ एक और लेबल है
दुकानें, मरम्मत डेस्क और लॉजिस्टिक्स टीमें हर दिन अलग-अलग पत्र भेजती हैं: इनवॉइस के साथ एक मैनुअल, एक रिटर्न स्लिप, एक रजिस्टर्ड पत्र। अंतिम भौतिक चरण पोस्टेज है - जिसका आमतौर पर मतलब फ़्रैंकिंग मशीन, पहले से छपे स्टैम्प की दराज, या मशीन तक पैदल चलना।
INTERNETMARKE इंटीग्रेशन आपकी अपनी DHL डेवलपर क्रेडेंशियल्स के माध्यम से आपके अपने Portokasse के विरुद्ध वास्तविक, कानूनी रूप से फ़्रैंक्ड स्टैम्प खरीदता है, और उसे दो प्रारूपों में लौटाता है:
- PDF - आधिकारिक स्टैम्प दस्तावेज़, 43 × 89 मिमी, स्वतः घूमा हुआ।
- ZPL - वही स्टैम्प 203 dpi पर रैस्टराइज़्ड (711 × 344 px), Zebra के लिए तैयार।
zplCloud पोस्टेज का पुनर्विक्रय नहीं करता। हर खरीद वर्तमान PPL मूल्य पर आपकी Portokasse से डेबिट होती है; कोई मार्कअप नहीं, कोई राउंडिंग नहीं और कोई पहले से खरीदा स्टॉक नहीं।
एक बार का सेटअप
इंटीग्रेशन → DHL Internetmarke:
1. क्रेडेंशियल्स - DHL डेवलपर पोर्टल API कुंजी और सीक्रेट, साथ ही आपका Portokasse लॉगिन (ईमेल और पासवर्ड, अधिकतम 22 अक्षर)। REST एप्लिकेशन को Portokasse फ्रंटएंड में मेरा डेटा → व्यावसायिक एप्लिकेशन के तहत एक बार अनुमोदित होना चाहिए। इसे छोड़ दें और हर कॉल 401 genericUserAuthenticationError लौटाती है - क्रेडेंशियल्स सही हैं, एप्लिकेशन बस सक्षम नहीं है।
2. प्रेषक - एक या अधिक प्रेषक पते; एक को डिफ़ॉल्ट के रूप में चिह्नित करें।
3. उत्पाद - खरीदने के लिए पत्र उत्पाद।
| उत्पाद | मूल्य |
|---|---|
| Standardbrief | € 0.95 |
| Kompaktbrief | € 1.10 |
| Großbrief | € 1.80 |
| Maxibrief | € 2.90 |
| Standardbrief + Einschreiben Einwurf | € 3.30 |
| Standardbrief + Einschreiben | € 3.60 |
| Großbrief + Einschreiben Einwurf | € 4.15 |
जाँच क्रेडेंशियल्स को मान्य करता है और वर्तमान Portokasse शेष दिखाता है। API सीक्रेट और Portokasse पासवर्ड सर्वर-साइड संग्रहीत होते हैं और ब्राउज़र को कभी वापस नहीं भेजे जाते।
दो APIs, और आपको कौन सी चाहिए
दो प्रवेश बिंदु हैं। वे एक ही काम करते हैं लेकिन अलग-अलग प्रमाणित करते हैं, और उन्हें मिलाना सबसे आम इंटीग्रेशन गलती है:
| Session API | Public API | |
|---|---|---|
| पथ | /api/integrations/dhl/… | /v1/integrations/dhl/… |
| प्रमाणीकरण | लॉग इन सत्र (same-origin) | API कुंजी |
| इसके लिए उपयोग करें | प्लेटफ़ॉर्म UI, same-origin कॉल | आपका अपना बैकएंड, स्क्रिप्ट, ERP |
स्टैम्प खरीदें (सार्वजनिक API):
curl -X POST https://api.zplcloud.com/v1/integrations/dhl/stamp \
-H "X-Api-Key: sk_zplcloud_…" -H "Content-Type: application/json" \
-d '{
"format": "zpl",
"receiver": { "name": "Max Mustermann",
"addressLine1": "Musterstrasse 12b",
"postalCode": "12345", "city": "Musterstadt",
"country": "DEU" }
}'
senderId वैकल्पिक है - इसे छोड़ने पर डिफ़ॉल्ट प्रेषक उपयोग होता है। प्रतिक्रिया में ZPL, ज्यामिति, आपके रिकॉर्ड के लिए DHL पहचानकर्ता और नया शेष होता है:
{
"ok": true, "format": "zpl",
"zpl": "^XA^FO…^XZ",
"widthMm": 89, "heightMm": 43,
"widthPx": 711, "heightPx": 344,
"walletBalanceCents": 12220,
"voucherId": "VH-4f2a9c…",
"shopOrderId": "1000023456"
}
format: "pdf" इसके बजाय मूल स्टैम्प PDF को base64 के रूप में लौटाता है।
खरीदने से पहले, जाँचें कि आप क्या खरीद सकते हैं:
GET /v1/integrations/dhl/status # शेष + उत्पाद कैटलॉग
GET /v1/integrations/dhl/stamps # आपके लेन-देन जिनमें वाउचर ID शामिल हैं
बैच से पहले status पढ़ें। खाली Portokasse के विरुद्ध खरीद DHL पर विफल होती है, और असफल प्रयास वही है जो आपको बाद में लॉग में मिलेगा।
Print Views: पैकिंग टेबल पर कोई API क्लाइंट नहीं
शिपिंग काउंटर के लिए आप हर डेस्क पर इंटीग्रेशन नहीं चाहते। DHL Print View को किसी लेबल डिज़ाइन की आवश्यकता नहीं है - स्टैम्प ही लेबल है। इसका अपना URL होता है:
https://print.zplcloud.com/d/dhl/{slug}
मोबाइल-फर्स्ट, PWA के रूप में इंस्टॉल करने योग्य, लुकअप फ़ील्ड, प्रेषक ड्रॉपडाउन, प्राप्तकर्ता फ़ॉर्म और प्रिंटर चयन के साथ।
ऑर्डर डेटाबेस को जोड़ना
अपने नेटवर्क की एक मशीन पर CLI एजेंट चलाएँ। SQL Server कनेक्शन स्ट्रिंग वहीं रहती है:
zplcloud proxy --agent "Lager" \
--sql ORDERS="Server=127.0.0.1;Database=erp;User Id=zplcloud;Password=…;Encrypt=True;TrustServerCertificate=True"
आधार क्वेरी के साथ डेटासोर्स (डेटा स्रोत, प्रकार SQL Server, सर्वर ORDERS) बनाएँ:
SELECT orderId, nachname, vorname, strasse, plz, ort
FROM auftraege
WHERE orderId LIKE @p0
फिर Print View संपादक में DHL के अंतर्गत कॉलम मैप करें: ऑर्डर-ID कॉलम (डिफ़ॉल्ट orderId) वह है जिससे टाइप किया गया मान मिलाया जाता है, और प्राप्तकर्ता फ़ील्ड नाम, सड़क, पिन कोड और शहर लेते हैं। नाम कॉलम जोड़ सकता है: vorname+nachname।
ऑपरेटर क्या करता है
10042 टाइप करें → लुकअप → एजेंट क्वेरी चलाता है और प्राप्तकर्ता फ़ील्ड भर जाते हैं → प्रेषक और प्रिंटर चुनें → खरीदें और प्रिंट करें:
1. स्टैम्प आपकी Portokasse से खरीदा जाता है,
2. PDF 203 dpi पर ZPL में परिवर्तित होता है,
3. ZPL चयनित प्रिंटर (Weblink या CLI प्रॉक्सी प्रिंटर) पर जाता है।
सफलता संदेश तभी दिखाई देता है जब प्रिंटर ने कार्य स्वीकार किया हो। यदि प्रिंटर अप्राप्य है, तो ऑपरेशन को चुपचाप सफल होने के बजाय त्रुटि के रूप में रिपोर्ट किया जाता है - आपने उस स्टैम्प के लिए पहले ही भुगतान किया है, इसलिए आपको जानना होगा कि वह निकला या नहीं।