Ana içeriğe geç

Airtable Tabanından İsviçre QR Faturası: PDF4me ile Oluşturun, Ekleyin ve E-posta ile Make

· 22 dakikalık okuma
SEO and Content Writer

PDF4me Create Swiss QR-bill ödeme bilgilerini İsviçre QR fatura görüntüsüne dönüştüren bir Make modülüdür. Airtable tabanına yönlendirilen modül, bir satırdan alacaklıyı, borçluyu ve QR-IBAN okur, tamamlanmış faturayı aynı kayda ek olarak yerleştirir ve borçluya e-posta ile gönderir.

Airtable fatura oluşturup oluşturamayacağını sorarsanız, dürüst cevap hayır, ödenebilir bir fatura oluşturamaz. Alacaklıyı, borçluyu, tutarı ve QR-IBAN mükemmel bir şekilde saklar, ancak İsviçre QR faturası bir spesifikasyondur: tanımlanmış bir düzen, bir kesme çizgisi, doğru formatta bir referans ve bir banka uygulamasının gerçekten kabul edeceği bir QR kodu. Genellikle verilen tavsiye, Airtable terk edip bankanızın portalını açmak ve satırı yeniden yazmaktır. Bu senaryo tam tersini yapar ve veriler zaten bulunduğu veritabanından asla ayrılmaz.

Senaryoya genel bakış
1. Watch records
Airtable. Swiss QR Requests Status "Yeni" olan satırları alır.
2. Create Swiss QR-bill
PDF4me, alacaklı, borçlu ve QR-IBAN bilgilerini ilgili satırdan alarak ödeme belgesini oluşturur.
3. Upload an attachment
Airtable, PNG dosyasını aynı kayda, Document alanına geri yerleştirir.
4. Update a record
Airtable, sonucu geri yazar, böylece satırda ne olduğu belirtilir.
5. Send an email
Gmail, fişi ilgili satırdaki adrese gönderir.
kısa versiyon

Birisi Airtable tablosuna alacaklı, borçlu, tutar ve QR-IBAN içeren bir satır ekler ve Status Yeni olarak ayarlar. Make bunu algılar, PDF4me İsviçre QR faturasını oluşturur ve görüntü doğrudan o kayda ek olarak geri gönderilir. Borçlu bunu e-posta ile alır. Beş modül, banka portalı yok ve fatura verileri ekibinizin zaten düzenlediği temelde kalır.

Neden Odaklı Soru-Cevap​

Why keep the payment data in Airtable?Çünkü birçok küçük finans ekibi için bu bilgi zaten orada, müşteri kaydının ve ait olduğu projenin yanında bulunuyor. Bunu bir muhasebe paketine taşıyıp tek bir ödeme fişi oluşturmak, aynı müşteriyi iki sistemde de tutmak anlamına gelir. Ayrıca, teknik bilgisi olmayan bir meslektaşın da kimseye sormadan düzeltebileceği bir hata söz konusudur.

Why put the image back on the record instead of into a folder?Çünkü bir klasördeki dosya, onu oluşturan şeyle olan bağlantısını kaybeder. PNG dosyasını aynı satırdaki Document alanına eklemek, fişin, oluşturulduğu tutarın ve durumun birlikte taşınmasını sağlar ve satıra bakan herkes başka bir yere gitmeden dosyayı görebilir.

Why filter the trigger on Status rather than watching everything?Aksi takdirde, Watch records, yarım kalmış olanlar da dahil olmak üzere eklediğiniz her satırda tetiklenirdi. Tetikleyicideki formül, "Yeni"yi açık bir talimat haline getirir: satır tamamlandı ve hazır. Ayrıca, durumu eski haline getirerek fişi yeniden düzenlemenin güvenli bir yolunu da sunar.

Why does the QR-IBAN get cleaned before it is sent?Çünkü insanlar IBAN numaralarını boşluklarla yazıyor ve belirtilen formatta boşluksuz hesap isteniyor. IBAN alanı, boşlukları kaldıran bir değiştirme işleminden geçiriliyor; bu da banka uygulamasının okuyacağı bir fiş ile reddedeceği bir fiş arasındaki farkı oluşturuyor. Aynı mantık, tutar için de geçerli; tutar ham haliyle değil, iki ondalık basamağa kadar biçimlendiriliyor.


