> For the complete documentation index, see [llms.txt](https://docs.iyzico.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.iyzico.com/urunler/abonelik/abonelik-entegrasyonu/abone-islemleri.md).

# Abone İşlemleri

Her abonelik ödemesi sonucunda detayları verilen müşteri için varsayılan olarak bir **customerReferenceCode** oluşur. Şu an için bu referans kodu sadece müşteri bilgisini getirmek ve güncellemek için kullanılabilir.

Müşteriler **email** parametresi baz alınarak oluşturulur veya güncellenir. Örneğin, X maili ile abonelik oluşturulan bir müşteri için eşşsiz A referans kodu üretilir. X maili başka bir abonelikte kullanılır ise istekte gönderilen müşteri detayları güncellenir ve yine eşşiz A referans kodu üretilir.

Aboneler üzerinde kullanılabilecek 3 farklı metod vardır.&#x20;

1. [Abone Güncelleme](#post-v2-subscription-customers-customerreferencecode)
2. [Abone Detayı](#get-v2-subscription-customers-customerreferencecode)
3. [Abone Listeleme](#get-v2-subscription-customers)

## Abone Güncelleme

> Bir abonenin tüm detayları API isteği ile güncellenebilir. Bunun için aboneye ait \*\*customerReferenceCode\*\* path parametresi ve güncellenecek alanlar request body içinde gönderilmelidir. Gönderilen parametreler üzerinden güncelleme yapılır; \*\*en az bir alan\*\* gönderilmesi zorunludur.<br>

```json
{"openapi":"3.0.3","info":{"title":"Subscription - Abone Yönetimi","version":"1.1.0"},"servers":[{"url":"https://api.iyzipay.com","description":"iyzico API"}],"paths":{"/v2/subscription/customers/{customerReferenceCode}":{"post":{"summary":"Abone Güncelleme","description":"Bir abonenin tüm detayları API isteği ile güncellenebilir. Bunun için aboneye ait **customerReferenceCode** path parametresi ve güncellenecek alanlar request body içinde gönderilmelidir. Gönderilen parametreler üzerinden güncelleme yapılır; **en az bir alan** gönderilmesi zorunludur.\n","tags":["Abonelik"],"parameters":[{"$ref":"#/components/parameters/AuthHeader"},{"$ref":"#/components/parameters/ContentTypeHeader"},{"name":"customerReferenceCode","in":"path","required":true,"schema":{"type":"string"},"description":"Müşteri referans kodu."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerUpdateRequest"}}}},"responses":{"200":{"description":"Başarılı yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerUpdateResponse"}}}},"400":{"description":"Başarısız yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"parameters":{"AuthHeader":{"name":"Authorization","in":"header","required":true,"schema":{"type":"string"},"description":"Authorization header, IYZWSv2 ile başlayan ve base64 formatında üretilmiş imzalı hash değeridir."},"ContentTypeHeader":{"name":"Content-Type","in":"header","required":true,"schema":{"type":"string"},"description":"İstek içeriğinin formatı."}},"schemas":{"CustomerUpdateRequest":{"type":"object","description":"Güncellenecek alanlar. Tüm alanlar **opsiyoneldir** ancak gövde en az bir alan içermelidir.\n","minProperties":1,"properties":{"name":{"type":"string","description":"Kullanıcı adı."},"surname":{"type":"string","description":"Kullanıcı soyadı."},"email":{"type":"string","description":"Kullanıcı e-posta adresi."},"gsmNumber":{"type":"string","description":"GSM numarası. **+90** formatında gönderilmesi önerilir."},"identityNumber":{"type":"string","description":"T.C. Kimlik Numarası."},"billingAddress":{"$ref":"#/components/schemas/CustomerAddress"},"shippingAddress":{"$ref":"#/components/schemas/CustomerAddress"}}},"CustomerAddress":{"type":"object","description":"Adres bilgileri.","properties":{"address":{"type":"string","description":"Adres metni."},"zipCode":{"type":"string","description":"Posta/Zip kodu."},"contactName":{"type":"string","description":"İrtibat kişisi adı."},"city":{"type":"string","description":"Şehir."},"district":{"type":"string","description":"Semt (varsa)."},"country":{"type":"string","description":"Ülke."}}},"CustomerUpdateResponse":{"type":"object","properties":{"status":{"type":"string","enum":["success","failure"],"description":"Yapılan isteğin sonucunu belirtir."},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."},"data":{"type":"object","description":"Güncellenmiş müşteri bilgileri.","properties":{"referenceCode":{"type":"string","description":"Müşteriye ait referans kodu."},"createdDate":{"type":"integer","description":"Müşteri kaydının oluşturulma zamanı (epoch ms)."},"status":{"type":"string","enum":["ACTIVE"],"description":"Kayıt durumu."},"name":{"type":"string","description":"Müşteri adı."},"surname":{"type":"string","description":"Müşteri soyadı."},"identityNumber":{"type":"string","description":"T.C. Kimlik Numarası."},"email":{"type":"string","description":"Müşteri e-posta adresi."},"gsmNumber":{"type":"string","description":"Müşteri GSM numarası."},"contactEmail":{"type":"string","description":"İletişim e-posta adresi."},"contactGsmNumber":{"type":"string","description":"İletişim GSM numarası."},"billingAddress":{"$ref":"#/components/schemas/CustomerAddress"},"shippingAddress":{"$ref":"#/components/schemas/CustomerAddress"}}}}},"ErrorResponse":{"type":"object","properties":{"status":{"type":"string","enum":["failure"],"description":"İstek sonucunu ifade eder (başarısız)."},"errorCode":{"type":"string","description":"Hata kodu."},"errorMessage":{"type":"string","description":"Hata mesajı."},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."}}}}}}
```

#### Örnek Kodlar

<table data-view="cards"><thead><tr><th></th></tr></thead><tbody><tr><td><a href="https://github.com/iyzico/iyzipay-php/blob/master/samples/subscription-samples/update_customer.php">PHP</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-java/blob/master/src/test/java/com/iyzipay/sample/subscription/SubscriptionCustomerSample.java#L54">Java</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-dotnet/blob/master/Iyzipay.Samples/SubscriptionCustomerSample.cs#L68">.NET</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-node/blob/master/samples/IyzipaySubscriptionSamples.js#L197">Node.Js</a></td></tr><tr><td><a href="https://www.postman.com/iyzico/iyzico/request/hxware5/5-3-update-customer?sideView=agentMode">Postman</a></td></tr></tbody></table>

## Abone Detayı

> Bir abonenin tüm detayları, aboneye ait referans kodu ile çağrılabilir.

```json
{"openapi":"3.0.3","info":{"title":"Subscription - Abone Yönetimi","version":"1.1.0"},"servers":[{"url":"https://api.iyzipay.com","description":"iyzico API"}],"paths":{"/v2/subscription/customers/{customerReferenceCode}":{"get":{"summary":"Abone Detayı","description":"Bir abonenin tüm detayları, aboneye ait referans kodu ile çağrılabilir.","tags":["Abonelik"],"parameters":[{"$ref":"#/components/parameters/AuthHeader"},{"$ref":"#/components/parameters/ContentTypeHeader"},{"name":"customerReferenceCode","in":"path","required":true,"schema":{"type":"string"},"description":"Müşteri referans kodu."}],"responses":{"200":{"description":"Başarılı yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerDetailResponse"}}}},"400":{"description":"Başarısız yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"parameters":{"AuthHeader":{"name":"Authorization","in":"header","required":true,"schema":{"type":"string"},"description":"Authorization header, IYZWSv2 ile başlayan ve base64 formatında üretilmiş imzalı hash değeridir."},"ContentTypeHeader":{"name":"Content-Type","in":"header","required":true,"schema":{"type":"string"},"description":"İstek içeriğinin formatı."}},"schemas":{"CustomerDetailResponse":{"type":"object","properties":{"status":{"type":"string","enum":["success","failure"]},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."},"data":{"type":"object","description":"Abone (müşteri) detayları.","properties":{"referenceCode":{"type":"string","description":"Müşteriye ait referans kodu."},"createdDate":{"type":"integer","description":"Oluşturulma zamanı (epoch ms)."},"status":{"type":"string","enum":["ACTIVE"],"description":"Kayıt durumu."},"name":{"type":"string","description":"Ad"},"surname":{"type":"string","description":"Soyad"},"identityNumber":{"type":"string","description":"TCKN"},"email":{"type":"string","description":"Abone email bilgisi."},"gsmNumber":{"type":"string","description":"Abone gsmNumber bilgisi."},"contactEmail":{"type":"string","description":"İletişim email bilgisi"},"contactGsmNumber":{"type":"string","description":"İletişim gsmNumber bilgisi."},"billingAddress":{"$ref":"#/components/schemas/CustomerAddress"},"shippingAddress":{"$ref":"#/components/schemas/CustomerAddress"}}}}},"CustomerAddress":{"type":"object","description":"Adres bilgileri.","properties":{"address":{"type":"string","description":"Adres metni."},"zipCode":{"type":"string","description":"Posta/Zip kodu."},"contactName":{"type":"string","description":"İrtibat kişisi adı."},"city":{"type":"string","description":"Şehir."},"district":{"type":"string","description":"Semt (varsa)."},"country":{"type":"string","description":"Ülke."}}},"ErrorResponse":{"type":"object","properties":{"status":{"type":"string","enum":["failure"],"description":"İstek sonucunu ifade eder (başarısız)."},"errorCode":{"type":"string","description":"Hata kodu."},"errorMessage":{"type":"string","description":"Hata mesajı."},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."}}}}}}
```

#### Örnek Kodlar

<table data-view="cards"><thead><tr><th></th></tr></thead><tbody><tr><td><a href="https://github.com/iyzico/iyzipay-php/blob/master/samples/subscription-samples/retrieve_customer.php">PHP</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-java/blob/master/src/test/java/com/iyzipay/sample/subscription/SubscriptionCustomerSample.java#L89">Java</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-dotnet/blob/master/Iyzipay.Samples/SubscriptionCustomerSample.cs#L122">.NET</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-node/blob/master/samples/IyzipaySubscriptionSamples.js#L233">Node.Js</a></td></tr><tr><td><a href="https://www.postman.com/iyzico/iyzico/request/t0if1ge/5-4-retrieve-customer?sideView=agentMode">Postman</a></td></tr></tbody></table>

## Abone Listeleme

> Tüm aboneleri ve temel detaylarını listeler.

```json
{"openapi":"3.0.3","info":{"title":"Subscription - Abone Yönetimi","version":"1.1.0"},"servers":[{"url":"https://api.iyzipay.com","description":"iyzico API"}],"paths":{"/v2/subscription/customers":{"get":{"summary":"Abone Listeleme","description":"Tüm aboneleri ve temel detaylarını listeler.","tags":["Abonelik"],"parameters":[{"$ref":"#/components/parameters/AuthHeader"},{"$ref":"#/components/parameters/ContentTypeHeader"},{"name":"page","in":"query","required":false,"schema":{"type":"integer"},"description":"Belirtilen sayfa için aboneleri getirir."},{"name":"count","in":"query","required":false,"schema":{"type":"integer"},"description":"Sayfa başına kaç abone listeleneceğini belirtir."}],"responses":{"200":{"description":"Başarılı yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerListResponse"}}}},"400":{"description":"Başarısız yanıt","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"parameters":{"AuthHeader":{"name":"Authorization","in":"header","required":true,"schema":{"type":"string"},"description":"Authorization header, IYZWSv2 ile başlayan ve base64 formatında üretilmiş imzalı hash değeridir."},"ContentTypeHeader":{"name":"Content-Type","in":"header","required":true,"schema":{"type":"string"},"description":"İstek içeriğinin formatı."}},"schemas":{"CustomerListResponse":{"type":"object","properties":{"status":{"type":"string","enum":["success","failure"]},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."},"data":{"type":"object","description":"Sayfalama bilgileri ve abone listesi.","properties":{"totalCount":{"type":"integer","description":"Toplam kayıt sayısı."},"currentPage":{"type":"integer","description":"Mevcut sayfa."},"pageCount":{"type":"integer","description":"Toplam sayfa sayısı."},"items":{"type":"array","description":"Abone kayıtları.","items":{"type":"object","allOf":[{"$ref":"#/components/schemas/CustomerDetailResponse/properties/data"}]}}}}}},"CustomerDetailResponse":{"properties":{"data":{"type":"object","description":"Abone (müşteri) detayları.","properties":{"referenceCode":{"type":"string","description":"Müşteriye ait referans kodu."},"createdDate":{"type":"integer","description":"Oluşturulma zamanı (epoch ms)."},"status":{"type":"string","enum":["ACTIVE"],"description":"Kayıt durumu."},"name":{"type":"string","description":"Ad"},"surname":{"type":"string","description":"Soyad"},"identityNumber":{"type":"string","description":"TCKN"},"email":{"type":"string","description":"Abone email bilgisi."},"gsmNumber":{"type":"string","description":"Abone gsmNumber bilgisi."},"contactEmail":{"type":"string","description":"İletişim email bilgisi"},"contactGsmNumber":{"type":"string","description":"İletişim gsmNumber bilgisi."},"billingAddress":{"$ref":"#/components/schemas/CustomerAddress"},"shippingAddress":{"$ref":"#/components/schemas/CustomerAddress"}}}}},"CustomerAddress":{"type":"object","description":"Adres bilgileri.","properties":{"address":{"type":"string","description":"Adres metni."},"zipCode":{"type":"string","description":"Posta/Zip kodu."},"contactName":{"type":"string","description":"İrtibat kişisi adı."},"city":{"type":"string","description":"Şehir."},"district":{"type":"string","description":"Semt (varsa)."},"country":{"type":"string","description":"Ülke."}}},"ErrorResponse":{"type":"object","properties":{"status":{"type":"string","enum":["failure"],"description":"İstek sonucunu ifade eder (başarısız)."},"errorCode":{"type":"string","description":"Hata kodu."},"errorMessage":{"type":"string","description":"Hata mesajı."},"systemTime":{"type":"integer","description":"Dönen sonucun o anki epoch ms değeridir."}}}}}}
```

#### Örnek Kodlar

<table data-view="cards"><thead><tr><th></th></tr></thead><tbody><tr><td><a href="https://github.com/iyzico/iyzipay-php/blob/master/samples/subscription-samples/list_customers.php">PHP</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-java/blob/master/src/test/java/com/iyzipay/sample/subscription/SubscriptionCustomerListSample.java">Java</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-dotnet/blob/master/Iyzipay.Samples/SubscriptionCustomerSample.cs#L141">.NET</a></td></tr><tr><td><a href="https://github.com/iyzico/iyzipay-node/blob/master/samples/IyzipaySubscriptionSamples.js#L244">Node.Js</a></td></tr><tr><td><a href="https://www.postman.com/iyzico/iyzico/request/aa7ianc/5-2-list-customers?sideView=agentMode">Postman</a></td></tr></tbody></table>
