Razorpay'i Shopify Flow'a nasıl bağlayabilirim?
Her webhook'ta HMAC imza doğrulaması ile Razorpay'i Shopify Flow'a bağlayın, ardından etiketleri, notları veya e-postaları tetikleyin.
Razorpay, Hindistan’da yaygın olarak kullanılan bir ödeme platformudur. Ödemeler, iadeler, hesap kapatma işlemleri ve abonelikler için bir webhook gönderir. Workflow Webhooks, bu çağrıyı bir Shopify Flow tetikleyicisine dönüştürür; böylece mağazanız buna tepki verebilir: bir müşteriye etiket ekleyebilir, sipariş notu ekleyebilir, dahili bir e-posta gönderebilir, bir meta alanı güncelleyebilir - kısacası Shopify Flow’un yapabileceği her şeyi gerçekleştirebilir.
Bu kılavuz, tüm süreci ayrıntılı olarak açıklamaktadır: Razorpay gönderir, Workflow Webhooks alır ve doğrular, Shopify Flow harekete geçer; her istekte Razorpay’in HMAC imzası kontrol edildiğinden, iş akışınızı yalnızca Razorpay başlatabilir.
Neler yapabileceğiniz
- Razorpay ödeme bağlantısı veya sayfası üzerinden ödeme yapan bir Shopify müşterisini etiketleyin.
- Razorpay tarafında bir iade işlemi gerçekleştirildiğinde sipariş notu ekleyin.
- Bir ödeme geldiğinde finans ekibinize e-posta gönderin.
Gönderilmesi gereken tipik olaylar: payment.captured, payment.failed, refund.processed, subscription.charged.
Başlamadan önce
- Shopify mağazanıza yüklenmiş Workflow Webhooks.
- Shopify Flow, Shopify Uygulama Mağazasından ücretsiz olarak indirilip kuruldu.
- Webhook oluşturma iznine sahip bir Razorpay hesabı.
1. Adım - Workflow Webhooks'ta webhook'u oluşturun
- Workflow Webhooks'u açın -> Webhooks -> Webhook oluştur seçeneğine tıklayın ve Shopify Flow'da kolayca tanıyabileceğiniz bir ad verin; örneğin
Razorpay eventsgibi. - Kimlik Doğrulama bölümünden HMAC'yi seçin.
- Signature provider (İmza sağlayıcısı) bölümünden Razorpay’i seçin. Uygulama, başlık, algoritma, imzalı veri yükü ve tekrar oynatma aralığını sizin için otomatik olarak doldurur; ayarlanacak başka bir şey yoktur.
- Şimdilik gizli alanı boş bırakın ve Kaydet'e tıklayın. Sayfada gösterilen webhook URL'sini kopyalayın.
Diğer kimlik doğrulama modları için Kimlik Doğrulama’a, hangi alanların Shopify Flow’a aktarılacağını seçmek için ise Yük haritalama ve Shopify Flow değişkenleri’a bakın.
2. Adım - Razorpay'de uç noktayı ekleyin
Razorpay Kontrol Panelinde, Ayarlar -> Webhook’lar seçeneğini açın, kopyaladığınız URL ile bir webhook ekleyin, olayları seçin ve Gizli Anahtarı ayarlayın.
Razorpay imza şifrenizi nasıl bulabilirsiniz?
Razorpay Kontrol Panelinde webhook ayarları yapıldı.
Razorpay'in webhook imzalarıyla ilgili kendi belgeleri, hesabınızla ilgili tam metni ve ekran görüntülerini içeriyor.
Bu gizli anahtarı, Workflow Webhooks bölümündeki webhook’un “Secret” alanına yapıştırın ve kaydedin. O andan itibaren her Razorpay teslimatı, Shopify Flow’a ulaşmadan önce doğrulanacaktır.
Bu kontrolün amacı
| Ne | Değer |
|---|---|
| İmza başlığı | X-Razorpay-Signature |
| İmzanın bulunduğu yer | Başlığın tamamı |
| Neyin imzalandığı | {body} |
| İmza | HMAC-SHA256, onaltılık kodlanmış |
| Zaman damgası | Bu gönderen tarafından kullanılmamaktadır |
| Tekrar oynatma koruması | Yok - bu gönderen zaman damgasını imzalamamaktadır; dolayısıyla tüm geçerli imzalar geçerliliğini korur |
| Sır | Düz metin olarak kullanılır. Göndericinin gösterdiği şekilde aynen yapıştırın. |
İmzalı yükte, {body}, bayt bayt ham istek gövdesidir.
Bu koşullardan herhangi birini karşılamayan bir istek, 401 hatasıyla reddedilir, Geçmiş ve sorun giderme bölümüne kaydedilir ve hiçbir zaman bir iş akışını başlatmaz.
3. Adım - Shopify Flow iş akışını oluşturun
- Shopify Flow'da bir iş akışı oluşturun ve Workflow Webhooks tetikleyicisini seçin.
- Olayları Kaydet seçeneğine basın, ardından Razorpay’den bir test olayı gönderin (veya Workflow Webhooks bölümündeki Test Gönder seçeneğini kullanın), böylece Shopify Flow verilerinizin yapısını öğrenebilir.
- Sahip olduğunuz her webhook aynı Shopify Flow tetikleyicisini çalıştırır; bu nedenle, bu iş akışını yalnızca Razorpay ile sınırlı tutmak için **webhook **kimliğine ilişkin bir ilk koşul ekleyin. Kimlik, webhook sayfasında gösterilir.
- İşlemlerinizi ekleyin - bir müşteriyi etiketleyin, bir not ekleyin, şirket içi bir e-posta gönderin, bir meta alanı güncelleyin.



