Bir şirket SAP kullanıyorsa ürün, fiyat, stok, müşteri ve sipariş bilgisinin "doğrusu" SAP'dedir. E-ticaret sitesi ya da bayi portalı açıldığında asıl iş, bu doğruyu web'e taşımak ve web'de oluşan siparişi SAP'ye kayıpsız geri götürmektir. Biz bu işle, doğrudan satış modeliyle çalışan bir e-ticaret sitesini SAP'ye bağlarken tanıştık: SAP tarafında ABAP ile yazılan API uçları sunuluyordu, site bu uçlarla konuşuyordu. Bu yazıda o projeden öğrendiklerimizi, SAP'ye bağlanmanın yollarını ve 2027'de bakımı sona eren SAP ECC'nin entegrasyon kararlarını nasıl etkilediğini anlattık.
Hangi veriler, hangi yönde akar?
| Veri | Yön | SAP tarafında | Not |
|---|---|---|---|
| Ürün | SAP → site | Malzeme ana verisi | Ürün adı ve teknik bilgiler SAP'den gelir; pazarlama metni ve görseller çoğunlukla sitede yönetilir. |
| Fiyat | SAP → site | Fiyat koşulları | Müşteri grubuna, bayi seviyesine veya kampanyaya göre değişen fiyatlar burada tanımlıdır. |
| Stok | SAP → site | Kullanılabilirlik kontrolü (ATP) | Listelemede periyodik özet yeterli; sepette ve siparişte anlık kontrol gerekebilir. |
| Müşteri / bayi | İki yönlü | Müşteri ana verisi; S/4HANA'da iş ortağı (Business Partner) | Sitede açılan hesabın SAP'deki karşılığı ve eşleme anahtarı baştan belirlenmeli. |
| Sipariş | Site → SAP | Satış siparişi | Ödeme onayından sonra gönderilir; SAP'nin verdiği sipariş numarası siteye geri yazılır. |
| Durum ve fatura | SAP → site | Teslimat ve fatura belgeleri | Müşterinin "siparişim nerede?" sorusunun cevabı buradan gelir. |
SAP'ye bağlanmanın yolları
| Yol | Ne? | Ne zaman tercih edilir? |
|---|---|---|
| RFC / BAPI | SAP'deki fonksiyon modüllerinin uzaktan çağrılması. BAPI'ler, iş nesneleri için SAP'nin önceden tanımladığı RFC arayüzleridir. | ECC veya kurum içi S/4HANA'da, bir ara katmandan senkron işlem gerektiğinde. |
| IDoc (ALE/EDI) | SAP'nin standart, asenkron belge değişim formatı; her belgenin durumu izlenebilir. | Toplu ana veri dağıtımı ve kuyrukla gönderilmesi uygun belgeler. |
| OData (SAP Gateway / RAP) | SAP'nin REST tabanlı standart API protokolü. S/4HANA'da OData V4 için RAP (ABAP RESTful Application Programming Model) önerilen geliştirme yoludur. | Modern web ve mobil istemciler, kayıt okuma-yazma ağırlıklı ihtiyaçlar. |
| ABAP ile özel REST uçları | SAP'nin HTTP altyapısı (ICF) üzerinde ABAP ile yazılan, istenen JSON'u dönen uçlar; servis SICF'te tanımlanır. | Hazır bir API'nin karşılamadığı, siteye özel veri ihtiyacı olduğunda. |
| SOAP web servisleri | WSDL sözleşmesiyle tanımlı servisler; SOA Manager'da yapılandırılır. | Karşı sistem SOAP bekliyorsa veya kurumsal standart buysa. |
| SAP Integration Suite | SAP'nin bulut entegrasyon platformu: eşleme, dönüşüm, API yönetimi ve izleme tek yerde. | Birden çok sistemin konuştuğu, merkezi izleme ve API güvenliğinin önemli olduğu yapılar. |
Projede yaptığımız: ABAP ile sunulan API uçları
Bağlandığımız yapıda SAP ekibi, sitenin ihtiyacına göre tasarlanmış uçları ABAP ile yazıyor, site de bu uçları çağırıyordu. Bu yaklaşımın güçlü yanı, sitenin SAP'nin iç yapısını hiç bilmemesi: site yalnızca üzerinde anlaşılmış alanları gönderiyor ve alıyor, SAP içinde hangi tablonun ya da fonksiyonun kullanıldığı ABAP tarafında kalıyor. Bu işin bize öğrettikleri:
- Önce sözleşme, sonra kod. Her uç için alan adları, zorunlu alanlar, hata kodları ve örnek istek-cevaplar yazılı olmalı. ABAP ve web ekipleri aynı belgeye bakarak paralel çalışabilir.
- SAP'yi ziyaretçi trafiğinden koruyun. Ürün listesi her sayfa açılışında SAP'ye sorulmamalı. Ürün, fiyat ve stok özetini ara katmanda önbelleğe alıp periyodik güncellemek, hem siteyi hızlandırır hem SAP sunucusunu rahatlatır.
- Sipariş bir kez gitmeli. Ağ kesintisinde site siparişi yeniden dener. Her siparişe sitenin verdiği benzersiz bir numara eşlik ederse SAP tarafı aynı siparişi ikinci kez oluşturmaz.
- SAP kapalıyken de satış durmasın. Bakım penceresinde veya geçici bir sorunda siparişler kuyruğa alınıp SAP açılınca sırayla gönderilmeli; müşteri bunu fark etmemeli.
- Uçlar korunmalı. Kimlik doğrulama, yalnız ara katman sunucusundan erişim ve her çağrının kaydı, SAP'nin internete açılan kapısı için asgari şarttır.
- Mutabakat yapın. Sitedeki siparişlerle SAP'deki siparişlerin günlük karşılaştırılması, sessizce kaybolan kayıtları müşteriden önce yakalar.
2027 eşiği: SAP ECC'nin bakım takvimi
Entegrasyon kararlarını etkileyen en önemli tarih şu: SAP'nin resmi bakım stratejisine göre SAP ERP 6.0 (ECC) dahil SAP Business Suite 7 ürünlerinin standart bakımı 2027 sonunda bitiyor. Ek ücretli uzatılmış bakım 2028 başından 2030 sonuna kadar alınabiliyor. Uzatılmış bakım almayan sistemler müşteriye özel bakım modeline geçiyor. SAP'nin bulut yolculuğunu seçen ve sistemini 2030 sonundan önce SAP ERP, private edition'a taşıyan müşteriler içinse 2031–2033 arasını kapsayan ücretli bir geçiş seçeneği tanımlandı.
S/4HANA tarafında ise SAP, 2023 sürümünden itibaren iki yıllık sürüm döngüsüne geçti ve her sürüme yedi yıl standart bakım veriyor; en az bir S/4HANA sürümünün 2040'a kadar bakımda olacağını taahhüt ediyor.
E-ticaret entegrasyonu açısından anlamı şu: bugün ECC'ye bağlanan bir site, birkaç yıl içinde S/4HANA'ya bağlanmak zorunda kalabilir. Bu yüzden site ile SAP arasına kendi sözleşmenizi tanımlayan bir ara katman koymak, SAP değiştiğinde yalnız o katmanın değişmesini sağlar; site ve mobil uygulamalar etkilenmez.
S/4HANA ve "clean core": özel geliştirme nereye kadar?
SAP'nin S/4HANA için öne çıkardığı ilke "clean core": çekirdeği temiz, standart ve yükseltmeye dayanıklı tutmak, şirkete özel ihtiyaçları ise çekirdeği değiştirmeden karşılamak. Entegrasyonda bunun karşılığı, doğrudan tablo erişimi veya çekirdek değişikliği yerine SAP'nin yayımladığı (released) API'leri kullanmaktır. S/4HANA'da ürün, iş ortağı, satış siparişi, fiyat koşulu ve fatura için SAP'nin hazır OData servisleri bulunur; bunlar SAP Business Accelerator Hub'da listelenir.
- ECC veya kurum içi S/4HANA'da: ABAP ile yazılmış özel uçlar hâlâ pratik bir yol; ama uçların arkasında mümkün olduğunca SAP'nin standart fonksiyonlarını kullanmak, yükseltmede sürprizleri azaltır.
- S/4HANA Cloud'da: Geliştirme ABAP Cloud kurallarıyla, yalnız yayımlanmış API'ler üzerinden yapılır. Yeni bir projeye başlıyorsanız bu sınırları baştan tasarıma katmak gerekir.
SAP'nin kendi e-ticaret ürünü varken neden özel site?
SAP'nin kendi e-ticaret platformu SAP Commerce Cloud'dur (eski adıyla Hybris). Geniş ürün kataloğu, çok ülkeli satış ve SAP ekosistemiyle derin bütünleşme isteyen büyük yapılarda güçlü bir seçenektir. Öte yandan doğrudan satış, bayi ağı, prim-puan sistemi gibi işe özgü kuralları olan şirketlerde, bu kuralları rahatça taşıyan özel bir site ile SAP'yi iyi tasarlanmış bir entegrasyonla birleştirmek çoğu zaman daha hızlı ve ekonomik sonuç verir. Karar; ölçeğe, iş kurallarının ne kadar özel olduğuna ve şirket içindeki SAP yetkinliğine bağlıdır.
Sık yapılan hatalar
- Sitenin her sayfa açılışında SAP'ye doğrudan sorgu atması
- Müşteri ve ürün eşleme anahtarlarını baştan kararlaştırmamak; sonradan çift kayıt temizlemek
- Siparişin SAP'ye ulaştığını doğrulamadan "tamamlandı" saymak
- Fiyat hesabını sitede ayrıca kodlayıp SAP'deki fiyat koşullarıyla zamanla ayrışmasına izin vermek
- SAP bakım penceresini ve geçiş takvimini entegrasyon tasarımına katmamak
- Uç dokümantasyonunu yalnız ABAP geliştiricisinin aklında bırakmak
Sık sorulan sorular
E-ticaret sitesi SAP'ye nasıl bağlanır?
Başlıca yollar RFC/BAPI, IDoc, OData (SAP Gateway veya RAP), ABAP ile yazılmış özel REST uçları, SOAP web servisleri ve SAP Integration Suite'tir. Seçim; SAP sürümüne, verinin anlık mı toplu mu aktığına ve şirketteki SAP yetkinliğine göre yapılır.
ABAP ile API yazmak ne demek?
SAP'nin HTTP altyapısı (ICF) üzerinde ABAP diliyle, dış sistemin istediği veriyi JSON gibi bir formatta dönen uçlar yazmaktır. Böylece e-ticaret sitesi SAP'nin iç yapısını bilmeden, üzerinde anlaşılmış alanlarla SAP'den veri alır ve SAP'ye sipariş gönderir.
SAP ECC'nin bakımı ne zaman bitiyor?
SAP'nin bakım stratejisine göre SAP ERP 6.0 (ECC) dahil SAP Business Suite 7'nin standart bakımı 2027 sonunda bitiyor. Ek ücretli uzatılmış bakım 2028 başından 2030 sonuna kadar alınabiliyor; sonrasında müşteriye özel bakım modeli geçerli oluyor.
Stok bilgisi SAP'den anlık mı alınmalı?
Ürün listelemede periyodik güncellenen bir stok özeti genellikle yeterlidir ve SAP'yi ziyaretçi trafiğinden korur. Sepet ve sipariş adımında ise SAP'nin kullanılabilirlik kontrolüyle anlık doğrulama yapmak, satılmayan ürünün satılmasını önler.
S/4HANA'ya geçince mevcut entegrasyon bozulur mu?
Site doğrudan SAP'nin iç yapısına bağlıysa büyük olasılıkla değişiklik gerekir. Site ile SAP arasında kendi veri sözleşmesini tanımlayan bir ara katman varsa, geçişte yalnız bu katmanın SAP tarafı güncellenir; S/4HANA'da bunun için SAP'nin yayımladığı API'ler kullanılabilir.
SAP entegrasyonlu projenizi konuşalım
E-ticaret sitesi, bayi portalı veya mobil uygulamanızı SAP'ye bağlamak, mevcut entegrasyonunuzu S/4HANA geçişine hazırlamak ya da ara katmanı baştan kurmak için birlikte çalışabiliriz. Yaptığımız işler referanslar sayfamızda; web tarafındaki hizmetlerimiz web yazılım sayfasında.