Webhook
Last updated
Last updated
X-Iyz-Signature
ve X-Iyz-Signature-V2
artık desteklenmeyecektir. Kullanıcılarımızın sistemlerini X-Iyz-Signature-V3
ile uyumlu hale getirmelerini bekliyoruz.
iyzico, işlem tamamlandığında uygulamanızı bilgilendirmek için webhook kullanır. (Başarılı, Başarısız) Ödeme girişimi yapıldığında HTTP POST bildirimi ile işlem sonucunu almak mümkündür. İlk bildirim, ilk ödeme girişiminden 10-15 saniye sonra gönderilecektir. Bu bir JSON Yükü ve sunucudan sunucuya HTTP isteğidir. iyzico, sunucunuz "2xx" durumu ile yanıt verene kadar her 15 dakikada bir bildirim göndermeye devam edecek ve 3 defa tekrar edecektir.
iyzico'da webhook kullanımına yönelik opsiyonel olabilecek tüm Ödeme Metotları doğrudan sonuçlanmaktadır. Örneğin, başarılı bir ödeme talebinde, en son yanıt tüm ödeme ayrıntılarını içerir. Bununla birlikte, istenirse farklı mekanizmaları tetiklemek için webhook yine de kullanılabilir.
iyzico Merchant Panel'e giriş yaptıktan sonra "Ayarlar > Firma Ayarları" adımında "İşyeri Bildirimleri" başlığından yapabilirsiniz. (HTTPS URL gereklidir)
Webhook istekleri 2 farklı formatta olabilir.
Direct Format
HPP(Hosted Payment Page) Format
Aşağıdaki webhook formatı, NON-3DS ve 3DS ödeme taleplerinde görünür.
Parametre | Type | Açıklama |
---|---|---|
paymentConversationId | string | İlgili ödemenin üye işyeri tarafından gönderilmiş referans numarası |
merchantId | string | Merchant'ın iyzico tarafından atanmış ID numarası. |
paymentId | string | İlgili ödemenin paymentId bilgisi |
status | string | Ödeme durumu. Alabileceği değerler: FAILURE, SUCCESS, INIT_THREEDS, CALLBACK_THREEDS, BKM_POS_SELECTED, INIT_APM, INIT_BANK_TRANSFER, INIT_CREDIT, PENDING_CREDIT, INIT_CONTACTLESS |
iyziReferenceCode | string | İstek için üretilen unique iyzico referans kodu |
iyziEventType | string | İstek tipini belirtir. Alabileceği değerler: CHECKOUT_FORM_AUTH, PAYMENT_API, API_AUTH, THREE_DS_AUTH, THREE_DS_CALLBACK, BANK_TRANSFER_AUTH, BKM_AUTH, BALANCE, CONTACTLESS_AUTH, CONTACTLESS_REFUND, CREDIT_PAYMENT_AUTH, CREDIT_PAYMENT_PENDING, CREDIT_PAYMENT_INIT, REFUND_RETRY_FAILURE, REFUND_RETRY_SUCCESS |
iyziEventTime | long | Notification oluşturulma zamanının unix timestamp değeridir. |
iyziPaymentId | long | Ödemeye ait ilgili paymentId. |
Yukarıdakine benzer şekilde, bir sonraki webhook formatı, iyzico ile Öde ve Ödeme Formu olan barındırılan sayfa çözümlerinde görünür.
Parametre | Type | Açıklama |
---|---|---|
paymentConversationId | string | İlgili ödemenin üye işyeri tarafından gönderilmiş referans numarası |
merchantId | string | Merchant'ın iyzico tarafından atanmış ID numarası. |
token | string | Ödeme formu için üretilmiş ve ödeme detaylarını içeren token değeri |
status | string | Ödeme durumu. Alabileceği değerler: FAILURE, SUCCESS, INIT_THREEDS, CALLBACK_THREEDS, BKM_POS_SELECTED, INIT_APM, INIT_BANK_TRANSFER, INIT_CREDIT, PENDING_CREDIT, INIT_CONTACTLESS |
iyziReferenceCode | string | İstek için üretilen unique iyzico referans kodu |
iyziEventType | string | İstek tipini belirtir. Alabileceği değerler: CHECKOUT_FORM_AUTH, PAYMENT_API, API_AUTH, THREE_DS_AUTH, THREE_DS_CALLBACK, BANK_TRANSFER_AUTH, BKM_AUTH, BALANCE, CONTACTLESS_AUTH, CONTACTLESS_REFUND, CREDIT_PAYMENT_AUTH, CREDIT_PAYMENT_PENDING, CREDIT_PAYMENT_INIT, REFUND_RETRY_FAILURE, REFUND_RETRY_SUCCESS |
iyziEventTime | long | Notification oluşturulma zamanının unix timestamp değeridir. |
iyziPaymentId | long | Ödemeye ait ilgili paymentId. |
İsteğin iyzico üzerinden geldiğini valide etmek için header içinde gönderilen X-IYZ-SIGNATURE-V3
değeri kullanılabilir ve bu değer yalnızca sahip olduğunuz SECRET KEY
ile çözülebilir.
X-Iyz-Signature
ve X-Iyz-Signature-V2
artık desteklenmeyecektir. Kullanıcılarımızın sistemlerini X-Iyz-Signature-V3
ile uyumlu hale getirmelerini bekliyoruz.
Secret Key
, eventType
ve paymentId
aşağıda verilen sıraya göre oluşturulmalıdır. Bu dizi HMACSHA256 ile hashlenir ve sonuç HEX ile şifrelenir. Alınan sonuç header'da bulunan X-IYZ-SIGNATURE
değerine eşit olmalıdır.
Sıralama | Parametre | Açıklama |
---|---|---|
1 | secretKey | Sahip olduğunuz secretKey |
2 | iyziEventType | İstek tipini belirtir. Alabileceği değerler: API_AUTH, THREE_DS_AUTH, BKM_AUTH |
3 | paymentId | İlgili ödemenin paymentId bilgisi |
4 | paymentConversationId | İlgili ödemenin üye işyeri tarafından gönderilmiş referans numarası |
5 | status | Ödeme durumu. Alabileceği değerler: FAILURE, SUCCESS, INIT_THREEDS, CALLBACK_THREEDS, BKM_POS_SELECTED, INIT_APM, INIT_BANK_TRANSFER, INIT_CREDIT, PENDING_CREDIT, INIT_CONTACTLESS. |
SECRET KEY
, iyziEventType
, iyziPaymentId
, token
, paymentConversationId
, status
, eventType
ve token
aşağıda verilen sıraya göre oluşturulmalıdır. Bu dizi HMACSHA256 ile hashlenir ve sonuç HEX ile şifrelenir. Son değer, başlıktaki X-IYZ-SIGNATURE-V3
ile eşleşmelidir.
Sıralama | Paremetre | Açıklama |
---|---|---|
1 | secretKey | Sahip olduğunuz secretKey. |
2 | iyziEventType | İstek tipini belirtir. Alabileceği değerler: CHECKOUT_FORM_AUTH, BALANCE, BANK_TRANSFER_AUTH |
3 | iyziPaymentId | Ödemeye ait ilgili paymentId. |
4 | token | Ödeme formu için üretilmiş ve ödeme detaylarını içeren token değeri |
5 | paymentConversationId | İlgili ödemenin üye işyeri tarafından gönderilmiş referans numarası |
6 | status | Ödeme durumu. Alabileceği değerler: FAILURE, SUCCESS, INIT_THREEDS, CALLBACK_THREEDS, BKM_POS_SELECTED, INIT_APM, INIT_BANK_TRANSFER, INIT_CREDIT, PENDING_CREDIT, INIT_CONTACTLESS |