Neler Alacaksınız?​

Girdi: Alacaklı, borçlu, tutar, para birimi ve QR-IBAN bilgilerini içeren ve Status "Yeni" olarak ayarlanmış bir Airtable satırı. Çıktı: Aynı kayda eklenmiş bir İsviçre QR faturası PNG dosyası ve borçluya fatura ekli bir e-posta.

Airtable base PDF4me Live Automations with the Swiss QR Requests table open, showing rows INV-1001 to INV-1004 with CreditorName Muster AG, Bahnhofstrasse 1, 8001 Zuerich CH, a QRIBAN beginning CH4431999123, a structured Reference, DebtorName Test Kunde AG at Seestrasse 10 in 8002 Zuerich, Amount 100.50, Currency CHF, a Message column reading Rechnung INV-1001 and a Status column reading Generated

Her fatura için bir satır. Buradaki her sütun, İsviçre QR spesifikasyonunun istediği bir alana karşılık gelir.

The generated Swiss QR bill for INV-1003: a Receipt half and a Payment part separated by a scissor line, both showing account CH44 3199 9123 0008 8901 2 payable to Muster AG at Bahnhofstrasse 1, 8001 Zuerich, reference 21 00000 00003 13947 14300 09017, additional information Rechnung INV-1003, payable by Test Kunde AG at Seestrasse 10, 8002 Zuerich, currency CHF and amount 100.50, with the QR code in the payment part

Solda fiş, sağda ödeme kısmı, aralarında makas çizgisi.

Gmail showing the received message with subject Your Swiss QR bill INV-1003, the body reading Hello Test Kunde AG, Please find your Swiss QR bill INV-1003 attached, Amount 100.5 CHF, and one attachment previewing the QR bill

Borçlunun aldığı şey, tamamen alacaktan kaynaklanıyor.


İhtiyacınız Olanlar​

  • A Make account.Open Make Standart uygulamalarda beş modül bulunur, premium pakete gerek yoktur.
  • PDF4me API key.Get your API key Tek bir PDF4me bağlantısı tüm senaryoyu kapsar.
  • An Airtable baseYakalanan veri tabanına PDF4me Live Automations adı verilir ve Swiss QR Requests adlı bir tablo içerir. Bu veri tabanı, alacaklı bloğu, borçlu bloğu, QRIBAN, Referans, Amount, Para Birimi, Mesaj, E-posta, Status alanı ve tamamlanmış fiş için Document adlı bir ek alanı gerektirir.
  • A Gmail accountTeslimat için, Make ile bağlantılı.
  • A real QR-IBANBankanızdan alacağınız bir IBAN numarası. Bu sıradan bir IBAN değil: İsviçre QR-IBAN özel bir kurum aralığında yer alır ve yapılandırılmış bir QR referansının çalışmasını sağlayan şeydir. Bankanız talep üzerine bir tane verir.

Senaryonun Genel Görünümü​

  1. Airtable Watch records, Swiss QR Requests yeni satırları algılıyor.
  2. Create Swiss QR-bill (PDF4me) fişi PNG olarak oluşturur.
  3. Upload an attachment (Airtable), dosyayı aynı satırdaki Document alanına ekler.
  4. Update a record (Airtable), sonucu ilgili satıra geri yazar.
  5. Send an email (Gmail), makbuzu borçluya iletir.

Senaryonun tam özeti​

The Make scenario canvas showing five connected modules in order: Airtable Watch records with a clock icon, PDF4me Create Swiss QR-bill, Airtable Upload an attachment, Airtable Update a record, and Gmail Send an email, each marked with a green tick and one operation

Üç Airtable modülü, bir PDF4me modülü ve bir Gmail modülü. Taban hem kaynak hem de hedef konumundadır.


Adım 1: Airtable satırından bir senaryoyu nasıl tetiklersiniz?​

Şu ana kadar olan süreç: henüz hiçbir şey olmadı, bu tetikleyici.

