LogoLogo
GitHubFeedback Form
TR
TR
  • Başlangıç
  • Ön Hazırlıklar
    • Sandbox
    • Kimlik Doğrulama
      • HMACSHA256 Kimlik Doğrulama
    • Postman Collections
    • Live vs Sandbox
    • Eşleştirme
    • Limitler
  • Ödeme Metotları
    • Non-3DS
      • NON-3DS Entegrasyonu
        • Ödeme Oluşturma
        • Ödeme Sorgulama
    • 3DS
      • 3DS Entegrasyonu
        • 3DS Başlatma
        • 3DS Tamamlama
    • iyzico ile Öde (PWI)
      • PWI Entegrasyonu
        • PWI Başlatma
        • PWI Sorgulama
        • PWI Örnek Entegrasyon
    • Ödeme Formu (CheckoutForm)
      • CF Entegrasyonu
        • CF Başlatma
        • CF Sorgulama
        • CF Örnek Entegrasyon
  • Ürünler
    • Online Ödeme
    • Pazaryeri
      • Pazaryeri Entegrasyonu
        • Pazaryerlerinde Stopaj Uygulaması
        • Alt Üye
          • Alt Üye Güncelleme
          • Alt Üye Sorgulama
          • Alt Üye / Hak Ediş Güncelleme
        • Pazaryeri Ödemesi
        • Onay
    • Abonelik
      • Abonelik Entegrasyonu
        • Abonelik Ürünü
        • Ödeme Planı
        • Abonelik İşlemleri
        • Abone İşlemleri
    • Ceppos App2App
      • App2App Entegrasyonu
        • Kullanıcı Listeleme
        • Ödeme Başlatma
        • İptal / İade
        • Sorgulama
    • Korumalı Havale/EFT
      • Havale/EFT Entegrasyonu
        • Havale/EFT Başlatma
        • Havale/EFT Sorgulama
      • Havale/EFT SSS
    • iyzilink
      • iyzilink API
    • Alışveriş Kredisi
      • Alışveriş Kredisi Entegrasyonu
        • Alışveriş Kredisi Başlatma
        • Alışveriş Kredisi Sonucu Alma
        • Alışveriş Kredisi Örnek Entegrasyon
  • Ek Servisler
    • Kart Saklama
    • Raporlama Servisi
    • İptal ve İade
    • Webhook
    • SFTP
    • Mutabakat Dosyaları
    • Fraud Bildirimleri
    • Taksit ve BIN Sorgulama
    • iyzico Hesabına İade
    • Ödeme Sorgulama
    • İmza Yanıtının Doğrulanması
  • Platformlar
    • Woocommerce
    • Opencart
    • PrestaShop
    • Magento
    • IdeaSoft
    • Ticimax
    • T-Soft
    • Shopify
    • WIX
  • Ek Bilgiler
    • Hata Kodları
    • Test Kartları
    • Entegrasyon Kontrol Listesi
    • iyzico Logo Paketi
Powered by GitBook
LogoLogo

Company

  • About
  • Career
  • Social
  • Youtube

Community

  • Github
  • Medium

Integration

  • Brand Guide
  • Solution Partners
  • Open Source

Contact

  • Contact Us
  • Support Center
On this page
  • Ödeme Planı Oluşturma
  • Ödeme Planı Oluşturma
  • Ödeme Planı Güncelleme
  • Ödeme Planı Güncelleme
  • Ödeme Planı Silme
  • Ödeme Planı Silme
  • Ödeme Planı Detayı
  • Ödeme Planı Detayı
  • Ödeme Planı Listeleme
  • Ödeme Planı Listeleme
  1. Ürünler
  2. Abonelik
  3. Abonelik Entegrasyonu

Ödeme Planı

Last updated 1 year ago

Abonelik sistemi varsayılan olarak belirtilen plan doğrultusunda çalışır. Ödeme planı tekrarlı ödeme için gerekli tüm özelliklerin belirtildiği adımdır.

Planlar eşsiz bir isim alır ve bir plan sadece bir ürüne bağlanabilir. Eğer bir plan aktif olarak bir aboneliğe bağlıysa bu plan silinemez.

Planlar üzerinde kullanılabilecek 5 farklı metod vardır.

Ödeme Planı Oluşturma

Bir plan oluşturmak için, ürün referans numarası, isim, fiyat, para birimi, ödeme periyodu gibi aşağıda detayları paylaşılan parametrelerlerin gönderilmesi gerekir.

Bir aboneliğin deneme sürecinin olması istenirse trialPeriodDays parametresi kullanılabilir. Eğer bu parametre gönderilirse, belirtilen değer süresince abonelik başlatılmaz ve karttan hiçbir şekilde ödeme alınmaz.

