OCR ile teklif kalemi aktarma: PDF'ten satırları çekmek
İki yüz satırlık taranmış bir fiyat listesi, teklif uzmanının akşamını yiyor. OCR aktarımının nerede işe yaradığını ve nerede kontrol istediğini adım adım kuruyoruz.
Perşembe 16:20. Bir teklif uzmanının önünde tedarikçiden gelen dokuz sayfalık taranmış fiyat listesi duruyor: iki yüzden fazla satır, eğri taranmış sayfa kenarları, bazı satırların yanında elle düşülmüş notlar. Müşteri teklifi ertesi sabah bekliyor. Uzman satırları tek tek yazmaya başlıyor ve kırk dakika sonra, listenin ortalarında bir yerde, bir birim fiyatı virgül kaymasıyla girdiğini fark ediyor. Artık yalnızca o satırı değil, o ana kadar yazdığı her satırı yeniden kontrol etmek zorunda. Teklif hazırlığındaki zamanın büyük bölümü böyle gider: metni düşünmekle değil, satırları taşımakla.
Bu yazıda PDF'ten ya da fotoğraftan teklif kalemi aktarmanın nasıl çalıştığını sırayla ele alıyoruz: OCR'ın gerçekte ne okuduğu, hangi belge tipinin hangi kaliteyle çıktığı, satır tanımanın nerede bozulduğu, sayı ve para birimi biçimlerinin açtığı hatalar, aktarılan kalemi kimin doğrulayacağı, fiyat listesi ile eski teklif arasındaki iş akışı farkı, aktarımdan sonra teklifin nasıl toparlandığı ve bütün bunun iki haftalık bir kurulum planına nasıl oturduğu.
Elinizdeki PDF neden doğrudan teklife dönüşmüyor?
PDF bir veri biçimi değil, bir baskı biçimidir. Bir sayfanın hangi harfin hangi koordinatta duracağını söyler; o harflerin bir tablonun üçüncü sütununu oluşturduğunu söylemez. Bu yüzden gözünüzün "kalem adı, miktar, birim fiyat" diye okuduğu şey, dosyanın içinde yan yana konumlanmış üç ayrı metin kutusudur. Sütunları ayıran çizgiler çoğu zaman yalnızca çizilmiş grafiklerdir, hücre sınırı değildir.
İkinci ayrım daha önemli: elinizdeki dosya metin katmanı taşıyan bir PDF mi, yoksa kağıdın fotoğrafı mı? Muhasebe programından çıkmış bir fiyat listesinde harfler gerçekten harf olarak durur. Tedarikçinin tarayıcıdan geçirip gönderdiği listede ise sayfa tek bir görüntüdür; içinde tek bir gerçek karakter yoktur. İkisi aynı görünür, aynı davranmaz. Bir fiyat teklifinin nasıl hazırlandığını tarif ederken çoğu kılavuz bu ayrımı atlar ve "PDF'i içe aktarın" der; oysa aktarımın zorluğu tam olarak burada başlar.
Üçüncüsü, teklif kalemi bir metin parçası değil, bir kayıttır. Kalem adı, miktar, birim, birim fiyat, satır indirimi ve vergi oranı alanlarının hepsi ayrı ayrı doğru dolmak zorundadır; biri yanlışsa toplam yanlış çıkar ve yanlış toplam müşteriye gider. Bu yüzden aktarımı "metni al" işi gibi değil, "alanları eşleştir" işi gibi kurmak gerekir.
OCR ne okur, ne okuyamaz?
OCR, görüntüdeki şekilleri karaktere çeviren katmandır. İyi taranmış, düz, tek yazı tipiyle basılmış bir sayfada bu iş bugün oldukça güvenilirdir. Sorun karakterlerde değil, karakterlerin arasındaki ilişkidedir: hangi kelime grubu bir kalem adıdır, hangi sayı miktardır, hangi sayı fiyattır. Bunu belirleyen şey düzen analizidir ve düzen analizi, kaynağın düzenli olduğu ölçüde çalışır.
Pratikte OCR'ın rahatça okuduğu şeyler bellidir: net basılmış kalem adları, tam sayılar, sütun başlıkları, para birimi simgeleri. Zorlandığı şeyler de bellidir: el yazısı düzeltmeler, damga ya da kaşe altında kalan satırlar, çok açık gri baskı, iki sayfaya bölünmüş tek bir kalem açıklaması, sütun genişliği taştığı için alt satıra sarkan uzun ürün adları. Bir aktarım akışını kurarken hedef, OCR'ın hiç hata yapmaması değildir; hatanın nerede çıkacağının önceden bilinmesi ve o noktaya bir kontrol konmasıdır.
Bu yüzden aktarımı düşünürken onu CRM'de veri içe ve dışa aktarma disiplininin bir alt dalı olarak görmek daha doğru olur. Aynı sorular geçerlidir: kaynak hangi biçimde, hangi alan hangi alana gidiyor, hatalı satır ne oluyor, aktarım geri alınabiliyor mu?
Hangi belge tipi hangi sonucu verir?
Bütün kaynaklar aynı değildir. Aşağıdaki tablo, teklif kalemi aktarımında sık karşılaşılan dört kaynak tipini ve her birinde neyin beklenmesi gerektiğini özetliyor. Buradaki amaç bir doğruluk yüzdesi vaat etmek değil; hangi kaynakta hangi kontrolün zorunlu olduğunu göstermek.
| Kaynak | Yapı | Zorlanan nokta | Zorunlu kontrol |
|---|---|---|---|
| Dijital PDF (sistemden çıkmış) | Metin katmanı var, sütunlar hizalı | Birleşik hücreler, alt toplam satırları | Satır sayısı ve genel toplam |
| Taranmış fiyat listesi | Görüntü, düz sayfa | Silik baskı, sayı okuma | Rastgele on satırda birim fiyat |
| Telefonla çekilmiş fotoğraf | Görüntü, eğik ve gölgeli | Satır kayması, kesilen kenar | Tüm satırların baştan sona okunması |
| Eski teklifin PDF çıktısı | Metin katmanı var, tanıdık şablon | İndirim ve vergi sütunları | İndirim, vergi ve para birimi |
Tablodaki sıralama aynı zamanda bir tercih sırasıdır. Karşı taraftan belge isterken "PDF gönderin" demek yerine "sisteminizden çıkan PDF'i gönderin, taramaya gerek yok" demek, aktarımın kalitesini herhangi bir yazılım ayarından daha çok değiştirir. Matbaa gibi kalem yoğun işlerde bu tek cümlelik istek, her teklifte yarım saat kazandırır.
Satır tanıma nerede bozulur?
Aktarımın çöktüğü yer neredeyse hiçbir zaman "harfi yanlış okudu" değildir. Çöküş, satır sınırının yanlış çizilmesiyle olur. En sık görülen dört durum şunlardır:
- Sarkan kalem adı. Ürün açıklaması iki satıra sığmıştır; ikinci satır ayrı bir kalem sanılır ve miktarsız, fiyatsız bir satır olarak listeye eklenir.
- Birleşik hücre. Bir başlık satırı, altındaki üç kalem için ortak bir grup adıdır; aktarım bunu kalem sanır.
- Ara toplam satırı. Sayfa sonundaki ara toplam, en pahalı kalem olarak listeye girer ve teklifin toplamını iki katına çıkarır.
- Sayfa geçişi. Sayfa altında yarım kalan bir kalem, sonraki sayfanın başlığıyla birleşir.
Bu dördü de gözle bakınca hemen fark edilir; sorun, iki yüz satırlık bir listede kimsenin gözle bakmıyor olmasıdır. Çözüm basit bir alışkanlıktır: aktarımdan sonra listenin en pahalı üç satırına ve en ucuz üç satırına bakmak. Ara toplam ve boş satır hataları neredeyse her zaman bu iki uçta durur. Üretim tarafında RFQ'ya yanıt hazırlarken, bu kontrol malzeme listesinin kendisini okumaktan daha hızlıdır ve daha çok hata yakalar.
Sayı biçimi, para birimi ve vergi: en pahalı hatalar
Bir kalem adının yanlış okunması müşteriye komik gelir; bir sayının yanlış okunması para kaybettirir. Türkiye'de yaygın olan binlik nokta ve ondalık virgül düzeni, İngilizce kaynaklarda tam tersidir. Aynı listede her iki biçimin birlikte bulunduğu da olur; özellikle ithal ürün listelerinde. Aktarım bir biçimi varsayıp diğerini olduğu gibi alırsa, bin katlık bir sapma sessizce teklifin içine yerleşir.
İkinci tuzak para birimidir. Fiyat listesi dolar, teklif Türk lirası olabilir; ya da liste geçen yılın kuruyla hazırlanmıştır. Rocketly'nin çoklu para ve canlı kur davranışı burada işe yarar: teklif oluşturulduğu andaki kur kayda mühürlenir, güncel kurlar Merkez Bankası'ndan çekilir. Yani aktarılan bir kalem üç ay sonra tartışıldığında "hangi kurla hesapladık" sorusunun cevabı belgeye yazılıdır, kimsenin hafızasına değil.
Üçüncüsü vergi ve satır indirimidir. Fiyat listeleri çoğunlukla vergisiz, eski teklifler çoğunlukla vergili gelir. Aktarım sonrası "toplam neden tutmuyor" sorusunun cevabı genellikle burasıdır. Aktarımı bir kez kurarken listenin vergi dahil mi hariç mi olduğunu alan düzeyinde işaretlemek, sonradan yapılacak yüzlerce düzeltmeyi baştan keser. Teklifi şansa bırakmayan bir süreç kurmanın somut karşılığı büyük ölçüde bu tür kararların yazılı olmasıdır.
Aktarılan kalemi kim doğrular?
Otomatik aktarımın en çok yanlış anlaşılan yanı şudur: makine satırları getirir, kararı insan verir. Aktarım ekranından çıkan liste bir taslaktır, teklif değildir. Bu ayrımı süreçte de kurmak gerekir; aksi halde "sistem öyle okumuş" cümlesi bir sorumluluk boşluğuna dönüşür.
Rocketly'de bu iş OCR ile Kalem Aktarma özelliğiyle yapılır: fiyat listesinin ya da eski teklifin fotoğrafını yüklersiniz, kalemler, miktar ve fiyatlar teklif satırlarına doldurulur, siz de göndermeden önce satırları düzenlersiniz. Aktarım bir öneri üretir; teklifi gönderme kararı hala sizdedir. Aynı mantık Excel'den Kalem Aktarma için de geçerlidir; uzun kalem listeleri Excel'den tek seferde gelir, tek tek satır girilmez.
Doğrulamayı kim yapacak sorusunun cevabı rol bazlı olmalıdır. Kalem adlarını ve miktarları teklifi hazırlayan kişi, fiyat ve indirim mantığını ise eşiği aşan tekliflerde yönetici doğrular. Alan eşleştirmenin nasıl kurulduğunu görmek isterseniz Excel'den CRM'e alan eşleştirme sihirbazı aynı mantığı lead tarafında adım adım gösterir; kaynak sütunun hedef alana bağlanması ve hatalı satırın ayrı tutulması iki tarafta da aynı işler.
Fiyat listesi mi, eski teklif mi? İki farklı akış
Aynı düğmeye bassanız da bu ikisi farklı işlerdir. Fiyat listesi aktarımı bir katalog işidir: satırlar tekrar tekrar kullanılacaktır, bu yüzden bir kez temizlenip kaydedilmeleri gerekir. Eski teklif aktarımı ise bir vaka işidir: belirli bir müşteriye, belirli bir tarihte verilmiş fiyatları yeniden masaya getirirsiniz.
Fiyat listesi aktarımında doğru refleks, temizlenmiş listeyi tekrar kullanılabilir bir sete dönüştürmektir. Rocketly'nin Hazır Şablon Galerisi tam olarak bunun için vardır: sektöre göre hazır bir kalem setinden başlar, kendi ön ayarınız olarak kaydedersiniz. Bir sonraki teklifte aynı listeyi ikinci kez okutmazsınız.
Eski teklif aktarımında ise soru farklıdır: geçen seneki fiyatın bugün ne kadarı geçerli? Burada kalemleri getirmek işin kolay yarısıdır; zor yarısı hangi satırın güncellenmesi gerektiğine karar vermektir. Kazandıran bir teklif yapısı kurmuş bir ekipte bu karar zaten şablonun içinde durur: hangi kalemler sabit, hangileri her teklifte yeniden fiyatlanır, hangileri opsiyoneldir.
Aktarımdan sonra teklif nasıl toparlanır?
Kalemler geldikten sonra teklif hala bitmiş değildir. Sıra, satırların bir belgeye dönüşmesindedir: gruplama, opsiyonel kalemlerin ayrılması, şartlar metni, geçerlilik süresi ve sunum düzeni. Bu aşamada aktarımın hızı, yerini yargıya bırakır.
İki şey burada işi belirgin biçimde kolaylaştırır. Birincisi, aktarılan uzun listenin müşteriye olduğu gibi gitmemesi; paket seçimi ve kısmi kabul davranışı sayesinde müşteri paketler arasından seçebilir ya da yalnız istediği kalemleri onaylayabilir, seçim teklife işlenir. İkincisi, tutar eşiğini ya da marj tabanını aşan tekliflerin Yönetici Onay Kapısı'na düşmesi; onaylanmadan müşteriye gönderilmez ve karar teklifin versiyon geçmişine yazılır. Aktarımdan gelen bir indirim satırının kim tarafından onaylandığı, üç ay sonra tartışma konusu olmaz.
Kalem yapılandırmasını bir bütün olarak düşünmek isterseniz, yapılandır-fiyatla-teklif ver mantığı aktarımın nereye oturduğunu netleştirir: OCR aktarımı bu üçlünün ilk adımını besler, fiyatlama kuralları ve teklif üretimi ondan sonra gelir.
İki haftalık kurulum planı nasıl görünür?
Bu işi bir günde kurmaya çalışmak, çoğu ekipte ilk hatalı teklifle birlikte terk edilmesine yol açar. Kademeli bir plan daha iyi çalışır:
- 1-3. gün: En sık kullandığınız üç kaynak belgeyi seçin. Her birini bir kez aktarın ve çıkan listeyi elle hazırlanmış haliyle satır satır karşılaştırın. Amaç kusursuz sonuç değil, hatanın karakterini öğrenmek.
- 4-6. gün: Bulduğunuz hata tiplerini bir kontrol listesine çevirin: ara toplam satırı, sarkan açıklama, ondalık ayracı, vergi durumu, para birimi.
- 7-10. gün: Tekrar eden kalem setlerini şablona kaydedin. Sık kullanılan kalemler artık hiç okutulmaz, seçilir.
- 11-14. gün: Onay eşiğini ve kimin neyi doğrulayacağını yazın. Aktarımdan çıkan taslağın kimin elinden geçmeden gitmeyeceği net olsun.
İkinci haftanın sonunda ölçmeniz gereken tek şey var: bir teklifin hazırlanma süresi ile gönderim sonrası düzeltme sayısı. İkincisi düşmüyorsa aktarım hızlanmış ama güvenilir olmamış demektir. Gönderilen teklifin kazanca taşınmasını ölçen ekipler bu iki sayıyı zaten yan yana tutar; teklif analitiği ve dışa aktarma ile veriyi CSV olarak alıp kendi raporunuza koyabilirsiniz.
Aktarım metni, teklif metnini yazar mı?
Hayır, ve bu ayrımı korumak önemlidir. OCR aktarımı kalem tablosunu doldurur; teklifin ikna eden kısmı olan kapsam açıklaması, kabul kriterleri ve gerekçe kısmı ayrı bir iştir. Kalemleri hızlı getirmenin gerçek kazancı, kazanılan zamanın bu metne aktarılabilmesidir.
Pratikte iyi çalışan sıra şudur: önce kalemler aktarılır ve doğrulanır, sonra kapsam metni yazılır, en son sunum düzeni ayarlanır. Ters sırada çalışan ekipler güzel bir belgeye yanlış satırlar yerleştirmiş olur. Bağlamdan ikna edici teklif üretmenin ön koşulu da budur: bağlam doğru olmalıdır, yoksa üretilen metin yanlış veriyi güzel anlatır.
Kurulumu kendi kalem listelerinizle denemek isterseniz hesabınızı açıp bir fiyat listesini aktararak başlayabilirsiniz.
Sıkça sorulan sorular
Fotoğrafla taranmış listelerde doğruluk yeterli mi?
Düz zeminde, gölgesiz ve sayfanın tamamı kadraja girecek şekilde çekilmiş bir fotoğrafta sonuç genellikle kullanılabilir. Eğik çekim, parlama ve kırışık kağıt en çok satır kaymasına yol açar. Kaynağı seçme şansınız varsa sistemden çıkmış PDF her zaman daha iyi sonuç verir.
Aktarılan kalemler yanlışsa geri alabilir miyim?
Teklif üzerindeki her revizyon anlık görüntüsüyle saklandığı için önceki hale dönebilir, iki sürümü yan yana koyup farkı satır satır görebilirsiniz. Bu, aktarımı denemeyi risksiz hale getirir.
Excel varken OCR'a gerek var mı?
Excel varsa doğrudan Excel kullanın; her zaman daha temizdir. OCR, karşı tarafın yalnızca PDF ya da kağıt gönderdiği durumlar içindir. Çoğu ekipte ikisi birlikte kullanılır: kendi kataloğu Excel'den, tedarikçi listesi OCR ile gelir.
Kaç satırlık listeler için mantıklı?
Yaklaşık on beş satırın altında elle girmek genellikle daha hızlıdır. Asıl kazanç uzun listelerdedir; satır sayısı arttıkça elle girişin hem süresi hem hata olasılığı doğrusal olmayan biçimde büyür.