SAP WhatsApp Entegrasyonu
SAP WhatsApp Entegrasyonu
SAP WhatsApp Entegrasyonu: Ödeme İşleminden Saniyeler Sonra Müşterinin Telefonunda
SAP S/4HANA kullanan çok mağazalı bir perakendeci, günde e-Arşiv faturaları düzenliyordu ve bunların çoğu müşteriye kullanabileceği bir biçimde ulaşmıyordu. Basılı kopyalar tezgahta kalıyordu. Kasada girilen e-posta adresleri geri dönüyordu. Müşteriler, garanti talepleri veya gider raporları için ihtiyaç duydukları kopyaları istemek üzere mağazaya geri dönüyorlardı.
Natura Systems, SAP ve e-Arşiv entegratörü işini bitirir bitirmez her faturayı müşterinin WhatsApp’ına gönderen bir SAP WhatsApp entegrasyonu geliştirdi. Müşteri, fatura numarası, tutarı ve tarihi içeren kısa, Meta onaylı bir mesaj ve resmi PDF’yi açan bir “Faturayı Görüntüle” düğmesi alıyor. SAP kayıt sistemi olarak kalıyor, özel bir .NET ara yazılımı mesajlaşma işini yapıyor ve her teslimat durumu SAP’ye geri yazılıyor.
SAP WhatsApp Entegrasyon Mimarisi
Tasarım, SAP Webkassa entegrasyonumuzla aynı prensibi izliyor: SAP ne olacağına karar veriyor ve ayrı bir .NET servisi dış dünyayla iletişimi sağlıyor. Bu, mesajlaşma yükünü SAP uygulama sunucularından uzak tutuyor ve SAP S/4HANA hiçbir zaman internete açık olmuyor.
POS satış işlemi, SAP SD'de bir fatura belgesi oluşturur. SAP, e-Arşiv faturasını GİB yetkili entegratörüne gönderir; entegratör faturayı imzalar, raporlar ve depolar, ardından ETTN'yi (faturanın benzersiz tanımlayıcısı) ve bir PDF referansını geri gönderir. B2B, B2C ve e-arşiv sistemleri üzerindeki çalışmalarımız, bu adımın perakendecinin mevcut e-fatura akışını olduğu gibi yeniden kullandığı anlamına gelir.
SAP, e-fatura durumu kesinleştiğinde, küçük bir özel kuyruk tablosuna "fatura hazır" kaydı yazar: müşteri adı, cep telefonu numarası, onay bayrağı, fatura belgesi numarası, brüt tutar, fatura tarihi ve ETTN. Ara katman yazılımı, ortama bağlı olarak, RFC özellikli bir fonksiyon modülü (SAP .NET Bağlayıcısı aracılığıyla) veya bir OData hizmeti aracılığıyla kuyruğu okur.
Mesaj asla yasal olarak henüz mevcut olmayan bir faturaya atıfta bulunmaz. Bu fatura, entegratörün e-Arşiv faturasını onaylamasının ardından gönderilir; bu da sürecin perakendecinin yasal ve vergi uyumluluğuyla uyumlu kalmasını sağlar.
İş kuralları SAP'de kalır. Hangi satış kanallarının, mağazaların veya müşteri gruplarının WhatsApp faturalarını alacağı, ara yazılımdaki kodla değil, SAP'deki yapılandırmayla kontrol edilir.
Ara katman yazılımı, SQL Server depolama alanına sahip bir ASP.NET Core hizmetidir. İlk günden itibaren üretim için tasarlanmıştır:
**NET Core API: SAP'den "fatura hazır" olaylarını ve Meta'dan durum web kancalarını alır ve izleme için sağlık kontrolleri sunar.
**SQL Server giden kutusu: Her fatura, faturalama belgesi numarasına göre anahtarlanmış tek bir satır haline gelir. Benzersiz bir anahtar, her gönderimi tekrarlanabilir kılar: SAP aynı olayı iki kez gönderirse, müşteri yine de tek bir mesaj alır.
**Hangfire arka plan çalışanları:** Bekleyen satırları alır, gönderir, hataları yeniden kuyruğa alır ve planlanmış mutabakat işlerini çalıştırır. Hangfire kontrol paneli, kuyruk derinliğini ve başarısız işleri bir bakışta gösterir.
**Polly dayanıklılık politikaları: Geçici hatalar ve API kısıtlaması için üstel geri çekilme, API kullanılamadığında devre kesici ve katı zaman aşımı süreleri sayesinde yavaş bir çağrı asla kuyruğu bloke etmez.
**Denetim günlüğü:Her istek, yanıt ve durum değişikliği, finans departmanına ihtiyaç duyduğu kanıt izini veren bir zaman damgasıyla birlikte saklanır.
Mesajlar, önceden onaylanmış Türkçe bir şablon olan "Faturanız Hazır" ("Faturanız hazır") kullanılarak Meta tarafından barındırılan WhatsApp Business Cloud API'si üzerinden gönderilir. Dört gövde alanı SAP verilerinden doldurulur ve URL düğmesi, fatura bağlantı hizmetine işaret eden dinamik bir sonek taşır. Rusça, Kazakça veya İngilizce tercih eden müşteriler için aynı şablon adı altında daha fazla dil sürümü kaydedilebilir.
Durum web kancaları (gönderildi, teslim edildi, okundu, başarısız) giden kutusu satırıyla eşleştirilir ve SAP'ye geri yazılır, böylece mağaza ve finans kullanıcıları SAP'den ayrılmadan faturalama belgesine karşı teslimat durumunu görebilirler. API, WhatsApp'ta bir numaraya ulaşılamadığını bildirirse, ara yazılım otomatik olarak SMS veya e-postaya geçer.
- “Faturayı Görüntüle” bağlantısı: tasarım gereği güvenli.
- Onay ve kişisel veriler
- Bağlantı rastgele, tek amaçlı bir jeton taşır; hiçbir zaman fatura numarası veya herhangi bir müşteri verisi taşımaz.
Bağlantılar yapılandırılabilir bir sürenin ardından sona erer [ör. 30 gün]; müşteri her zaman mağazadan yeni bir tane talep edebilir.
PDF, entegratörün arşivinden aktarılır, böylece müşteri her zaman resmi, imzalı belgeyi görür.
Her erişim faturaya kaydedilir.
Cep telefonu numarası, POS ekranında veya mağaza içi satış destek uygulaması aracılığıyla, açık bir teslimat onayıyla birlikte kasada kaydedilir. Uluslararası formata dönüştürülür ve onay zaman damgasıyla birlikte saklanır. Şablon yalnızca işlem içeriğini içerir ve ara yazılım, perakendecinin KVKK (Türk Kişisel Veri Koruma) birimiyle kararlaştırılan saklama kuralları çerçevesinde, yalnızca mesaj göndermek ve teslimatı kanıtlamak için gerekli kişisel verileri saklar.
