# iyzico Ödeme Formu (CF)

## Ödeme Formu (CF) Başlatma

> Ödeme formu (Checkout Form) oturumu başlatır ve ödeme sayfasını göstermek için \`checkoutFormContent\` / \`paymentPageUrl\` ve işleme ait \`token\` döner.

```json
{"openapi":"3.0.3","info":{"title":"Checkout Form (CF)","version":"1.0.1"},"servers":[{"url":"https://api.iyzipay.com","description":"iyzico API"}],"paths":{"/payment/iyzipos/checkoutform/initialize/auth/ecom":{"post":{"summary":"Ödeme Formu (CF) Başlatma","description":"Ödeme formu (Checkout Form) oturumu başlatır ve ödeme sayfasını göstermek için `checkoutFormContent` / `paymentPageUrl` ve işleme ait `token` döner.","tags":["CheckoutForm"],"parameters":[{"$ref":"#/components/parameters/AuthHeader"},{"$ref":"#/components/parameters/ContentTypeHeader"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CFInitializeRequest"}}}},"responses":{"200":{"description":"Başarılı yanıt (CF başlatıldı)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CFInitializeResponse"}}}},"400":{"description":"Hatalı istek / doğrulama hatası","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}},"components":{"parameters":{"AuthHeader":{"name":"Authorization","in":"header","required":true,"description":"Authorization header, IYZWSv2 ile başlayan ve base64 formatında üretilmiş imzalı hash değeridir.","schema":{"type":"string"}},"ContentTypeHeader":{"name":"Content-Type","in":"header","required":true,"description":"Content-Type değeri.","schema":{"type":"string"}}},"schemas":{"CFInitializeRequest":{"type":"object","required":["price","paidPrice","currency","callbackUrl","buyer","shippingAddress","billingAddress","basketItems"],"properties":{"locale":{"type":"string","description":"Dil kodu. Varsayılan; tr. Ödeme formunun İngilizce oluşturulması için \"en\" gönderilmelidir.","enum":["tr","en"]},"conversationId":{"type":"string","description":"İstek/yanıt eşleştirme ID’si. İstekte gönderilen değer, response'da aynen geri döner."},"price":{"type":"decimal","description":"Sepet toplamı."},"paidPrice":{"type":"decimal","description":"Tahsil edilecek toplam tutar."},"currency":{"type":"string","description":"Para birimi. Varsayılan; TRY.","enum":["TRY","USD","EUR","GBP","NOK","CHF"]},"basketId":{"type":"string","description":"Sepet ID’si."},"paymentGroup":{"type":"string","description":"Ödeme grubu. Varsayılan; PRODUCT.","enum":["PRODUCT","LISTING","SUBSCRIPTION"]},"callbackUrl":{"type":"string","description":"Ödeme akışında üye işyerine başarılı ve hatalı sonucu bildirmek üzere alınan URL adresi. Geçerli bir ssl sertifikasına sahip olmalıdır."},"enabledInstallments":{"type":"array","description":"Kullanılabilir taksit seçenekleri.","items":{"type":"integer"}},"buyer":{"description":"Alıcı Bilgileri","$ref":"#/components/schemas/BuyerCF"},"shippingAddress":{"description":"Teslimat Adresi. Sepetteki ürünlerden en az bir tanesi PHYSICAL ise zorunludur. Tüm ürünler VIRTUAL ise gönderilmesi gerekmez.","$ref":"#/components/schemas/Address"},"billingAddress":{"description":"Fatura Adresi","$ref":"#/components/schemas/Address"},"basketItems":{"type":"array","description":"Sepetteki ürünler.","items":{"$ref":"#/components/schemas/BasketItem"}},"paymentSource":{"type":"string","description":"Bu alan, partner firmalar tarafından iletilen ödeme kaynağı bilgisidir. Eğer bir altyapı sağlayıcısıysanız ve iyzico ile entegrasyon/iş birliğiniz bulunuyorsa bu parametreyi gönderebilirsiniz."}}},"BuyerCF":{"type":"object","required":["id","name","surname","identityNumber","email","gsmNumber","registrationAddress","city","country"],"properties":{"id":{"type":"string","description":"Müşteri ID’si."},"name":{"type":"string","description":"Ad."},"surname":{"type":"string","description":"Soyad."},"identityNumber":{"type":"string","description":"Kimlik numarası."},"email":{"type":"string","description":"E-posta."},"gsmNumber":{"type":"string","description":"Cep telefonu."},"registrationDate":{"type":"string","description":"Kayıt tarihi (YYYY-MM-DD hh:mm:ss)."},"lastLoginDate":{"type":"string","description":"Son giriş tarihi (YYYY-MM-DD hh:mm:ss)."},"registrationAddress":{"type":"string","description":"Kayıtlı adres."},"city":{"type":"string","description":"Şehir."},"country":{"type":"string","description":"Ülke."},"zipCode":{"type":"string","description":"Posta kodu."},"ip":{"type":"string","description":"IP adresi."}}},"Address":{"type":"object","required":["address","contactName","city","country"],"properties":{"address":{"type":"string","description":"Tam adres."},"zipCode":{"type":"string","description":"Posta kodu."},"contactName":{"type":"string","description":"İletişim adı."},"city":{"type":"string","description":"Şehir."},"country":{"type":"string","description":"Ülke."}}},"BasketItem":{"type":"object","required":["id","price","name","category1","itemType"],"properties":{"id":{"type":"string","description":"Ürün ID."},"price":{"type":"decimal","description":"Ürün fiyatı."},"name":{"type":"string","description":"Ürün adı."},"category1":{"type":"string","description":"Ana kategori."},"category2":{"type":"string","description":"Alt kategori (opsiyonel)."},"itemType":{"type":"string","description":"Ürün tipi.","enum":["PHYSICAL","VIRTUAL"]},"subMerchantKey":{"type":"string","description":"Hizmeti veren alt üye işyerine ait, alt üye işyeri anahtarı bilgisi. Standart iş modelinde gönderilmez. Sadece pazaryeri iş modelinde gönderilmesi gerekmektedir."},"subMerchantPrice":{"type":"string","description":"Alt üye işyerine aktarılacak tutar. Standart iş modelinde gönderilmez. Sadece pazaryeri iş modelinde gönderilmesi gerekmektedir."}}},"CFInitializeResponse":{"type":"object","properties":{"status":{"type":"string","description":"Gönderilen isteğin sonucu.","enum":["success","failure"]},"locale":{"type":"string","description":"Yanıt dili."},"systemTime":{"type":"integer","description":"İşlem zamanı (epoch ms)."},"conversationId":{"type":"string","description":"İstek ile eşleşen ID."},"token":{"type":"string","description":"Checkout form için oluşturulan tekil değer. Her istek için özel üretilir ve işyerine dönülür. Ödemenin sonucunu öğrenmek için zorunlu bir alandır."},"checkoutFormContent":{"type":"string","description":"Ödeme formunun HTML içeriği (Base64 kodlu)."},"paymentPageUrl":{"type":"string","description":"iyzico Ortak Ödeme Sayfası için dönen URL adresi."},"signature":{"type":"string","description":"İmza doğrulaması için kullanılabilecek signature değeri."}}},"ErrorResponse":{"type":"object","properties":{"status":{"type":"string","description":"Yapılan isteğin sonucu.","enum":["success","failure"]},"errorCode":{"type":"string","description":"Hata kodu."},"errorMessage":{"type":"string","description":"Hata mesajı."},"locale":{"type":"string","description":"Yanıt dili."},"systemTime":{"type":"integer","description":"İşlem zamanı (epoch ms)."},"conversationId":{"type":"string","description":"İstek ile eşleşen ID."}}}}}}
```

## Ödeme Formu (CF) sorgulama

> CF ödeme formu tamamlandıktan sonra, \`token\` ile sonuçları sorgular.

```json
{"openapi":"3.0.3","info":{"title":"Checkout Form (CF)","version":"1.0.1"},"servers":[{"url":"https://api.iyzipay.com","description":"iyzico API"}],"paths":{"/payment/iyzipos/checkoutform/auth/ecom/detail":{"post":{"summary":"Ödeme Formu (CF) sorgulama","description":"CF ödeme formu tamamlandıktan sonra, `token` ile sonuçları sorgular.","tags":["CheckoutForm"],"parameters":[{"$ref":"#/components/parameters/AuthHeader"},{"$ref":"#/components/parameters/ContentTypeHeader"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CFRetrieveRequest"}}}},"responses":{"200":{"description":"Başarılı yanıt (ödeme tamamlandı)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CFRetrieveResponse"}}}},"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,"description":"Authorization header, IYZWSv2 ile başlayan ve base64 formatında üretilmiş imzalı hash değeridir.","schema":{"type":"string"}},"ContentTypeHeader":{"name":"Content-Type","in":"header","required":true,"description":"Content-Type değeri.","schema":{"type":"string"}}},"schemas":{"CFRetrieveRequest":{"type":"object","required":["token"],"properties":{"locale":{"type":"string","description":"Dil kodu. Varsayılan; tr","enum":["tr","en"]},"conversationId":{"type":"string","description":"İstek/yanıt eşleştirme ID’si. İstekte gönderilen değer, response'da aynen geri döner."},"token":{"type":"string","description":"CF initialize yanıtından dönen token."}}},"CFRetrieveResponse":{"type":"object","properties":{"status":{"type":"string","description":"Yapılan isteğin sonucu.","enum":["success","failure"]},"locale":{"type":"string","description":"Yanıt dili."},"systemTime":{"type":"integer","description":"İşlem zamanı (epoch ms)."},"conversationId":{"type":"string","description":"İstek ile eşleşen ID."},"price":{"type":"decimal","description":"Sepet toplam tutarı."},"paidPrice":{"type":"decimal","description":"Tahsil edilen toplam tutar."},"installment":{"type":"integer","description":"Taksit sayısı."},"paymentId":{"type":"string","description":"Ödeme ID’si."},"fraudStatus":{"type":"integer","description":"Fraud filtrelerine göre ödeme durumu. Eğer ödemenin fraud risk skoru düşük ise ödemeye anında onay verilir, eğer fraud risk skoru yüksek ise ödeme işlemi reddedilir. Üye işyeri sadece 1 olan işlemlerde ürünü kargoya vermelidir, 0 olan işlemler için bilgilendirme beklemelidir.\n - 1: Onaylandı\n - 0: İncelemede\n - -1: Reddedildi\n","enum":[0,-1,1]},"merchantCommissionRate":{"type":"decimal","description":"Üye işyerinin uyguladığı vade/komisyon oranı. Örneğin price=100, paidPrice=110 ise üye işyeri vade/komisyon oranı %10’dur. Bilgi amaçlıdır."},"merchantCommissionRateAmount":{"type":"decimal","description":"Üye işyerinin uyguladığı vade/komisyon tutarı. Örneğin price=100, paidPrice=110 ise üye işyeri vade/komisyon tutarı 10’dur. Bilgi amaçlıdır."},"iyziCommissionRateAmount":{"type":"decimal","description":"Ödemeye ait iyzico işlem komisyon tutarı."},"iyziCommissionFee":{"type":"decimal","description":"Ödemeye ait iyzico işlem ücreti."},"cardType":{"type":"string","description":"Kart tipi.","enum":["CREDIT_CARD","DEBIT_CARD","PREPAID_CARD"]},"cardAssociation":{"type":"string","description":"Kart markası.","enum":["VISA","MASTER_CARD","AMERICAN_EXPRESS","TROY"]},"cardFamily":{"type":"string","description":"Kart ailesi.","enum":["Bonus","Axess","World","Maximum","Paraf","CardFinans"]},"binNumber":{"type":"string","description":"BIN (ilk 8 hane)."},"lastFourDigits":{"type":"string","description":"Kartın son 4 hanesi."},"basketId":{"type":"string","description":"Sepet ID."},"currency":{"type":"string","description":"Para birimi.","enum":["TRY","USD","EUR","NOK","CHF","GBP"]},"itemTransactions":{"type":"array","description":"Sepet öğelerine ait işlem kalemleri.","items":{"type":"object","properties":{"paymentTransactionId":{"type":"string","description":"Ödeme kırılımına ait id, üye işyeri tarafından mutlaka saklanmalıdır. Ödeme kırılımının iadesi, onayı, onay geri çekmesi ve iyzico ile iletişimde kullanılır. Tercihen itemId ile ilişkili bir şekilde tutulmalıdır."},"itemId":{"type":"string","description":"Üye işyeri tarafından iletilen, sepetteki ürüne ait id."},"price":{"type":"decimal","description":"Üye işyeri tarafındaki sepetteki ürüne ait tutar."},"paidPrice":{"type":"decimal","description":"Tahsilat tutarının kırılım bazındaki dağılımı. Üye işyeri tarafından mutlaka saklanmalıdır."},"transactionStatus":{"type":"integer","description":"Ödeme kırılımının durumu.\n- 0: Fraud kontrolünde\n- -1: Fraud kontrolünden sonra reddedildi\n- 1: Onaylandı. (Pazaryerinde 1 değeri Üye İşyeri Onayı Bekliyor Anlamına Gelir)\n- 2: Onaylandı (Pazaryeri Onay Verilmiş)\n","enum":[0,-1,1,2]},"blockageRate":{"type":"decimal","description":"Kırılım bazında üye işyeri blokaj oranı. iyzico – üye işyeri anlaşmasına göre, üye işyerine işlem bazında blokaj uygulayabilir. Bu blokaj üye işyeri fraud riskini önlemek içindir, blokaj süresi boyunca para iyzico’da tutulur, bu süre sonrasında üye işyerine gönderilir."},"blockageRateAmountMerchant":{"type":"decimal","description":"Kırılım bazında üye işyeri blokaj tutarının, üye işyerine yansıyan rakamı. Blokaj tutarı mümkün olduğunca üye işyerine yansıtılır. Eğer blokaj tutarı, üye işyeri tutarından daha büyükse bu durumda alt üye işyerine de yansıtılır."},"blockageResolvedDate":{"type":"string","description":"İşlem bazında blokaj çözülme tarihi. yyyy-MM-dd HH:mm:ss formatındadır, örn. 2015-10-19 14:36:52."},"iyziCommissionFee":{"type":"decimal","description":"iyzico işlem ücretinin kırılım bazında dağılmış tutarı."},"iyziCommissionRateAmount":{"type":"decimal","description":"iyzico işlem komisyon tutarının kırılım bazında dağılmış tutarı."},"merchantCommissionRate":{"type":"decimal","description":"Üye işyerinin uyguladığı vade/komisyon oranının kırılım bazında dağılmış oranı."},"merchantCommissionRateAmount":{"type":"decimal","description":"Üye işyerinin uyguladığı vade/komisyon tutarıın, kırılım bazında dağılmış tutarı."},"merchantPayoutAmount":{"type":"decimal","description":"Bu kırılım için, iyzico işlem ücreti, komisyon tutarı ve blokajlar düşüldükten sonra üye işyerine gönderilecek tutar."},"convertedPayout":{"type":"object","description":"Kırılım bazında, kur çevrimi sonrası hesaplamalar.","properties":{"paidPrice":{"type":"decimal","description":"Tahsilat tutarının kırılım bazındaki dağılımı. Üye işyeri tarafından mutlaka saklanmalıdır."},"iyziCommissionFee":{"type":"decimal","description":"iyzico işlem ücretinin kırılım bazında dağılmış tutarı."},"iyziCommissionRateAmount":{"type":"decimal","description":"iyzico işlem komisyon tutarının kırılım bazında dağılmış tutarı."},"blockageRateAmountMerchant":{"type":"decimal","description":"Kırılım bazında üye işyeri blokaj tutarının, üye işyerine yansıyan rakamı. Blokaj tutarı mümkün olduğunca üye işyerine yansıtılır. Eğer blokaj tutarı, üye işyeri tutarından daha büyükse bu durumda alt üye işyerine de yansıtılır."},"merchantPayoutAmount":{"type":"decimal","description":"Bu kırılım için, iyzico işlem ücreti, komisyon tutarı ve blokajlar düşüldükten sonra üye işyerine gönderilecek tutar."},"iyziConversationRate":{"type":"decimal","description":"Kur oranı."},"iyziConversationRateAmount":{"type":"decimal","description":"Kur oranı sonucu tutar."}}}}},"currency":{"type":"string","description":"Ödemenin alındığı para birimi."}},"authCode":{"type":"string","description":"Bankadan dönen authCode değeri."},"phase":{"type":"string","description":"Ödeme Fazı."},"hostReference":{"type":"string","description":"Ödemeye ilişkin banka tarafından verilen hostReference değeri."},"signature":{"type":"string","description":"İmza doğrulaması için kullanılabilecek signature değeri."},"token":{"type":"string","description":"CheckoutForm Token Değeri."},"callbackUrl":{"type":"string","description":"Dönüş URL’si."},"paymentStatus":{"type":"string","description":"Ödeme sonucu."}}},"ErrorResponse":{"type":"object","properties":{"status":{"type":"string","description":"Yapılan isteğin sonucu.","enum":["success","failure"]},"errorCode":{"type":"string","description":"Hata kodu."},"errorMessage":{"type":"string","description":"Hata mesajı."},"locale":{"type":"string","description":"Yanıt dili."},"systemTime":{"type":"integer","description":"İşlem zamanı (epoch ms)."},"conversationId":{"type":"string","description":"İstek ile eşleşen ID."}}}}}}
```