İstekte belirtilen Payment Interval parametresi ödeme periyodunu belirtir. Bir plan oluştururken “WEEKLY” parametresi gönderilirse, iyzico belirtilen tutarı her hafta karttan çekecektir. Bu periyodun özelleştirilmesi de mümkündür. Örneğin ödemenin 2 haftada bir alınmasını isterseniz, PaymentInterval değerini “WEEKLY” ve paymentIntervalCount değerini 2 olarak göndermeniz gerekmektedir.

NOT : planPaymentType parametresi zorunludur ve şu an için sadece RECURRING değerini alabilir.

Ödeme Planı Oluşturma

POST https://api.iyzipay.com/v2/subscription/products/{product_reference}/pricing-plans

Request Body

Name
Type
Description

conversationId

String

İstek esnasında gönderip, sonuçta alabileceğiniz bir değer, request/response eşleşmesi yapmak için kullanılabilir. En yaygın kullanış biçimi üye iş yerinin plan numarasıdır.

locale

String

iyzico istek sonucunda dönen metinlerin dilini ayarlamak için kullanılır. Varsayılan değeri TR.

name*

String

Plan adı. Ödeme planı ile ilgili kısa bir bilgilendirme olacak şekilde değer girilmelidir.

productReferenceCode*

String

Planın ilişkilendirileceği ürünün referans kodu.

recurrenceCount

Integer

Ödeme periyodunun kaç kez tekrarlanacağını belirler. Örneğin ayda bir ödeme alan planınıza bu değeri 12 olarak girerseniz, 12 ay boyunca ödeme alınacaktır.

planPaymentType*

String

Abonelik tipini belirtir. RECURRING değeri girilmelidir.

trialPeriodDays

Integer

Deneme süresi veya ücretsiz kullanım süresi olarak kullanılır. Bu değer girilirse, ilk ödeme girilen gün sayısı sonunda alınır.

paymentIntervalCount*

Integer

Ödeme periodunun hangi sıklıkta olacağını belirler. Örneğin paymentInterval değeri WEEKLY, paymentIntervalCount değeri 2 olursa, ödemeler 2 hafta bir alınır.

paymentInterval*

String

Tekrarlı ödemenin alınacağı periodu belirler. DAILY, WEEKLY, MONTHLY, YEARLY değerlerini alabilir.

currencyCode*

String

Ödemenin alınacağı para birimi. TL, USD, EUR olabilir. TL dışındaki para birimlerinin hesabınıza tanımlandığından emin olunuz.

price*

Decimal

Ödeme periyotlarında karttan çekilecek tutar. Plan için geçerli abonelik fiyatı.

{
    "status": "success",
    "systemTime": 1686865372192,
    "data": {
        "referenceCode": "fb4f08bb-b95b-44e8-a7f4-4111c0fa99d9",
        "createdDate": 1686865372183,
        "name": "Ödeme Planı",
        "price": 440.40,
        "paymentInterval": "MONTHLY",
        "paymentIntervalCount": 1,
        "trialPeriodDays": 0,
        "currencyCode": "TRY",
        "productReferenceCode": "235dbc68-d281-4626-9c85-98002e558ce7",
        "planPaymentType": "RECURRING",
        "status": "ACTIVE",
        "recurrenceCount": 12
    }
}

Ödeme Planı Oluşturma Dönen Parametreler

Parametre ismi
Tip
Açıklama

status

String

Yapılan isteğin sonucunu belirtir. İşlem başarılı ise success değeri döner.

systemTime

Long

Dönen sonucun o anki unix timestamp değeridir.

referenceCode

String

Oluşturulan plana ait eşsiz referans kodu. Plan güncellemek veya silmek, plan detayını görmek, abonelik başlatmak için kullanılır.

createdDate

Long

Plan oluşturulma tarihi.

name

String

Plan adı. İstek sırasında plana verdiğiniz isimdir.

productReferenceCode

String

Plana bağlı ürünün referans kodu. İstekte gönderdiğiniz ürün bilgisi geri iletilir.

price

Decimal

İstekte gönderdiğiniz değer geri iletilir. Ödeme periyotlarında karttan çekilecek tutardır.

currencyCode

String

İstekte gönderdiğiniz değer geri iletilir. Ödemenin alınacağı para birimi.

paymentInterval

String

İstekte gönderdiğiniz değer geri iletilir. Tekrarlı ödemenin alınacağı periodu belirler.

paymentIntervalCount

Integer

İstekte gönderdiğiniz değer geri iletilir. Ödeme periodunun hangi sıklıkta olacağını belirler.

trialPeriodDays

Integer

İstekte gönderdiğiniz değer geri iletilir. Bu değer gönderilmediyse 0 olarak döner.

planPaymentType

String

RECURRING değerini döner ve ödemenin tekrarlı olduğunu belirtir.

