Skip to content

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

ParametreTipAçıklama
basketReferenceCodeStringSepet referans kodu
reasonStringİşlem sonucu açıklaması
resultBooleanİş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.

https://www.domain.com/odeal_gateway?basketReferenceCode=ABC123&reason=Ödeme+başarılı&result=true

Ödeal A.Ş.