ZPL kodu
Dosyayı (.zpl, .txt, .prn) bu alana sürükleyip bırakabilirsin. Birden fazla ^XA…^XZ varsa her etiket ayrı PNG olur.
Önizleme
Dönüştürülen etiketler burada görünecek.
Kargo etiketinin ZPL kodunu yapıştır, PNG olarak önizle ve indir.
Dosyayı (.zpl, .txt, .prn) bu alana sürükleyip bırakabilirsin. Birden fazla ^XA…^XZ varsa her etiket ayrı PNG olur.
Dönüştürülen etiketler burada görünecek.
Sistemden otomatik dönüştürme için API kullanılır. Her istekte X-API-Key başlığı gerekir. Hesap açıp anahtarını Hesabım sayfasından alabilirsin.
curl -X POST https://zpl.podyumplus.com/convert \
-H "X-API-Key: <anahtar>" \
--data-binary "@etiket.zpl" \
-o etiket.png
POST /convert{"zpl": "..."} JSON. Yanıt ilk etiketin PNG'si; X-Label-Count başlığı toplam etiket sayısını verir.POST /convert?format=json{"count", "labels": [{"width", "height", "png_base64"}]} biçiminde döner.?dpmm=88 = 203 dpi (varsayılan), 12 = 300 dpi, 24 = 600 dpi. Etiket boyutu ZPL'deki ^PW / ^LL değerlerinden alınır; yoksa 4×6 inç.{"error": "..."} JSON olarak döner (400, 401, 403, 409, 413, 415, 429, 503).Aşağıdaki örneklerde <ANAHTAR> yerine Hesabım sayfasından aldığın anahtarı yaz. ZPL gövdesi düz metin olarak gönderilir; Türkçe karakterler için etikette ^CI28 (UTF-8) kullanabilirsin.
--data-raw ile düz ZPL gönderimi.
curl -X POST 'https://zpl.podyumplus.com/convert' \
-H 'X-API-Key: <ANAHTAR>' \
-H 'Content-Type: text/plain' \
--data-raw '^XA
^PW812
^LL600
^CI28
^FO40,40^A0N,40,40^FDKARGO ETİKET^FS
^FO40,100^BY3^BCN,120,Y,N,N^FD1234567890ABC^FS
^XZ' \
-o etiket.png
JSON gövde ile birden fazla etiket; yanıt base64 PNG listesi döner.
curl -X POST 'https://zpl.podyumplus.com/convert?format=json&dpmm=12' \
-H 'X-API-Key: <ANAHTAR>' \
-H 'Content-Type: application/json' \
--data-raw '{"zpl":"^XA^CI28^FO40,40^A0N,40,40^FDEtiket 1^FS^XZ^XA^CI28^FO40,40^A0N,40,40^FDEtiket 2^FS^XZ"}'
Node.js 18+ ile fetch.
import fs from 'node:fs';
const zpl = `^XA
^CI28
^FO40,40^A0N,40,40^FDAlıcı: Ahmet Yılmaz^FS
^XZ`;
const res = await fetch('https://zpl.podyumplus.com/convert', {
method: 'POST',
headers: {
'X-API-Key': '<ANAHTAR>',
'Content-Type': 'text/plain; charset=utf-8',
},
body: zpl,
});
if (!res.ok) {
const { error } = await res.json();
throw new Error(error);
}
const png = Buffer.from(await res.arrayBuffer());
await fs.promises.writeFile('etiket.png', png);
Bu istekleri tarayıcıdan (başka bir sitenin JavaScript'inden) değil, kendi sunucunuzdan yapın; servis tarayıcılar için CORS izni vermez.
PHP ile cURL eklentisi.
<?php
$zpl = <<<'ZPL'
^XA
^CI28
^FO40,40^A0N,40,40^FDAlıcı: Ahmet Yılmaz^FS
^XZ
ZPL;
$ch = curl_init('https://zpl.podyumplus.com/convert');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $zpl,
CURLOPT_HTTPHEADER => [
'X-API-Key: <ANAHTAR>',
'Content-Type: text/plain; charset=utf-8',
],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);
if ($status !== 200) {
$err = json_decode($body, true);
die('Hata: ' . ($err['error'] ?? $status));
}
file_put_contents('etiket.png', $body);
Python ile requests kütüphanesi.
import requests
zpl = """^XA
^CI28
^FO40,40^A0N,40,40^FDAlıcı: Ahmet Yılmaz^FS
^XZ"""
res = requests.post(
"https://zpl.podyumplus.com/convert",
headers={"X-API-Key": "<ANAHTAR>", "Content-Type": "text/plain; charset=utf-8"},
data=zpl.encode("utf-8"),
timeout=30,
)
res.raise_for_status()
with open("etiket.png", "wb") as f:
f.write(res.content)