recurrenceCount

Integer

İstekte gönderdiğiniz değer geri iletilir. Ödeme periyodunun kaç kez tekrarlanacağını belirler(opsiyonel)

status

String

Planın durumunu gösterir. ACTIVE değerini alır.

Ödeme Planı Güncelleme

Bu metod sadece name ve trialPeriodDays parametrelerinin güncellenmesine izin verir. Plan güncellemesi yapabilmek için o plana ait eşsiz referans kodu kullanılmalıdır. Güncellemenin hem API hem de iyzico merchant paneli üzerinden yapılması mümkündür.

Ödeme Planı Güncelleme

POST https://api.iyzipay.com/v2/subscription/pricing-plans/{pricingPlanReferenceCode}

Request Body

Name
Type
Description

conversationId

String

İstek esnasında gönderip, sonuçta alabileceğiniz bir değer, request/response eşleşmesi yapmak için kullanılabilir.

locale

String

iyzico istek sonucunda dönen metinlerin dilini ayarlamak için kullanılır. Varsayılan değeri TR.

name*

String

Plan adı. Ödeme planı ile ilgili kısa bir bilgilendirme olacak şekilde değer girilmelidir.

pricingPlanReferenceCode*

String

Plana ait eşsiz referans kodu. Plan güncellemek veya silmek, plan detayını görmek, abonelik başlatmak için kullanılır.

trialPeriodDays

Integer

Deneme süresi veya ücretsiz kullanım süresi olarak kullanılır. Bu değer girilirse, ilk ödeme girilen gün sayısı sonunda alınır.

{
    "status": "success",
    "systemTime": 1686865996746,
    "data": {
        "referenceCode": "fb4f08bb-b95b-44e8-a7f4-4111c0fa99d9",
        "createdDate": 1686865372183,
        "name": "Update Plan",
        "price": 440.40000000,
        "paymentInterval": "MONTHLY",
        "paymentIntervalCount": 1,
        "trialPeriodDays": 10,
        "currencyCode": "TRY",
        "productReferenceCode": "235dbc68-d281-4626-9c85-98002e558ce7",
        "planPaymentType": "RECURRING",
        "status": "ACTIVE",
        "recurrenceCount": 12
    }
}

Ödeme Planı Güncelleme Dönen Parametreler

Parametre ismi
Tip
Açıklama

status

String

Yapılan isteğin sonucunu belirtir. İşlem başarılı ise success değeri döner.

systemTime

Long

Dönen sonucun o anki unix timestamp değeridir.

referenceCode

String

Plana ait eşsiz referans kodu. Plan güncellemek veya silmek, plan detayını görmek, abonelik başlatmak için kullanılır.

createdDate

Long

Plan oluşturulma tarihi.

name

String

Plan adı. İstek sırasında plana verdiğiniz isimdir.

productReferenceCode

String

Plana bağlı ürünün referans kodu.

price

Decimal

Ödeme periyotlarında karttan çekilecek tutardır.

currencyCode

String

Ödemenin alınacağı para birimi.

paymentInterval

String

Tekrarlı ödemenin alınacağı periodu belirler.

paymentIntervalCount

Integer

Ödeme periodunun hangi sıklıkta olacağını belirler.

trialPeriodDays

Integer

İstekte gönderdiğiniz değer geri iletilir. Bu değer gönderilmediyse 0 olarak döner.

planPaymentType

String

RECURRING değerini döner ve ödemenin tekrarlı olduğunu belirtir.

recurrenceCount

Integer

Ödeme periyodunun kaç kez tekrarlanacağını belirler.

status

String

Planın durumunu gösterir. ACTIVE değerini alır.

Ödeme Planı Silme

Bir plan ancak kendisine bağlı herhangi bir abonelik yoksa silinebilir. Silme işlemi için üye işeyeri plan referans kodunu kullanmalıdır. İstek success veya failure olarak cevaplanır. Success ise plan başaırı ile silinmiş demektir.

Ödeme Planı Silme

DELETE https://api.iyzipay.com/v2/subscription/pricing-plans/{pricingPlanReferenceCode}

Request Body

Name
Type
Description

pricingPlanReferenceCodee*

String

Plana ait eşsiz referans kodu

{
    "status": "success",
    "systemTime": 1686866455902
}

Ödeme Planı Silme Dönen Parametreler

Parametre ismi
Tip
Açıklama

status

String

Yapılan isteğin sonucunu belirtir. İşlem başarılı ise success değeri döner.

systemTime

Long

Dönen sonucun o anki unix timestamp değeridir.

Ödeme Planı Detayı

Üye işyerleri bir planın tüm detaylarını hem merchant panelinden hem de API istekleri üzerinden görebilir.

Ödeme Planı Detayı

