İadeler

Webhooklar aracılığıyla, iade işlem bildirimlerini sunucunuza nasıl alacağınızı öğrenin

Bu webhook hizmeti, hem tek seferlik hem de aboneliğe dayalı ödemeler de dahil olmak üzere, kullanıcı veya satıcı tarafından gerçekleştirilen başarılı geri ödeme işlemleri hakkında sizi bilgilendirir.

Endpoint URL'inizi Ayarlayın

Webhook bildirimleri sunucunuza HTTP POST aracılığıyla gönderilir. Endpoint URL'sini projenizin altındaki Developer Tools / Webhooks menüsünden yapılandırabilirsiniz.

Webhook Gönderim Kuralları

İade işlemini bildiren webhook bildirimi, ilk 5 dakika içinde gönderilir. Gönderim işleminin başarılı olarak kabul edilmesi için sisteminizin HTTP 200 durum kodunu dönmesi gerekmektedir. 200 dışındaki herhangi bir durum kodu, gönderim işleminin başarısız olduğu şeklinde değerlendirilir ve şu deneme süreci uygulanır:

  • Gönderim başarısız olursa, işlem 10 dakika sonra yeniden denenir.

  • İkinci deneme de başarısız olursa, sonraki üç deneme 30 dakika arayla yapılır.

  • Bu üç denemenin ardından da işlem başarısız olursa, bir sonraki deneme 1 saat sonra gerçekleştirilir.

  • Eğer bu denemede de başarı sağlanamazsa, işlem tekrar gönderilmez ve süreç sonlandırılır.

Webhook Bildirimlerinin Formatı

Webhook bildirimleri JSON formatında düzenlenir. Sunucunuza gönderilen POST isteğinin içeriği, düzenlenmiş bildirimin bilgilerini içerir.

{
  "queue": {
    "type": "TransactionRefund",
    "eventType": "refund",
    "requestID": "bbb3a4bc-93fc-46da-9d35-b2a7db6f2e3c",
    "createDate": {
      "date": "2024-10-25 15:23:48",
      "timezone_type": 3,
      "timezone": "UTC"
    },
    "appId": 7
  },
  "parameters": {
    "id": 9599,
    "payment_type": "subscription",
    "original_transaction_id": "093b8307-1658-4f94-a9bd-f101748d3c4b",
    "transaction_id": "093b8307-1658-4f94-a9bd-f101748d3c4b",
    "package_id": "premium2005",
    "team_id": 7,
    "app_id": 7,
    "status": "start_paid",
    "create_date": "2024-10-25 15:23:48",
    "purchase_date": "2024-10-25 15:23:48",
    "original_purchase_date": "2024-10-25 15:23:48",
    "price": "9.99",
    "currency": "TRY",
    "country": "TR",
    "expire_date": "2024-10-25 15:23:48",
    "subscriber_id": "test@mail.com",
    "credit_card": "41111111****1111",
    "refund_price": "9.99",
    "refund_date": "2024-10-25 15:23:48",
    "refund_reason": "",
    "is_refund": 1,
    "provider_id": 2005,
    "provider_transaction_id": "c9d9e426-c3a2-4b5f-ba67-e09618f1d066",
    "provider_status": "visa",
    "provider_name": "Credit Card",
    "comment": null,
    "json_payload": "",
    "quantity": 1,
    "package_price": "9.99",
    "subscription_id": 2005,
    "is_transfer": null,
    "paymentMethod": "creditCard"
  }
}

Parametreler

queue

Webhook türü ve tarihi ile ilgili bilgiler yer alır.

queue.type

Webhook'un iade türünde olduğunu belirtir. Bu webhook türü için sadece TransactionRefund değerini alabilir.

queue.eventType

İşlem türü bilgisidir. Bu webhook'ta sadece iade işlemi gerçekleştiğinden sadece refund değerini alabilir.

parameters

Webhook'a ait bilginin detayları yer alır.

is_refund

İade işlemlerinde bu değer 1 olarak gönderilmektedir.

refund_price

İade yapılan tutar bilgisidir.

refund_reason

Zotlo'ya gönderilen iade nedenidir.

credit_card

Transaction işleminde kullanılan kredi kartı.

status

İşleme ait durum değeridir. trial : Kullanıcı deneme süresindedir. trial_to_paid : Deneme süresinin bittiğini ve asıl fiyat ile ödeme işleminin gerçekleştiğini belirtir. renewal : Aboneye ait yenileme işlemi. reactive : Hesabı pasif olan bir kullanıcının ödeme yaparak hesabını aktif duruma getirdiği durumlarda gönderilir. consumable : Tek seferlik paket satın alındığında gönderilir. start_paid : Ücretli olarak yeni bir abonelik başlatıldığında gönderilir.

transaction_id

Satın alma işlemine ait uniq id değeridir. İade işlemlerinde bu bilgi kullanılmaktadır.

provider_transaction_id

Satın almanın ilgili provider üzerindeki id'sidir.

currency

Satın alma para birimidir.

provider_name

İşlemin gerçekleştiği provider bilgisidir.

create_date

Satın almanın Zotlo veritabanlarına kayıt tarihidir.

subscriber_id

Ödeme işleminin gerçekleştiği abone id'dir.

custom_parameters

Aboneye ait özel parametreler var ise bu parametrede gönderilmektedir.

original_purchase_date

Aboneye ait aboneliğin başladığı ilk tarih değeridir.

package_id

Satın alma işleminin yapıldığı pakettir.

expire_date

Eğer abonelik ile ilgili bir satın alma ise ilgili satırın son geçerlilik tarihidir.

purchase_date

İşlem gerçekleşme tarihidir.

payment_type

Ödeme türüdür. subscription ,consumable parametrelerinden birini alabilir. subscription ise abonelik ile ilgili ödeme, consumable ise de tek seferlik ödeme ile ilgili işlemdir.

quantity

İlgili satırdaki paketten kaç adet alındığıdır.

package_price

Satın alınan paketin fiyatıdır.

price

İşleme ait toplam tutardır.

Last updated