"Hazır" olarak işaretlenmiş bir satır, talebi temsil eder; yani Make Watch'ın yaptığı şey budur.

  1. Tetikleyici olarak Airtable > Watch records ekleyin.
  2. Yapılandır:
    • Temel: PDF4me Live Automations
    • Masa: Swiss QR Requests
    • Trigger field: Created
    • Label field: Title
    • Sınır: 10
    • Formül: {Status}='New'

Watch records yapılandırması​

Make Airtable Watch records module with Base set to PDF4me Live Automations, Table Swiss QR Requests, Trigger field Created, Label field Title, Limit 10, View left empty and Formula braces Status equals New

Formül, senaryonun yarım kalmış satırlarda tetiklenmesini engelleyen şeydir.

Tip.Trigger field Bu alanın "Oluşturulma Zamanı" veya "Son Değiştirilme Zamanı" olması gerekiyor ve Make modülünde de bu belirtiliyor. Bu alanlardan biri olmadan tetikleyici kayıtları sıralayamaz ve tahmin edilemez şekilde davranır. Tablonuzda böyle bir alan yoksa, geri kalanını oluşturmadan önce bir tane ekleyin.


Adım 2: Bir satırı İsviçre QR koduna nasıl dönüştürürsünüz?​

Şu ana kadarki akış: Airtable tetikleyicisi.

Bu, fişi oluşturan modüldür. Alanlarının çoğu satırdan doğrudan eşlenir; ikisi için bir ifadeye ihtiyaç duyulur.

  1. PDF4me ekleyin > Create Swiss QR-bill.
  2. Çıktıyı şekillendiren ayarları Configure:
    • Format Type: PNG
    • Reference Type: QRR
    • Dil: English
    • Separator Line: Line With Scissor
    • Creditor Address Type: S
  3. Tetikleyiciden gelen ödeme verilerini eşleştirin:
    • Amount: formatNumber(1.Amount; 2; "."; "")
    • IBAN: replace(1.QRIBAN; " "; "")
    • Alacaklı sütunundan Creditor Name, sokak, posta kodu, şehir ve ülke bilgilerini girin.
    • Borçlu sütunundan Debtor adı ve adresi, satırdan ise Reference.

Create Swiss QR-bill​

Make PDF4me Create Swiss QR-bill module showing Format Type PNG, a Currency dropdown, Reference Type QRR, Language English, Separator Line Line With Scissor, Amount set to a formatNumber expression over the Amount column, IBAN set to a replace expression over the QRIBAN column, Creditor Address Type S and the start of the Creditor Name field

Panel burada kaydırılıyor. Alacaklı Adı'nın altında alacaklının adresinin geri kalanı ve borçlunun tüm bilgileri yer alıyor.

Her ayarın neye karar verdiği​

AlanBuradaki değerKontrol ettiği şeyler
Format TypePNGPDF yerine resim olması, Airtable hücresine eklenmesini ve satır içi önizleme yapılmasını sağlıyor.
Reference TypeQRRQR-IBAN gerektiren, yapılandırılmış bir QR referansı. Alternatifleri SCOR ve NON
Separator LineLine With ScissorMakbuz ve ödeme kısmı arasında kesme çizgisini çizer.
Creditor Address TypeSYapılandırılmış adres, yani sokak, posta kodu ve şehir bilgilerinin serbest metin yerine ayrı alanlarda yer alması anlamına gelir.
AmountformatNumber(...)İki ondalık basamak ve binlik ayırıcı yok, bu da teknik şartnamenin beklediği şey.
IBANreplace(...)Hesap doğrulanmadan önce, kullanıcıların IBAN numaralarına yazdıkları boşlukları kaldırır.

Tip.Reference Type ve hesap bilgilerinin uyumlu olması gerekir. QRR QR-IBAN ve 27 haneli bir QR referansı gereklidir; QRR referansı içeren sıradan bir IBAN oluşturulan fişin doğrulama hatası vermesinin en yaygın nedenidir. Henüz bir QR-IBAN yoksa, NON kullanın ve bankanız bir tane oluşturana kadar referans alanını boş bırakın.


3. Adım: Fişi kayda nasıl geri koyarsınız?​

Şu ana kadarki süreç: tetikleyici ve PDF4me modülü.

