XML'den JSON'a Dönüştürücü
XML dosyanızı seçin veya içeriği yapıştırın; okunabilir, girintili JSON çıktısını anında alın. Öznitelikler, tekrar eden elemanlar ve metin içerikleri standart bir şemayla JSON'a taşınır.
Dönüştürme tamamen tarayıcınızda yapılır; veriniz hiçbir sunucuya gönderilmez.
- Öznitelikleri (@ önekiyle) ve metin içeriklerini koruma
- Tekrar eden elemanları otomatik diziye çevirme
- Girintili, okunabilir JSON çıktısı
- Tek tıkla kopyalama ve .json olarak indirme
- %100 tarayıcı içi işlem
XML'i JSON'a çevirmek ne zaman gerekir?
Fatura verisini bir sisteme aktarırken çoğu modern kütüphane JSON ile çalışır. XML'i doğrudan ayrıştırmak yerine JSON'a çevirip nesne olarak işlemek, entegrasyon yazarken hem daha az kod hem daha az hata demektir.
İkinci kullanım hızlı inceleme: JSON çıktısı, iç içe geçmiş UBL-TR yapısını daha okunabilir biçimde gösterir ve hangi alanın hangi seviyede durduğunu görmenizi kolaylaştırır.
Dönüşümde nelere dikkat etmeli?
- Ad alanı ön ekleri (cbc:, cac:) korunur; alanı JSON içinde bu adla ararsınız.
- Tek elemanlı listeler JSON'da dizi olarak değil nesne olarak görünebilir; tek kalemli faturalarda bunu hesaba katın.
- Tutarlar metin olarak taşınır; hesaplama yapmadan önce sayıya çevirin ve ondalık ayırıcıya dikkat edin.
- Öznitelikler (currencyID gibi) ayrı alan olarak taşınır, değerin içinde kaybolmaz.
Dosya gizliliği
Dönüşüm tarayıcınızda yapılır; dosya sunucuya gönderilmez. Bu yüzden araç üyelik istemez ve gerçek müşteri faturalarıyla test yapmanızda sakınca olmaz.
UBL-TR yapısı JSON'da nasıl görünür?
UBL-TR belgeleri iç içe geçmiş bloklardan oluşur. JSON'a çevrildiğinde bu yapı korunur, yani bir alana erişmek için yolu takip etmeniz gerekir.
- Fatura numarası: Invoice > cbc:ID
- Belge kimliği (ETTN): Invoice > cbc:UUID
- Satıcı unvanı: Invoice > cac:AccountingSupplierParty > cac:Party > cac:PartyName > cbc:Name
- Satır kalemleri: Invoice > cac:InvoiceLine (birden fazlaysa dizi)
- Vergi alt toplamları: Invoice > cac:TaxTotal > cac:TaxSubtotal
- Ödenecek tutar: Invoice > cac:LegalMonetaryTotal > cbc:PayableAmount
Entegrasyonda en sık üç hata
Ürettiğiniz XML'in şemadan geçip geçmediğini kontrol etmek istiyorsanız iki dosyayı karşılaştırmak, hatayı denemeyle aramaktan hızlıdır.
- Tek kalemli faturada InvoiceLine'ı dizi beklemek: tek eleman nesne olarak gelebilir, koda her iki durumu da yazın.
- Tutarı doğrudan sayı sanmak: değerler metin olarak taşınır, önce dönüştürün.
- Para birimini kaybetmek: currencyID bir öznitelik olarak ayrı durur, tutarın içinde değildir.
Sıkça Sorulan Sorular
XML'i JSON'a nasıl çeviririm?
Dosyanızı sürükleyin veya XML kodunu kutuya yapıştırın; JSON çıktısı anında oluşur. Kopyala butonuyla panoya alabilir veya .json dosyası olarak indirebilirsiniz.
XML öznitelikleri JSON'da nasıl gösteriliyor?
Öznitelikler "@ad" anahtarlarıyla, elemanın metin içeriği ise "#text" anahtarıyla temsil edilir. Aynı isimli kardeş elemanlar otomatik olarak diziye dönüştürülür.
Büyük dosyaları çevirebilir miyim?
Evet; işlem tarayıcıda yapıldığı için 10 MB'a kadar dosyalar sorunsuz çevrilir.
İlgili Araçlar ve Rehberler
PDF faturaları XML'e mi çevirmeniz gerekiyor?
PDFXMLPro, PDF e-faturaları saniyeler içinde GİB uyumlu UBL-TR XML'e dönüştürür. İlk 2 dönüşüm ücretsiz.
Ücretsiz Başla