GET https://api.iyzipay.com/v2/subscription/pricing-plans/{pricingPlanReferenceCode}

Request Body

Name
Type
Description

pricingPlanReferenceCode*

String

Plana ait eşsiz referans kodu

{
    "status": "success",
    "systemTime": 1686866781049,
    "data": {
        "referenceCode": "d507f394-5823-4260-b942-23782045eaac",
        "createdDate": 1686866768055,
        "name": "Ödeme Planı",
        "price": 440.40000000,
        "paymentInterval": "MONTHLY",
        "paymentIntervalCount": 1,
        "trialPeriodDays": 0,
        "currencyCode": "TRY",
        "productReferenceCode": "235dbc68-d281-4626-9c85-98002e558ce7",
        "planPaymentType": "RECURRING",
        "status": "ACTIVE",
        "recurrenceCount": 12
    }
}

Ödeme Planı Detayı Dönen Parametreler

Parametre ismi
Tip
Açıklama

status

String

Yapılan isteğin sonucunu belirtir. İşlem başarılı ise success değeri döner.

systemTime

Long

Dönen sonucun o anki unix timestamp değeridir.

referenceCode

String

Plana ait eşsiz referans kodu. Plan güncellemek veya silmek, plan detayını görmek, abonelik başlatmak için kullanılır.

createdDate

Long

Plan oluşturulma tarihi.

name

String

Plan adı. İstek sırasında plana verdiğiniz isimdir.

productReferenceCode

String

Plana bağlı ürünün referans kodu.

price

Decimal

Ödeme periyotlarında karttan çekilecek tutardır.

currencyCode

String

Ödemenin alınacağı para birimi.

paymentInterval

String

Tekrarlı ödemenin alınacağı periodu belirler.

paymentIntervalCount

Integer

Ödeme periodunun hangi sıklıkta olacağını belirler.

trialPeriodDays

Integer

İstekte gönderdiğiniz değer geri iletilir. Bu değer gönderilmediyse 0 olarak döner.

planPaymentType

String

RECURRING değerini döner ve ödemenin tekrarlı olduğunu belirtir.

recurrenceCount

Integer

Ödeme periyodunun kaç kez tekrarlanacağını belirler(opsiyonel)

status

String

Planın durumunu gösterir. ACTIVE değerini alır.

Ödeme Planı Listeleme

Tüm planlar ve bağlı olduğu ürünler bu istek sonucu görülebilir. Cevap sayfalar halinde iletilir

Ödeme Planı Listeleme

GET https://api.iyzipay.com/v2/subscription/products/{product_reference}/pricing-plans

Request Body

Name
Type
Description

page*

Integer

Belirtilen sayfa için tüm planları getirir.

count*

Integer

Sayfa başına kaç plan listelenceğini belirtir.

{
    "status": "success",
    "systemTime": 1686867184729,
    "data": {
        "totalCount": 2,
        "currentPage": 1,
        "pageCount": 1,
        "items": [
            {
                "referenceCode": "d507f394-5823-4260-b942-23782045eaac",
                "createdDate": 1686866768055,
                "name": "Ödeme Planı",
                "price": 440.40000000,
                "paymentInterval": "MONTHLY",
                "paymentIntervalCount": 1,
                "trialPeriodDays": 0,
                "currencyCode": "TRY",
                "productReferenceCode": "235dbc68-d281-4626-9c85-98002e558ce7",
                "planPaymentType": "RECURRING",
                "status": "ACTIVE",
                "recurrenceCount": 12
            },
            {
                "referenceCode": "a3dde7ac-dff4-4d96-a6da-5780aeee9c9a",
                "createdDate": 1675684471828,
                "name": "testop",
                "price": 100.00000000,
                "paymentInterval": "MONTHLY",
                "paymentIntervalCount": 1,
                "trialPeriodDays": 0,
                "currencyCode": "TRY",
                "productReferenceCode": "235dbc68-d281-4626-9c85-98002e558ce7",
                "planPaymentType": "RECURRING",
                "status": "ACTIVE"
            }
        ]
    }
}

Ödeme Planı Listeleme Dönen Parametreler

Parametre ismi
Tip
Açıklama

status

String

Yapılan isteğin sonucunu belirtir. İşlem başarılı ise success değeri döner.

systemTime

Long

Dönen sonucun o anki unix timestamp değeridir.

totalCount

String

Toplam kaç tane sonuç geldiğini belirtir.

currentPage

Integer

Hangi sayfa için listeleme yapıldığını belirtir.

pageCount

Integer

Toplam kaç sayfa sonuç geldiğini belirtir.

items

Array Object

Plan detaylarını içeren dizidir.

Ödeme Planı Oluşturma
Ödeme Planı Güncelleme
Ödeme Planı Silme
Ödeme Planı Detayı
Ödeme Planı Listeleme