Güvenlik Önerileri
Craftgate, sunmuş olduğu uçtan uca çözümler ile birlikte size kesintisiz ve güvenli bir ödeme deneyimi sağlar. Craftgate'in sunmuş olduğu çözümlere ek olarak üye işyerlerimizin de dikkate alabileceği önerilerimiz bulunmaktadır. Sorularınız ve görüşleriniz için destek@craftgate.io ile iletişime geçebilirsiniz.
A. Temel Güvenlik Önlemleri
API Key / Secret Key bilgilerini nasıl saklamalıyız?
Craftgate API'lerini kullanabilmek için gerekli olan bu 2 değer güvenli bir şekilde saklanmalı(tercihen şifrelenmiş) ve yetkisiz kişilerle paylaşılmamalıdır. Ek olarak dilerseniz mevcut anahtarlarınızı belirli periyotlarla Craftgate Üye İşyeri Panelinden yenileyebilirsiniz. Daha fazla bilgi için API Key / Secret Key Yönetimi sayfasını ziyaret edebilirsiniz.
B. 3DSecure Ödeme Akışı İçin Güvenlik Önlemleri
Hangi durumlarda 3D Secure ödemeyi tercih etmeliyiz?
Non-3DS ödemeler çok daha hızlı gerçekleşmesine rağmen bazı durumlarda tercih edilmemelidir. Aşağıdaki senaryolar için Non-3DS yerine 3DS ile ödeme alınması önerilir.
- Ön ödemeli (
PrePaid
) ve banka kartlarından (Debit
) 3DS ile ödeme alınması önerilir. Ödeme isteği ile gelen kartın tipini anlamak için Craftgate'in Bin Sorgulama servisini kullanabilirsiniz. - Yeni bir üyenin ilk siparişinde kullanıcıyı doğrulayabilmek için kullanılacak olan kart tipi farketmeksizin 3DS ile ödeme alınması önerilir.
- Mevcut bir üyenin adres değişikliği sonrasında ki ilk siparişinde kullanılacak olan kart tipi farketmeksizin 3DS ile ödeme alınması önerilir.
- Ödeme sonucunda eğer
LOST_CARD
,STOLEN_CARD
,PICKUP_CARD
hata grupları ile ödeme hatası alınıyorsa kullanıcı takibe alınmalı ve yeni ödemeleri 3DS ile alınması önerilir. - Kullanıcınızın normallerinden çok daha fazla tutarı olan işlemlerinde ödemeleri 3DS ile alınması önerilir.
3D Secure ödemeler için doğrulama tipi ne olmalı?
3D Secure ödemelerde kullanıcı doğrulaması tam ve yarım doğrulama şeklinde yapılabilir. Tam doğrulama, kullanıcının telefonuna SMS'in iletilmesi ve doğrulama kodunun da doğru girilmesi ile gerçekleşir. Yarım doğrulama ise kullanıcının 3D Secure sistemine tam dahil olamadığı, telefonunun bankada kayıtlı olmaması gibi durumlarda gerçekleşir. Yarım doğrulanan 3D Secure ödemeler tamamlanabilir ancak tam anlamıyla kullanıcı doğrulanamadığı için riskler barındırır.
Craftgate olarak iki çözümü de desteklemekteyiz. Dilerseniz bu seçimi Üye İşyeri Paneli -> Genel Ayarlar
kısmından seçebilirsiniz.
Hash doğrulama ile 3D Secure ödemelerin güvenlik kontrolünü nasıl yapabilirsiniz?
3DS ÖDEMELERİNİZDE HASH DOĞRULAMA İLE GÜVENLİK ADIMINI MUTLAKA UYGULAYINIZ!
3D Secure ödemelerde kullanıcı kendisini başarılı bir şekilde doğrular ise ödeme akışına devam edilir. Doğrulama sonucunu üye işyerine iletilirken bazı parametreler ile birlikte Craftgate tarafından üretilen hash
değeri de iletilir.
Üye İşyeri, gelen parametreleri kendi tarafındaki veri ile karşılaştırmalı, sepet kontrolü, kullanıcı oturum bilgisi kontrol edilmelidir.
Gelen parametrelerin içinde yer alan hash değerini de kontrol ederek hash değerinin aynısını kendi tarafında üretip iki değeri karşılaştırmalıdır. Hash uyuşmazlığı oluşursa ödemeye devam edilmemelidir.
Hash hesaplama algoritması için 3D Secure Ödeme Alma sayfasını ziyaret edebilirsiniz.
Sunmuş olduğumuz Açık Kaynak Kütüphanaler üzerinden de hash oluşturma işlemini yapabilirsiniz.
3D Secure ödemelerde, ödeme tamamlanmadan sepette değişiklik yapılabilir mi?
3D Secure ödemeler doğası gereği kullanıcının tarayıcısında gerçekleşen ve ortalama 50-60 saniye sürebilen bir akışa sahiptir.
3D Secure ödemenin başlatılması, doğrulanması ve tamamlanması arasında geçen süre boyunca kullanıcının sepet üzerinde yaptığı değişikliklere dikkat edilmeli. Sepet değiştiğinde kullanıcı uyarılmalı ve ödemeye devam edilmemelidir
. Güncel sepet bilgisi ile 3D Secure ödeme tekrar başlatılmalıdır.
C. Webhook Akışı İçin Güvenlik Önlemleri
Webhook adresinize iletilen isteğin Craftgate tarafından geldiğinin kontrolü nasıl yapılabilir?
Webhook URLinize gelen isteklerin Craftgate sisteminden gönderildiğini bilgisinin teyit edilebilmesi için, HTTP headerları arasında gönderilen x-cg-signature-v1
değerinin kontrol edilmesi gerekmektedir. Detaylara Webhook sayfamızdan ulaşabilirsiniz.
D. Ortak Ödeme Formu Üzerinden Yapılan Ödemeler İçin Güvenlik Önlemleri
Ortak ödeme formu üzerinden yapılan ödemelerde güvenlik kontrolü nasıl yapılmalıdır?
Ortak ödeme formu üzerinden yapılan ödemelerde, sonuç olarak üye işyerinin callback adresine ödeme ile ilişkili bir token bilgisi döner. (Bkz. Ortak Ödeme Sayfası ile Ödeme Alma) Bu token bilgisi ile Craftgate ortak ödeme sayfası ödemesi sorgulama servisinden ödemenin çekiniz. (Bkz. Ortak Ödeme Sayfası Ödemesi Sorgulama) Size dönen ödeme detaylarından ödemenin başarı durumunu, ilettiğiniz conversation id ve external id gibi sizin için özel anlamları bulunan değerler ile kontrol ettiğiniz siparişi karşılaştırınız. Böylelikle kontrol ettiğiniz sipariş ile ilgili güvenilir bir dönüş yapıldığından emin olabilirsiniz.
E. Güvenlik Açısından Hata Yönetimi
Hata gruplarını nasıl yorumlamalıyız?
Craftgate, ödeme işlemi bankada hatalı sonuçlanırsa hatanın detayına göre hatayı gruplayıp, tasnifleyip size en doğru hata detayı ile dönmektedir. Ödeme cevabında yer alan hata grubu alanında hatanın grubunu, hata açıklamasında ise hatanın nedenini bulabilirsiniz. Dilerseniz bu hata mesajını doğrudan kullanıcınıza gösterebilir ya da dilerseniz hata grubuna göre kendi hata mesajınızı gösterebilirsiniz.
Ödeme sonucunda eğer LOST_CARD
, STOLEN_CARD
, PICKUP_CARD
hata grupları ile ödeme hatası alınıyorsa kullanıcı takibe alınmalıdır. NOT_SUFFICIENT_FUNDS
, RESTRICTED_BY_LAW
gibi hatalarda ise kullanıcı bilgilendirilerek ödeme tekrar denenebilir.
Detaylara Hata Grupları sayfamızdan ulaşabilirsiniz.