Abonelik Durumu
Webhooklar aracılığıyla, abonelik durumu değişikliklerini sunucunuza nasıl alacağınızı öğrenin
Bu webhook hizmeti, yeni abonelikler, yenilemeler, durum güncellemeleri veya abonelik iptalleri gibi aboneliklerle ilgili her türlü değişiklik 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ı
Abonelik durum değişikliğini 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.
Parametreler
queue
Webhook türü ve tarihi ile ilgili bilgiler yer alır.
queue.type
İşlem tipini belirtir. Bu webhook türü için her zaman SubscriberUpdate
gelir.
queue.eventType
Abonelikle ilgili gerçekleşen güncellemeleri belirtir. Aşağıdaki değerleri alabilir:
newSubscriber
: Yeni bir abone olduğunu belirtir.Cancel
: Aboneliğin iptal edildiğini belirtir.reactivate
: Aboneliğin tekrar aktifleştirildiğini belirtir.activeToGrace
: Aktif olan abonenin "grace" statüsüne geçtiğini belirtir.graceToActive
: "Grace" statüsünde olan abonenin aktif statüye geçtiğini belirtir.graceToPassive
: "Grace" statüsünde olan abonenin pasif statüye geçtiğini belirtir.renewal
: Aboneliğin yenilendiğini belirtir.
parameters
Webhook'a ait bilginin detayları yer alır.
package
Abonenin aktif ya da son kullandığı pakete bir bilgiler yer alır.
newPackage
Eğer abone paket düşürme işlemi yaptıysa, geçilecek paket bilgileri bu parametre içerisinde gelir. Eğer paket geçişi yoksa null olarak gelmektedir.
customer
Aboneye ait Zotlo üzerinde bulunan bilgilerin gönderildiği parametredir.
card
Kayıtlı kredi kartı bilgilerinin gönderildiği servistir.
profile
Aboneye ait abonelik durumu bitiş tarihi gibi durumların gönderildiği servistir. Buradaki status değerine göre abonenin durumu kontrol edilebilir.
profile.customParameters
Abonelik sırasında aboneye özel parametreler gönderildiyse bu parametre üzerinden ilgili kayıtlar gönderilmektedir. Default değeri null'dır.
profile.quantity
Bir abonelik birden fazla kullanıcıya açıldıysa burada kişi sayısı dönülmektedir. Default değeri 1'dir.
profile.cancellation
Eğer abonelik iptal edilsiyse iptal nedeni ve iptal tarihi bu parametre içerisinde gönderilmektedir. Eğer abonelik iptal edilmediyse null olarak gönderilmektedir. Abonenin iptal durumu bu parametre kontrol edilerek yapılmalıdır.
profile.originalTransactionId
Aboneye ait ilk satınalmanın transactionId değeridir.
profile.subscriptionType
Paid ya da trial değerini alabilir. trial ise abone deneme süresi periyodunda, paid ise de en az 1 ödeme tahsil edilmiş demektir.
profile.subscriberId
Abonelik başlangıcında client tarafından gönderilen aboneye ait uniq id değeridir. Sistemde tüm sorgulamalar bu subscriberId ile yapılmaktadır.
profile.expireDate
Aboneliğin bitiş tarihidir.
profile.package
Abonenin kullandığı aktif paket id'sidir.
profile.status
Aboneye ait durumdur. active, passive ya da grace parametrelerini alabilir. active ise abonelik devam ediyor. passive ise abonelik sonlanmışi grace ise de aboneden ücret çekilemediği için yenileme yapılamamıştır. Abonelik iptali yapan kullanıcılarda expireDate dolana kadar status değeri active olarak gelmektedir.
profile.realStatus
Aboneye ait gerçek durumdur. active parametresinden farklı olarak abonenin geçerli durumunu verir. Abonelik iptali yapan kullanıcılar süresi dolmasa da bu parametrede passive olarak gelmektedir.
profile.country
Aboneye ait ülke kodudur.
profile.phoneNumber
Abonenin sistemde kayıtlı telefon numarasıdır.
package_update
Eğer bildirim paket değişikliğinden sonra gönderiliyorsa 1 değerini almaktadır. Diğer durumlarda 0 gönderilmektedir.
Last updated