Business Central, entegrasyon kurallarını rakamlarıyla birlikte yayımlamış nadir ürünlerden biri. Bu, planlamayı tahminden çıkarıp hesaba dönüştürüyor — biz de kapasiteyi baştan hesaplayarak yazıyoruz.
Business Central iki kurulum biçiminde yaşar: çevrim içi sürümde veritabanına erişim yoktur (teknik tavan ortam başına 3 TB; lisansla gelen depolama kapasitesi ayrıca hesaplanır); yerinde kurulumda SQL Server kullanılır.
Microsoft, SQL Server nesneleriyle doğrudan entegre olmayı “tavsiye edilmez, hatta desteklenmez” ifadesiyle açıkça dışarıda bırakır. Gerekçesi somut: yükseltme ve uzantı senkronizasyonu bozulabilir.
Önerilen yol API v2.0’dır (OData v4). OData ve SOAP servisleri de bulunur; ancak Microsoft SOAP verimini düşüreceğini ve ileride kullanımdan kaldıracağını yazmıştır.
Kimlik doğrulama için OAuth 2.0 ve Microsoft Entra ID önerilir. Ekim 2022’den itibaren web servis erişim anahtarları çevrim içi tarafta kullanımdan kaldırılmış ve desteklenmemektedir.
İstek limitleri rakamlarıyla yayımlanmıştır: kullanıcı başına 5 dakikalık pencerede 6.000 istek (Microsoft güncel belge). Eski ortam bazlı 300/600 istek/dakika değeri artık geçerli değil; Microsoft sınırı kullanıcı başına tanımlıyor.
Ayrıca en fazla 5 eşzamanlı istek, 8 dakikalık işlem zaman aşımı, sayfa başına en fazla 20.000 kayıt ve en fazla 200 webhook aboneliği sınırı vardır.
Çevrim içi mi, yerinde mi? Cevap entegrasyonun tamamını değiştiriyor
Business Central entegrasyonlarında ilk ayrım modül değil, kurulum biçimi. Çevrim içi sürümde ürün Microsoft’un bulutunda çalışır ve müşterinin veritabanına erişimi yoktur; ayrıca ortam başına toplam veri boyutu için 3 TB’lık teknik bir tavan tanımlıdır; lisansla gelen depolama kapasitesi bu tavandan ayrı hesaplanır. Yerinde kurulumda ise ürün SQL Server üzerinde çalışır ve sunucu tarafında Named Pipes ile TCP/IP protokollerinin etkin olması gerekir.
Bu ayrım, entegrasyonun yalnızca bağlantı biçimini değil, sürüm stratejisini ve operasyon modelini de belirliyor. Çevrim içi tarafta güncelleme takvimi Microsoft’un elinde; yerinde kurulumda ise yükseltme kararı sizde ama sorumluluk da sizde. Birinde entegrasyonu değişime dayanıklı yazmak zorundasınız, diğerinde yükseltme öncesi regresyon turu planlamak.
Buna karşılık iyi haber şu: API yüzeyi tarafında ikisi büyük ölçüde aynı dili konuşuyor. Yani doğru kurulmuş bir entegrasyonun iş mantığı, kurulum biçimi değişse bile büyük ölçüde korunabiliyor. Bunun şartı, çağrı katmanının iş kurallarından ayrılmış olması — bunu tasarımın en başında yapıyoruz, sonradan eklemek kolay olmuyor.
Business Central’da kurulum biçimine göre entegrasyon tablosu. Kurulum topolojisi, sürüm ve ortam sayısı proje başında müşteri kurulumunda teyit edilir.
Başlık
Çevrim içi
Yerinde kurulum
Veritabanı erişimi
Yok — müşterinin veritabanına erişimi bulunmaz
SQL Server; Named Pipes ve TCP/IP protokolleri etkin olmalı
Veri boyutu sınırı
Teknik tavan ortam başına 3 TB; lisanslı depolama kapasitesi ayrıca hesaplanır
Kendi altyapınızın kapasitesine bağlı
Kimlik doğrulama
OAuth 2.0 / Microsoft Entra ID; erişim anahtarları desteklenmiyor
OAuth önerilir; erişim anahtarları bir süre daha kullanılabilir
Güncelleme takvimi
Microsoft’un takvimine göre gelir
Yükseltme kararı ve sorumluluğu sizde
Önerilen arayüz
API v2.0 (OData v4)
API v2.0 (OData v4)
Microsoft’un kendi cümlesi: mümkün ama desteklenmiyor
Yerinde kurulumda SQL Server erişilebilir durumda olduğu için “sunucuyu atlayıp doğrudan veritabanına bağlanalım” fikri sık gündeme geliyor. Microsoft bu konuda yorum bırakmamış: SQL Server nesneleriyle doğrudan, Business Central Server’ı atlayarak entegre olmanın mümkün olduğunu, ancak tavsiye edilmediğini, hatta desteklenmediğini yazıyor.
Gerekçe de soyut değil, iki somut sonuç üzerinden anlatılıyor. Birincisi: Business Central Server’ın oluşturduğu SQL nesnelerini doğrudan değiştirmek, yükseltme sürecini ve uygulama/uzantı senkronizasyonunu bozabilir. İkincisi: veritabanına doğrudan tetikleyici ya da saklı yordam eklemek hem yükseltme ve senkronizasyonu bozabilir, hem de Business Central senkronizasyonu tablo şemasını değiştirdiğinde o nesnelere bağlı entegrasyonları kırar.
Bu ikinci maddenin altını çizmek gerekiyor, çünkü Business Central’ı diğer ERP’lerden ayıran nokta burada. Bu üründe şema, yalnızca sürüm yükseltmesiyle değil, uzantı senkronizasyonuyla da değişebiliyor. Yani bir uzantı kurulduğunda veya güncellendiğinde tablo yapısı değişebilir ve doğrudan veritabanına bağlanmış bir entegrasyon, hiç kimse “yükseltme yaptık” demeden çalışmayı bırakabilir.
Okuma — yerinde kurulumda bile disiplinli davranıyoruz
Yerinde kurulumda okuma için doğrudan veritabanına bağlanmak teknik olarak mümkün. Ama şema değişikliği riski uzantı senkronizasyonu üzerinden de geldiği için, bu yolu ancak sınırlı ve bilinçli durumlarda kullanıyoruz.
Ağır ve tekrarlayan raporlama ihtiyaçlarında tercihimiz, veriyi API’den belirli aralıklarla çekip kendi veritabanımızda güncel tutulan bir rapor katmanına yazmak — hem şema bağımlılığı azalır hem ERP kullanıcılarının performansı korunur
Doğrudan okuma yapılacaksa kullanılan tablo ve alanlar tek bir yerde tanımlanır; kod içine dağılmış sorgular şema değişiminde tek tek avlanamaz
Şirket ve ortam bağlamı her sorguda açıkça belirtilir; bağlam hatası hata vermez, sessizce yanlış rapor üretir
Çevrim içi kurulumda bu tartışma zaten yok — veritabanı erişimi bulunmadığı için tüm okuma API üzerinden yapılır
Yazma — istisnasız API üzerinden
Yazma tarafında tercih hakkı kullanmıyoruz: kayıt oluşturma ve güncelleme işlemleri istisnasız API üzerinden yapılır. Bu yoldan geçen her işlemde Business Central’ın kendi iş mantığı devreye girer — alan doğrulamaları, ilişkili kayıtların tutarlılığı, numaralandırma serileri ve muhasebe bağlantıları. Hata varsa anlamlı bir yanıt döner ve veri bozulmaz.
Doğrudan yazmanın buradaki maliyeti, diğer ürünlerdekinden bir kademe daha yüksek. Çünkü mesele sadece iş mantığının atlanması değil; veritabanına eklenen kendi nesnelerinizin yükseltme ve uzantı senkronizasyonunu bozabilmesi. Yani hasar yalnızca sizin entegrasyonunuzda kalmayabilir, ERP’nin kendi bakım süreçlerine sıçrayabilir.
Bir müşteri hız gerekçesiyle doğrudan yazmayı önerdiğinde bunu reddediyoruz. Gerekçemiz bir tercih beyanı değil, üreticinin yazılı ifadesi: bu kullanım desteklenmiyor. Desteklenmeyen bir yola girmek, ileride yaşanacak her sorunda elinizi zayıflatır.
API v2.0, OData ve SOAP: üçü de var, biri öneriliyor
Business Central tarafında dışarıya açılan birden fazla yüzey var ve hangisini seçtiğiniz entegrasyonun ömrünü doğrudan etkiliyor. Bizim varsayılanımız API v2.0 — OData v4 üzerine kurulu, sürümlü ve Microsoft’un önerdiği yüzey. Çevrim içi tarafta üretim ortamının ortak uç noktası https://api.businesscentral.dynamics.com/v2.0/production/api/v2.0 kalıbını izliyor.
Yanında OData web servisleri ve SOAP web servisleri de duruyor. SOAP tarafı için Microsoft açık bir uyarı yazmış: bu yüzeyin verimini düşüreceğini ve ileride kullanımdan kaldıracağını belirtiyor. Yani SOAP üzerine kurulan yeni bir entegrasyon, doğduğu gün bir son kullanma tarihiyle doğuyor. Elinizde SOAP üzerinden çalışan eski bir entegrasyon varsa bu acil durum değil ama takvim kalemi — geçişi baskı altında değil, kendi planınızla yapmak çok daha ucuz.
Seçim sadece “hangisi modern” meselesi de değil. API v2.0 sürümlü bir yüzey olduğu için değişiklikler yönetilen bir şekilde geliyor; OData web servisleri ise doğrudan sayfa nesnelerine bağlı olduğu için o sayfanın değişmesinden etkilenebiliyor. İhtiyacınız standart API’nin kapsamadığı bir alansa, doğru çözüm SOAP’a dönmek değil, özel API sayfası tanımlamak oluyor — bu, uygulama ortağınızla birlikte yürütülen bir iş.
Kimlik doğrulama: erişim anahtarları dönemi çevrim içi tarafta kapandı
Business Central’da önerilen kimlik doğrulama yöntemi OAuth 2.0 ve Microsoft Entra ID. Bu bir tercih önerisi değil, çevrim içi tarafta fiilî zorunluluk: Ekim 2022’den itibaren web servis erişim anahtarları, yani temel kimlik doğrulama yöntemi, çevrim içi Business Central’da kullanımdan kaldırıldı ve desteklenmiyor. Yerinde kurulumlarda bir süre daha kullanılabiliyor.
Bu, eski entegrasyonları olan firmalar için somut bir kontrol maddesi. Yıllar önce yazılmış ve hâlâ çalışan bir entegrasyon varsa, hangi yöntemle kimlik doğruladığını bilmek gerekiyor. Yerinde kurulumdan çevrim içine geçiş planlıyorsanız bu madde geçişin ilk sıralarında yer almalı — sonradan fark edilen bir kimlik doğrulama bağımlılığı, göç planının en can sıkıcı sürprizi oluyor.
Sık sorulan bir soruya da burada cevap verelim: uygulama kullanıcısı, yani hizmet sorumlusu ile normal bir kullanıcı arasında operasyonel limitler açısından bir fark yok. İkisi de aynı istek limitlerine tabi. Bu, kapasite planlamasını doğrudan etkileyen bir bilgi ve bir sonraki bölümün konusu.
Kimlik bilgileri ve gizli anahtarlar her koşulda sunucu tarafında, erişimi sınırlı bir sır yönetimi katmanında tutulur. Kod deposuna, düz metin yapılandırma dosyasına veya istemci tarafına yazılmaz. Bu, tercih değil asgari koşul.
Limitler yayımlanmış: kapasiteyi tahmin etmiyoruz, hesaplıyoruz
Bu bölüm, Business Central’ı diğer ERP’lerden ayıran yer. Çoğu üründe “saniyede kaç istek atabiliriz” sorusunun cevabını yük testiyle bulmak zorunda kalıyoruz. Microsoft burada sayıları yayımlamış — bu da kapasite planlamasını tahminden çıkarıp hesaba dönüştürüyor.
Aşağıdaki tablo, entegrasyon tasarımını doğrudan etkileyen limitleri ve aşıldığında dönen yanıtı bir arada gösteriyor. Bunlar bizim ölçtüğümüz değerler değil, üreticinin yayımladığı değerler; sizin kurulumunuzda geçerli olan ortam tipine göre değişen satırları keşifte birlikte netleştiriyoruz.
Business Central’da yayımlanmış istek ve kapasite limitleri. Ortam tipine (sandbox / production) göre değişen satırlar keşifte netleştirilir.
Eski belgelerdeki sandbox 300 / production 600 istek/dakika değeri artık geçerli değil; güncel sınır kullanıcı başına tanımlı
—
SOAP hızı — kullanıcı başına
5 dakikada 6.000 istek
429
Eşzamanlı istek
En fazla 5 — fazlası kuyruğa alınır
8 dakika sonra 503
Bağlantı sayısı
En fazla 100
429
Kuyruk boyutu
En fazla 95
429
İşlem zaman aşımı
8 dakika
408
İstek yürütme süresi
10 dakika
504
Sayfa boyutu
En fazla 20.000 kayıt
413
Toplu istek işlem sayısı
En fazla 100 işlem
—
İstek gövdesi
En fazla 350 MB
—
Webhook aboneliği
En fazla 200
—
Webhook: el sıkışmasını atlarsanız abonelik hiç kurulmaz
Business Central, bildirim tarafını bu listedeki ürünler arasında en net tanımlayan ürün. Abonelik, ortamın API adresine yapılan bir istekle oluşturuluyor; istek gövdesinde bildirim adresi, izlenecek kaynak ve entegrasyonun kendi tanımladığı bir durum bilgisi taşınıyor.
Kritik nokta el sıkışma adımı. Abonelik oluşturulurken Business Central, verdiğiniz bildirim adresine bir doğrulama jetonuyla istek atıyor ve abone tarafın bu jetonu yanıt gövdesinde aynen geri döndürüp başarılı bir yanıt vermesi gerekiyor. Bu adım tamamlanmazsa abonelik kurulmuyor. Webhook entegrasyonlarının klasik hatası tam olarak burada: uç nokta yazılıyor, jeton yok sayılıyor ve “webhook çalışmıyor” diye günlerce başka yerde sorun aranıyor.
İkinci kritik nokta aboneliğin ömrü. Abonelik süresiz değil; yenilenmediği takdirde varsayılan olarak üç gün sonra düşüyor. Yani bir kez kurup unutulacak bir yapı değil — entegrasyonun kendi aboneliklerini takip edip zamanında yenilemesi gerekiyor. Bunu bir arka plan görevi olarak kurguluyor ve yenileme hatalarını izleme paneline bağlıyoruz. Yenilenmeyen bir abonelik hata üretmez; sadece bildirimler sessizce gelmemeye başlar, ki bu çok daha tehlikelidir.
Üçüncüsü kapasite: bir ortamda en fazla 200 webhook aboneliği bulunabiliyor. Çok sayıda kaynağı ayrı ayrı izlemeyi planlıyorsanız bu sınırı tasarım aşamasında hesaba katmak gerekiyor.
Son olarak güvenlik: bildirim adresi internete açık olduğu için gelen isteğin gerçekten beklenen kaynaktan geldiğini doğrulamak gerekiyor. Abonelikte tanımlanan durum bilgisi bunun için var ve entegrasyon tarafında doğrulanmadan hiçbir işlem başlatılmıyor.
Değişim yalnızca yükseltmeden gelmiyor
Business Central’da sürüm riski, alışılmış ERP mantığından farklı çalışıyor ve bu farkı kavramamak tipik bir kopma sebebi.
Klasik ERP dünyasında şema bir yükseltmeyle değişir; tarih bellidir, hazırlık yapılır. Business Central’da ise şema, uzantı senkronizasyonuyla da değişebiliyor. Bir uzantı kurulduğunda ya da güncellendiğinde tablo yapısı değişebilir ve buna bağlı entegrasyonlar kırılabilir. Yani “biz yükseltme yapmadık” cümlesi, entegrasyonun neden bozulduğunu açıklamaya yetmiyor. Microsoft’un doğrudan veritabanı entegrasyonunu desteklememesinin en somut gerekçelerinden biri de bu.
Çevrim içi tarafta ikinci bir katman daha var: güncelleme takvimi Microsoft’un elinde ve siz onaylamıyorsunuz. Bu, entegrasyonun “o gün müsait değilim” deme lüksünün olmaması demek. Bu yüzden dayanıklılığı ilk günden koda yazıyoruz — beklenmeyen alanlar yok sayılıyor, eksik alanlar patlamaya değil kayda dönüşüyor, başarısız çağrılar kuyrukta bekliyor ve kademeli beklemeyle yeniden deneniyor.
Bunlara karşı yaklaşımımız üç maddeli. Birincisi: API v2.0 gibi sürümlü bir yüzeye bağlanmak ve sayfa nesnelerine doğrudan bağımlılıktan kaçınmak. İkincisi: uç nokta adresi, sürüm, ortam adı ve kimlik bilgileri gibi değişmeye açık her şeyi yapılandırma katmanına almak, koda gömmemek. Üçüncüsü: uzantı kurulumu ve güncellemesi gibi olayları da bir değişim tetikleyicisi olarak kabul edip, bu durumlarda regresyon turu çalıştırmak.
Teslimden sonraki 15 gün hata düzeltme ücretsizdir. Uzantı takibi, abonelik yenileme sağlığı ve yükseltme öncesi regresyon turu ise tek seferlik değil sürekli işler; bunları bakım hizmeti olarak ayrı fiyatlıyor ve sözleşmede ayrı satırda gösteriyoruz.
Uygulama ortağınızın yerine değil, onun kapsamı dışındaki işte
Business Central kullanan firmalarda tablo genellikle şöyle: bir Microsoft uygulama ortağı kurulumu yapmış, ürün tarafındaki destek yürüyor ve muhasebe ile finans süreçleri oturmuş durumda. Sorun ürünün kendisinde değil — sahada, depoda, üretimde ya da bayi kanalında standart ürünün kapsamadığı bir ihtiyaç var ve bunun için özel geliştirme gerekiyor.
Biz tam olarak o noktada masadayız ve konumumuzu baştan net söylüyoruz: Microsoft iş ortağı değiliz, bayisi ya da çözüm ortağı değiliz. Lisans, abonelik, ortam yönetimi, uzantı yayını ve ürün danışmanlığı uygulama ortağınızın alanı ve o alana girmiyoruz. Yaptığımız iş, ürünün belgelenmiş API’si üzerinden yazılan entegrasyon ve dış uygulama geliştirmesi ile onun bakımı.
Bu netlik, kurumsal KOBİ segmentinde bir avantaj: ürün desteğiniz bozulmadan özel bir ihtiyacı karşılıyorsunuz, uygulama ortağınız kendi kapsamı dışındaki bir talebi geri çevirmek zorunda kalmıyor ve biz ürün tarafında taahhüt vermediğimiz için yalnızca gerçekten yapabileceğimiz işi üstleniyoruz.
Hangi uç noktaların, hangi kaynaklar üzerinde ve hangi sıklıkta kullanıldığı yazılı olarak paylaşılır; uygulama ortağınız kapasite etkisini kendi tarafında görebilir
Kapasite planı limit tablosuna göre yapılır ve teslim dosyasında raporlanır — beklenen istek hacmi tahmin değil hesap olarak sunulur
Kendi geliştirme ekibi olmayan uygulama ortakları için taşeron geliştirme modelinde çalışırız; müşteri ilişkisi ve ticari muhatap sizde kalır
İstenirse beyaz etiketli çalışırız; müşteriye karşı görünen taraf siz olursunuz
Kodun dokümantasyonu, yapılandırma haritası ve abonelik envanteri teslim edilir; iş birliği sonlansa bile elinizde devredilebilir bir varlık kalır
Sahada nasıl görünüyor?
Üretim sahasından gerçek zamanlı iş emri geri bildirimi
Sahadaki terminalden kapatılan iş emri, mamul girişi ve sarf olarak API v2.0 üzerinden Business Central’a yazılıyor. Kapasite planı limit tablosuna göre yapıldığı için vardiya değişimindeki yoğunlukta istekler kuyruğa alınıyor, kaybolmuyor.
Sipariş değişikliğinde anında tetiklenen saha akışı
Sipariş kaynağına webhook aboneliği kuruluyor; değişiklik olduğunda saha uygulaması bildirimle uyanıyor ve yalnızca ilgili kaydı çekiyor. Abonelik yenileme arka plan görevi olarak çalıştığı için üç günlük ömür sessizce dolup bildirimleri kesmiyor.
E-ticaret ve bayi kanalının tek stok üzerinden yönetilmesi
Farklı kanallardan gelen siparişler Business Central’a API üzerinden düşüyor, stok bakiyesi tek yerden yönetiliyor. Yazma işlemleri API üzerinden yapıldığı için ürünün kendi doğrulamaları devrede kalıyor ve tutarsız sipariş en baştan reddediliyor.
Yönetim panelinde canlı operasyon görünümü
Stok, sipariş ve üretim verisi tek panelde birleşiyor. Sürekli tekrarlanan sorgular periyodik olarak güncellenen ayrı bir rapor veritabanından beslendiği için hem panel hızlı açılıyor hem kullanıcı başına düşen istek limiti gereksiz yere tüketilmiyor.
Eski entegrasyonun kimlik doğrulama ve yüzey tespiti
Yıllardır çalışan bir entegrasyonun hangi yüzey üzerinden konuştuğu ve hangi kimlik doğrulama yöntemini kullandığı çıkarılıyor. SOAP bağımlılığı veya erişim anahtarı kullanımı varsa geçiş planı, baskı altında değil kendi takviminizle yapılabilecek bir yol haritası olarak teslim ediliyor.
Referans iş birliği
Entegrasyon tarafında yeni bir hat kuruyoruz ve ilk projeleri referans iş birliğiyle yürütüyoruz: projenin sonunda ölçülebilir sonuçları vaka çalışması olarak yayımlamamıza ve sizi referans göstermemize izin veren firmalara özel koşul uyguluyoruz. Karşılığında alacağınız şey standart bir paket değil, süreçlerinize göre yazılmış bir sistem — ve geliştiren ekibe doğrudan erişim.
Sık sorulan sorular
Microsoft iş ortağı mısınız?
Hayır. Microsoft iş ortağı programında kayıtlı değiliz; bayilik ya da çözüm ortaklığı sıfatımız da bulunmuyor. Bağımsız bir yazılım geliştiricisiyiz. Lisans, abonelik, ortam yönetimi, uzantı yayını ve ürün danışmanlığı mevcut uygulama ortağınızın alanı ve o alana girmiyoruz. Yaptığımız iş, ürünün belgelenmiş API’si üzerinden entegrasyon ve dış uygulama geliştirmek. Bu segmentte uygulama ortağının devrede olmasını normal kabul ediyoruz; onun yerine değil, kapsamı dışındaki işte çalışıyoruz. Kendi geliştirme ekibi olmayan uygulama ortaklarıyla da taşeron geliştirme modelinde çalışıyoruz.
Doğrudan SQL Server’a bağlanabilir misiniz?
Yerinde kurulumda teknik olarak mümkün, ama Microsoft bu konuda net: SQL Server nesneleriyle doğrudan, Business Central Server’ı atlayarak entegre olmak tavsiye edilmiyor, hatta desteklenmiyor. Gerekçe somut — sunucunun oluşturduğu SQL nesnelerini doğrudan değiştirmek yükseltme ve uzantı senkronizasyonunu bozabilir; veritabanına doğrudan tetikleyici veya saklı yordam eklemek ise ayrıca, senkronizasyon tablo şemasını değiştirdiğinde o nesnelere bağlı entegrasyonları kırar. Çevrim içi tarafta ise bu tartışma zaten yok: müşterinin veritabanına erişimi bulunmuyor. Biz yazma işlemlerini istisnasız API üzerinden yapıyoruz.
Saniyede kaç istek atabiliriz?
Bu soruya, diğer ERP sayfalarımızın aksine, rakamla cevap verebiliyoruz çünkü Microsoft limitleri yayımlamış. Kullanıcı başına 5 dakikalık kayan pencerede 6.000 istek (Microsoft güncel belge); aşılırsa 429 dönüyor. Eski belgelerdeki ortam bazlı sandbox 300 / production 600 istek/dakika değeri artık geçerli değil — Microsoft sınırı kullanıcı başına tanımlıyor. Eşzamanlı istek sayısı en fazla 5; fazlası kuyruğa alınıyor ve 8 dakika sonra 503 dönüyor. İşlem zaman aşımı 8 dakika (408), istek yürütme süresi 10 dakika (504), sayfa boyutu en fazla 20.000 kayıt (413). Önemli bir ayrıntı: hizmet sorumlusu ile normal kullanıcı arasında operasyonel limit farkı yok. Microsoft verimi artırmak için iş yükünü birden fazla kullanıcı veya hizmet sorumlusu arasında sırayla dağıtmayı resmî olarak öneriyor; kapasite gerektiren projelerde bunu baştan kuruyoruz.
Webhook kurduk ama bildirim gelmiyor. Neden?
Bu şikâyetin arkasında genellikle iki sebepten biri çıkıyor. Birincisi el sıkışma adımı: abonelik oluşturulurken Business Central, verdiğiniz bildirim adresine bir doğrulama jetonuyla istek atar ve abone tarafın bu jetonu yanıt gövdesinde aynen geri döndürüp başarılı yanıt vermesi gerekir. Bu adım tamamlanmazsa abonelik hiç kurulmaz. İkincisi aboneliğin ömrü: abonelik yenilenmediği takdirde varsayılan olarak üç gün sonra düşer ve bunu yaparken hata üretmez — bildirimler sadece sessizce gelmemeye başlar. Bu yüzden yenilemeyi arka plan görevi olarak kurguluyor ve yenileme hatalarını izleme paneline bağlıyoruz. Bir de kapasite sınırı var: bir ortamda en fazla 200 abonelik bulunabiliyor.
Eski entegrasyonumuz temel kimlik doğrulama kullanıyor. Sorun olur mu?
Çevrim içi tarafta olur. Ekim 2022’den itibaren web servis erişim anahtarları, yani temel kimlik doğrulama, çevrim içi Business Central’da kullanımdan kaldırıldı ve desteklenmiyor; önerilen yöntem OAuth 2.0 ve Microsoft Entra ID. Yerinde kurulumlarda bir süre daha kullanılabiliyor. Yerinde kurulumdan çevrim içine geçiş planlıyorsanız bu madde geçiş listenizin ilk sıralarında olmalı — sonradan fark edilen bir kimlik doğrulama bağımlılığı, göç planının en can sıkıcı sürprizi oluyor. Mevcut entegrasyonunuzun hangi yöntemi kullandığını çıkarmak tek başına da alınabilecek bir iş; entegrasyonu biz yazmamış olsak da yapıyoruz.
SOAP servislerini kullanmaya devam edebilir miyiz?
Şu an çalışıyor, ama üzerine yeni iş kurmayı önermiyoruz. Microsoft SOAP yüzeyinin verimini düşüreceğini ve ileride kullanımdan kaldıracağını yazmış durumda — yani bugün SOAP üzerine yazılan bir entegrasyon, doğduğu gün bir son kullanma tarihiyle doğuyor. Bizim varsayılanımız API v2.0, yani OData v4 üzerine kurulu sürümlü yüzey. Elinizde SOAP üzerinden çalışan eski bir entegrasyon varsa bu acil durum değil ama takvim kalemi. Standart API ihtiyacınızı karşılamıyorsa doğru çözüm SOAP’a dönmek değil, özel API sayfası tanımlamak — bu, uygulama ortağınızla birlikte yürütülen bir iş ve kapsamı keşifte netleştiriyoruz.
Yükseltme yapmadığımız hâlde entegrasyon neden bozuldu?
Business Central’da şema yalnızca sürüm yükseltmesiyle değişmez; uzantı senkronizasyonuyla da değişebilir. Bir uzantı kurulduğunda ya da güncellendiğinde tablo yapısı değişebilir ve buna doğrudan bağlanmış entegrasyonlar kırılabilir. Microsoft’un doğrudan veritabanı entegrasyonunu desteklememesinin en somut gerekçelerinden biri tam olarak budur. Çevrim içi tarafta ayrıca güncelleme takvimi Microsoft’un elinde, yani entegrasyonun “o gün müsait değilim” deme lüksü yok. Bizim yaklaşımımız üç maddeli: sürümlü API yüzeyine bağlanmak ve sayfa nesnelerine doğrudan bağımlılıktan kaçınmak; uç nokta, sürüm, ortam adı ve kimlik bilgilerini yapılandırma katmanında tutmak; uzantı kurulum ve güncellemelerini de değişim tetikleyicisi sayıp regresyon turu çalıştırmak.
Ankara’dayız; sahada bulunmanız gerekir mi?
Business Central için çoğu zaman gerekmez. Çevrim içi kurulumda entegrasyon tamamen API üzerinden yürür, yerinde kurulumda da bağlantı uzaktan kurulabilir; keşif görüşmesi ve geliştirme Türkiye’nin her ilinden online ilerler. Yerinde olduğumuz kısım saha: Mersin, Tarsus, Adana, Hatay, İskenderun ve Osmaniye’de üretim terminali ya da depo kurulumunu yerinde yapıyoruz. Diğer illerde saha montajı gerekiyorsa seyahat takvime baştan yazılır; uygulama ortağınızla koordinasyon ise zaten uzaktan yürüyen bir iş.
Hangi programı kullandığınızı, sahada hangi verinin elle girildiğini ve neyi otomatikleştirmek istediğinizi anlatın. İlk görüşmede teknik olarak mümkün olup olmadığını ve hangi yöntemle yapılacağını netleştiriyoruz.
Bu sayfada adı geçen ürün ve markalar ilgili firmaların tescilli ticari markalarıdır. D'Cloud Software bağımsız bir yazılım geliştiricisidir; anılan firmaların yetkili bayisi, çözüm ortağı veya iş ortağı değildir. Entegrasyon hizmeti, ürünlerin kendi belgelenmiş arayüzleri ve veri erişim yöntemleri üzerinden sunulur.