Geri Bildirim (Webhooks)
Ödeme ile ilgili durumların (satış, iptal) tarafınıza gönderileceği servistir. Geri bildirim modellerine uygun servislerin callback URL tanımlanması ve beklenen modelleri karşılaması ile iletimi sağlanacaktır.
INFO
Geri bildirim beklenmiyorsa callback URL tanımlanması zorunlu değildir.
Manifest Ayarları
Uygulamanızın AndroidManifest.xml dosyasına aşağıdaki intent filter eklenmelidir:
xml
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="https"/>
<data android:host="www.domain.com"/>
<data android:pathPattern="/odeal_gateway"/>
</intent-filter>Önemli
android:host ve android:pathPattern değerlerini kendi domain ve path bilgilerinizle değiştirmeyi unutmayın.
Ödeme Sonucunu Alma
Yukarıdaki intent filter hangi Activity'ye eklendiyse, o Activity'nin onCreate() methodunda aşağıdaki fonksiyon çağırılarak ödeme sonucuna ulaşılabilir:
java
private void getDeeplinkData() {
Uri intentData = getIntent().getData();
if (intentData != null) {
try {
// Gelen tüm verinin loglanması
Log.d("IntentDataTag", "IntentData: " + intentData);
// Query Parametreleri Parse etme işlemleri
String basketReferenceCode = intentData.getQueryParameter("basketReferenceCode");
String reason = intentData.getQueryParameter("reason");
boolean result = Boolean.parseBoolean(intentData.getQueryParameter("result"));
Log.d("IntentDataTag", "IntentData: Basket Reference Code: " + basketReferenceCode
+ " Reason: " + reason + " Result: " + result);
} catch (Exception e) {
Log.e("IntentDataTag", "IntentData: Exception -> " + e);
}
} else {
Log.d("IntentDataTag", "IntentData: There is no data");
}
}Dönen Parametreler
| Parametre | Tip | Açıklama |
|---|---|---|
| basketReferenceCode | String | Sepet referans kodu |
| reason | String | İşlem sonucu açıklaması |
| result | Boolean | İşlem başarı durumu (true/false) |
Kullanım
result parametresi true ise ödeme başarılı, false ise ödeme başarısız veya iptal edilmiş demektir.
Örnek Deeplink URL
https://www.domain.com/odeal_gateway?basketReferenceCode=ABC123&reason=Ödeme+başarılı&result=true