Faturayı isteyen taraf, faturayı ödemekle yükümlüdür.

  1. Airtable ekle > Upload an attachment.
  2. Yapılandır:
    • Base ve Table: 1. adımda olduğu gibi
    • Record ID: Tetikleyiciden gelen id
    • Attachment field: Document
    • File: PDF4me çıktısı - Create Swiss QR-bill
    • File name: QRBill_ artı satırdaki Title artı .png
    • Data: 2. modülün Document çıktısı
    • Content type: PNG image

Upload an attachment​

Make Airtable Upload an attachment module with Base PDF4me Live Automations, Table Swiss QR Requests, Record ID mapped from the trigger id, Attachment field Document, File set to the PDF4me Create Swiss QR-bill output, File name QRBill_ plus the Title token plus .png, Data set to the module 2 Document output and Content type PNG image

Record ID tetikleyiciden gelir, bu nedenle fiş, onu isteyen satıra yerleşir.


Adım 4: Sonucu satıra nasıl kaydedersiniz?​

Şu ana kadarki süreç: her şey dosya yükleme aşamasından itibaren.

Dosyayı eklemek, işin bittiği anlamına gelmez. Sonuç ayrı bir güncelleme ile bildirilir.

  1. Airtable ekle > Update a record.
  2. Yapılandır:
    • Base ve Table: 1. adımda olduğu gibi
    • Record ID: Tetikleyiciden gelen id
    • Record: Geri yazılmasını istediğiniz alanları doldurun. Status önemlidir, çünkü tetikleyici formül bunu okur ve OutputLink sütunu paylaşılabilir bir URL için uygun bir yerdir.

Update a record​

Make Airtable Update a record module with Base PDF4me Live Automations, Table Swiss QR Requests, Record ID mapped from the trigger, and the Record section listing the table fields Title, CreditorName, CreditorStreet, CreditorPostalCode, CreditorCity, CreditorCountry, QRIBAN, Reference, DebtorName, DebtorStreet and DebtorPostalCode as empty inputs

Bu panel, tablodaki her sütunu listeler. Üzerine yazılmasını istemediğiniz alanları boş bırakın.

Tip.Değiştirmeyi düşündüğünüz alanlar dışında tüm alanları boş bırakın. Eşlenmiş ancak boş bir alan hücreyi temizler; bu da, aksi takdirde işe yaramış gibi görünen bir senaryoda alacaklı adresini silmenin kolay bir yoludur. Kaydedilen çalıştırmada panel kaydırılır ve görünür alanların tümü boştur, bu nedenle Status gördüğünüzü kopyalamak yerine bilinçli olarak ayarlayın.


Adım 5: Faturayı borçluya nasıl gönderirsiniz?​

Şu ana kadarki süreç: kayıt güncellemesine kadar her şey.

Son modül, fişi satırda belirtilen adrese teslim eder.

  1. Gmail ekle > Send an email.
  2. Yapılandır:
    • To: Tetikleyiciden gelen Email sütunu
    • Subject: Your Swiss QR bill ve Title
    • Body type: Raw HTML
    • Content: Borçlunun adını, faturayı ve tutarı belirten kısa bir HTML metni.
  3. Ekteki dosyayı ekleyin:
    • File: PDF4me - Create Swiss QR-bill
    • File name: QRBill_ artı Title artı .png
    • Data: 2. modülün Document çıktısı

Send an email​

Make Gmail Send an email module with the recipient mapped from the Email column, Subject Your Swiss QR bill plus the Title token, Body type Raw HTML, an HTML content block greeting the debtor and stating the amount and currency, and one attachment taking the PDF4me module output with the file name QRBill_ plus Title plus .png

Ek dosya, baytlarını 2. modülden alır, bu nedenle Airtable hiçbir zaman geri okunmaz.

Tip.E-postanın gövdesindeki miktara dikkat edin. Yakalanan mesaj şu şekildedir:Amount: 100.5 CHF fişin kendisinde ise şunlar yazıyor:100.50 Çünkü gövde ham sütunu eşlerken QR kodlu fatura işlenir.formatNumber Müşteriye aradaki farkı açıklamak istemiyorsanız, her iki yerde de aynı ifadeyi kullanın.