4. Adım - Baştan sona test edin
Razorpay'de gerçek bir olayı tetikleyin. Workflow Webhooks → History bölümünde, durumu Success olan çağrıyı görmelisiniz. İmza yanlışsa, bunun yerine nedeni belirtilen bir hata kaydı alırsınız ve İmzalı webhook'ların doğrulanması, hangi adımın başarısız olduğunu tam olarak gösteren imza denetleyicisini açıklar.

İmza uyuşmuyor
Şu sırayla: gizli anahtar (en yaygın neden - fazladan bir boşluk ya da yanlış ortamdan alınan bir anahtar), gönderenin farklı bir uç noktanın gizli anahtarını kullanıp kullanmadığı ve Razorpay ile uygulama arasında gövdeyi yeniden yazan herhangi bir unsur olup olmadığı. İmzalar ham baytları kapsadığından, JSON’u yeniden biçimlendiren bir proxy bunları bozar. Webhook sayfasındaki imza test aracı, imzalanmış olan metnin tam halini gösterir.
Her istekte 401 hatası alıyorum
Webhook’un kimlik doğrulama ayarının Razorpay sağlayıcısı seçili halde HMAC olarak ayarlandığını, gizli anahtarın girildiğini ve Razorpay’in, sondaki kod da dahil olmak üzere, uygulamanın gösterdiği şekilde tam olarak bu URL’ye veri gönderdiğini kontrol edin.
Geçmiş'te hiçbir şey görünmüyor
İstek hiç ulaşmadı. Razorpay'deki URL'yi tekrar kontrol edin ve Razorpay'in kendi iletim günlüğüne bakarak aldığı yanıtı inceleyin. 404 kodu, webhook'un yanlış veya silinmiş olduğunu; 429 kodu ise planınızın çağrı sınırını aştığınızı gösterir - bkz. Planlar ve kullanım.
İş akışı yanlış olaylar için çalışıyor
Mağazanızdaki her webhook, aynı Shopify Flow tetikleyicisini çalıştırır. İş akışının ilk adımı olarak **webhook **kimliğine bir koşul ekleyin ya da Razorpay’den gönderdiğiniz olayları daraltın.
İlgili
- İmzalı webhook'ların doğrulanması - doğruladığımız her sağlayıcı ve doğrulamadığımız bir sağlayıcıyı nasıl tanımlayacağımız.
- Yük haritalama ve Shopify Flow değişkenleri - yükten doğru alanları alıp Shopify Flow'a aktarma.
- Yinelenen teslimat koruması - Razorpay bir teslimatı yeniden denediğinde ne olur?
- Geçmiş ve sorun giderme - her isteğin günlüğü; tekrar oynatma özelliği ile.