Senaryoyu Çalıştırın ve Doğrulayın​

  1. Senaryoyu Save ve bir kez çalıştırın.
  2. Swiss QR Requests alacaklı, borçlu, tutar, QR-IBAN ve Status New bilgilerini içeren bir satır ekleyin.
  3. Beş modülün de yanmasını izleyin. Her biri bir işlemi bildirmelidir.
  4. Satırı açın: Document alanında Title ile aynı adı taşıyan bir PNG dosyası bulunmalıdır.
  5. Ekteki dosyayı açın ve her iki yarısını da kontrol edin. Makbuz ve ödeme kısmında aynı hesap, referans ve tutar görünmeli ve aralarında makas çizgisi bulunmalıdır.
  6. Gelen kutunuzdaki E-posta sütununda mesajı ve ekini kontrol edin.

Yakalanan işlemde, INV-1003 satırında, Zuerich, 8001, Bahnhofstrasse 1 adresindeki Muster AG CH44 3199 9123 0008 8901 2 numaralı hesap için, 21 00000 00003 13947 14300 09017 referans numaralı ve Zuerich, 8002, Seestrasse 10 adresindeki Test Kunde AG tarafından ödenecek 100,50 CHF tutarında bir ödeme belgesi üretilmiştir.

What did you actually build?Ekibinizin halihazırda kullandığı veritabanının içinde yer alan bir ödeme fişi oluşturucu. Kimse banka portalına giriş yapmaz, kimse IBAN numarasını tekrar yazmaz ve fiş, onu oluşturan kayda eklenir; böylece bir ay sonra bile hangi satırın hangi faturayı oluşturduğunu görebilirsiniz.


Yeniden derlemeye gerek kalmadan ekleyebileceğiniz yaygın varyasyonlar​

Bu fişi fatura sayfasına yapıştırın.
Format Type PDF olarak değiştirin ve faturayı faturanızın altına yerleştirmek için bir birleştirme adımı ekleyin.overlay merge scenario Bu deseni ayrıntılı olarak ele alıyor.
Fatura hem euro hem de frank cinsindendir.
Belirtilen özellikler yalnızca CHF ve EUR'ya izin veriyor. Para Birimi sütununu sabitlemek yerine Para Birimi alanına eşleyin ve Airtable başka herhangi bir şeyi işaretleyen bir doğrulama görünümü ekleyin.
Aynı merkezden hatırlatma gönderin.
Ödeme tarihi sütunu ve otuz gün sonra ödenmemiş her şey için mevcut eki yeniden gönderen zamanlanmış bir senaryo ekleyin. Makbuz zaten kayıtta olduğundan yeniden oluşturmaya gerek yoktur.
birden fazla kuruluş için fatura
Alacaklı bloğu zaten sütunlardan geliyor, bu nedenle bir veri tabanı iki şirket için işlem yapabilir. Her birine satırda kendi QR-IBAN verin ve başka hiçbir şey değişmez.

Bu yöntem, İsviçre QR kodunu üretmenin diğer yöntemleriyle nasıl karşılaştırılır?​

Her satır alternatifi açıklıyor. Son satır ise bu senaryoyu gösteriyor.

KarşılaştırmakKim yönetiyor?Verilerin kaynağıBakımını yaptığınız şeyler
Banka portalı ile bu senaryo arasındaki karşılaştırmaİnsan, her seferinde bir hata yaparak ilerler.Elle yeniden yazıldı.Hiçbir şey, ama her fatura birilerinin dakikalarına mal oluyor.
İsviçre QR kodu ihracatı içeren muhasebe paketi ile bu senaryonun karşılaştırılmasıFinans, bu ürünün içindeÜrünün kendi defteriAbonelik sistemi ve müşterileriniz için ikinci bir ev.
Geliştirici kütüphanesi ve bu senaryoBir uygulama geliştiricisi, uygulama içindeVeritabanınız, kod aracılığıylaKod, teknik özellik güncellemeleri ve sürümler
Bu senaryoAirtable satır ekleyebilen herkesEkibin halihazırda sahip olduğu temelBeş modül ve bir QR-IBAN

Sıkça sorulan sorular​

İsviçre QR banknotu nedir?​

İsviçre QR faturası, İsviçre'de eski turuncu ve kırmızı ödeme formlarının yerini alan ödeme fişidir. Üzerinde alacaklı, borçlu, tutar ve referans numarasını içeren bir QR kodu bulunur; böylece ödeme yapan kişi herhangi bir şey yazmak yerine bankacılık uygulamasında bu kodu tarar.

İki bölümden oluşur: bir fiş ve bir ödeme bölümü, aralarında bir kesme çizgisi bulunur ve düzeni sabittir.Swiss implementation guidelines published by SIX Bu nedenle, böyle bir şeyi oluşturmak bir tasarım problemi değil, bir şartname problemidir.

İsviçre'deki QR-IBAN numarası nedir?​

QR-IBAN bankanızın normal IBAN numaranızın yanında verdiği, kurum tanımlayıcısının ayrılmış bir aralıkta yer almasıyla tanınan ikinci bir hesap numarasıdır. Bankanın gelen bir ödemenin yapılandırılmış bir QR referansı taşıdığını anlamasını ve bunu otomatik olarak bir faturayla eşleştirmesini sağlamak için mevcuttur.

Bu senaryo için pratik kural şudur: Reference Type QRR olarak ayarlarsanız, normal IBAN'ınızı değil, QR-IBAN kullanmalısınız. Bunları karıştırmak, doğru görünen ancak taranmayacak bir fiş üretir.

İsviçre QR faturası nasıl ödenir?​

Ödeme yapan kişi bankacılık uygulamasını açar, ödeme bölümündeki QR kodunu tarar, ekrandaki tutarı kontrol eder ve onaylar. Hiçbir şey yazılmaz, ki bu formatın temel amacı da budur.

Ödeme fişi, postane gişesinde de ödenebilir veya basılı alanlardan manuel olarak girilebilir; bu nedenle ödeme bölümünde hesap numarası, referans numarası ve tutar, kodun yanında okunabilir metin olarak tekrarlanır.

Airtable fatura oluşturabilir mi?​

Tek başına değil. Airtable verileri depolar ve bir arayüzde veya yazdırılabilir bir görünümde düzenleyebilir, ancak bir ödeme standardını karşılayan bir belge oluşturmanın veya bu spesifikasyona uygun taranabilir bir QR kodu oluşturmanın bir yolu yoktur.

En iyi yaptığı şey, gerçeğin kaynağı olmaktır. Bu senaryo bu ayrımı koruyor: Airtable satırı tutuyor, PDF4me uyumlu yapıyı üretiyor ve sonuç satıra ek olarak geri dönüyor.


Sorun giderme​

Banka uygulaması kodu taramayacak.

Hesap ve referans türünü birlikte kontrol edin. AQRR Referans için QR-IBAN gereklidir; normal bir IBAN için ise QR-IBAN gereklidir.SCOR veyaNON Ardından IBAN modüle boşluksuz olarak ulaştığını kontrol edin, işte bu da demek oluyor.replace Bu ifade bunun için var.

Senaryo, hazır olmayan satırlarda tetiklenir.

Tetikleyici formül eksik veya eşleşmiyor.{Status}='New' Büyük/küçük harf duyarlıdır ve alan, değeri tam olarak "Yeni" olan tek seçimli veya metin alanı olmalıdır. Ayrıca Trigger field Oluşturulma Zamanı veya Son Değiştirme Zamanı alanı olduğundan emin olun.

Ekli dosya hiçbir zaman kayıtlarda yer almaz.

3. modüldeki Record ID kontrol edin. Bu kimlik tetikleyiciden gelmeli, PDF4me modülünden değil. Ardından Content type Format Type eşleştiğini kontrol edin: 2. modülden bir PNG dosyası PDF olarak yüklendiğinde eklenecek ve önizleme reddedilecektir.

Bir sütun, çalıştırma işleminden sonra silindi.

Modül 4, tablodaki her alanı listeler ve eşlenmiş ancak boş olan bir alan hücreyi temizler. Bilerek yazmadığınız her şeye dokunmayın.


Sonraki Adımlar​

Hali hazırda tuttuğunuz veri tabanı, göründüğünden çok daha fazla tamamlanmış bir ödeme belgesine benziyor. Sadece belirtilen özellikleri karşılayacak bir şeye ihtiyacı var.