Ödeme Alma

URL

Ödeme almak için kullanılan endpoint ve http metod bilgisi aşağıda verilmiştir.

HTTP Metod URL
POST /payment/v1/card-payments

İstek Parametreleri

Ödeme gerçekleştirmek için yapılacak isteklerde gönderilmesi beklenen parametreler aşağıdaki tablo ve alt başlıklar altında listelenmiştir.

Parametre Adı Tipi Zorunlu Açıklama
conversationId string Hayır İstekle beraber gönderilip, cevapla birlikte alınabilecek, "bumerang" değer. Farklı istekleri birbirleriyle ilişkilendirmek için kullanılabilir. Genellikle üye işyerinin ödemeye ilişkin sipariş numarası kullanılır
price decimal Evet Toplam ödeme tutarı. Sepetteki ürün/hizmet tutarları toplamının bu tutara eşit olması gerekmektedir
paidPrice decimal Evet Komisyon ve indirim gibi farklar dahil edilerek hesaplanan, müşterinin ödeyeceği toplam tahsilat tutarı. Tamamı ya da bir kısmı cüzdandan tahsil edilen ödemelerde cüzdandan tahsil edilecek tutar da bu tutara dahildir
walletPrice decimal Hayır buyerId parametresinde belirtilen alıcının cüzdanından tahsil edilecek tutar. Kısmen ya da tamamen cüzdandan tahsil edilecek ödemelerde gönderilmesi zorunludur. Tamamı karttan tahsil edilecek ödemelerde ya da bir buyerId bulunmadığı durumda 0 olarak gönderilebilir. (Varsayılan: 0)
installment integer Evet Ödemenin tahsil edileceği taksit sayısı. Tek çekim için 1 olarak gönderilebilir. Alabileceği degerler 1, 2, 3, 6, 9 ve 12'dir
buyerId long Hayır Ödemenin ilişkilendirildiği alıcı ID'si. Üye işyerinin kendi sistemlerindeki ID değerini değil, ÖderoPay sistemlerindeki ID değerini ifade eder
currency Currency Evet bkz: Para Birimleri Ödemenin tahsil edileceği para birimi
paymentGroup PaymentGroup Evet bkz: Ödeme Grupları
paymentPhase PaymentPhase Hayır bkz: Ödeme Fazları
card Card Hayır (bkz. Kart Bilgileri) Tahsilatın gerçekleştirileceği kart bilgileri. Tamamı cüzdandan tahsil edilecek ödemelerde (yani paidPrice'in walletPrice'a eşit olduğu ödemeler) gönderilmesi zorunlu değildir
posAlias string Hayır TOKENGATE ödemeleri için kullanılır, doldurulması durumunda ödeme bu pos kullanılarak yapılacaktır. bkz. Gateway Ödemeleri
items PaymentItem[] Evet (bkz. Ödeme Kırılım Bilgileri) Ödemeye ilişkin kırılım bilgileri. En az bir kırılım gönderilmesi ve gönderilen kırılımların tutarlarının toplamının price alanına eşit olması zorunludur

Kart Bilgileri

Tamamı ya da bir kısmı kartla yapılan ödemelerde kart bilgisi gönderilmesi zorunludur. Bu bilgiler bir kredi kartı, debit kart ya da prepaid kartın bilgileri olabileceği gibi, daha önceden saklanmış bir karta ilişkin tanımlayıcı bilgiler de olabilir.

Gönderilen kart bilgilerindeki cardUserKey alanı doluysa Saklı Kart Bilgileri bölümündeki alanlar geçerlidir, diğer durumlar için bkz. Kredi Kartı, Debit Kart ya da Prepaid Kart Bilgileri.

Kredi Kartı, Debit Kart ya da Prepaid Kart Bilgileri

Parametre Adı Tipi Zorunlu Açıklama
cardHolderName string Evet Kart sahibinin adı/soyadı
cardNumber string Evet Kart numarası
expireYear string Evet Kartın son kullanım tarihinin yılı
expireMonth string Evet Kartın son kullanım tarihinin ayı
cvc string Evet Kart güvenlik kodu
storeCardAfterSuccessPayment boolean Hayır Ödeme başarıyla gerçekleşirse kart kaydedilsin (Varsayılan: false)
cardAlias string Hayır Başarılı ödemeden sonra kart kaydedilecekse karta verilecek isim

Saklı Kart Bilgileri

Parametre Adı Tipi Zorunlu Açıklama
cardUserKey string Evet Saklı kart anahtarı
cardToken string Evet Saklı kart kodu

Ödeme Kırılım Bilgileri

Tüm ödemelerde 1 ya da 1'den fazla kırılım gönderilmesi zorunludur. Gönderilen kırılımların price alanlarının toplamı, ödemenin price alanındaki değere eşit olmalıdır.

Parametre Adı Tipi Zorunlu Açıklama
name string Evet Ödemeye ilişkin ürün ya da hizmetin adı
price decimal Evet İlgili ürün ya da hizmetin sepet tutarı
externalId string Hayır İlgili ürün ya da hizmeti ifade eden dış ID değeri. Genellikle üye işyeri sisteminde bu kırılıma ilişkin ID değeri kullanılır
subMerchantId long Hayır Ürün ya da hizmeti sağlayan alt üye işyeri ID'si
subMerchantPrice decimal Hayır Ödemeden alt üye işyerine aktarılacak tutar. subMerchantId alanı doluysa gönderilmesi gerekmektedir

Dönüş Parametreleri

Ödeme işleminin sonucunda dönen parametreler de API dokümantasyonu giriş sayfasındaki Dönüş Formatları bölümünde belirtilen kurallara tabidir. Sistemsel ya da kurgusal bir hata bulunmadığı durumda data parametresinde dönen objenin alt parametreleri aşağıdaki gibidir:

Parametre Adı Tipi Her Zaman Mevcut Açıklama
conversationId string Hayır Üye işyeri tarafından ödeme isteği içerisinde gönderilen conversationId değeri
id long Evet Ödemenin ID'si
createdDate date Evet Ödemenin gerçekleştirildiği tarih
price decimal Evet Ödemenin toplam sepet tutarı
paidPrice decimal Evet Müşterinin ödediği toplam tahsilat tutarı. Tamamı ya da bir kısmı cüzdandan tahsil edilen ödemelerde cüzdandan tahsil edilecek tutar da bu tutara dahildir
walletPrice decimal Evet Cüzdandan tahsil edilen tutar
currency string Evet Ödemeye ilişkin para birimi
buyerId long Hayır Alıcı üyeyle ilişkilendirilmiş ödemelerde yer alan, ilgili üyenin ID'sini belirten değer
installment integer Evet Ödemenin toplam taksit sayısı. Alabileceği degerler 1, 2, 3, 6, 9 ve 12'dir
paymentType PaymentType Evet bkz: Ödeme Tipleri
paymentGroup PaymentGroup Evet bkz: Ödeme Grupları
paymentStatus PaymentStatus Evet bkz: Ödeme Durumu
paymentPhase PaymentPhase Evet bkz: Ödeme Fazları
isThreeDS boolean Evet Ödemenin 3D Secure ile gerçekleştirilip gerçekleştirilmediği
merchantCommissionRate decimal Evet Üye işyeri tarafından ödemeye uygulanan komisyon oranı
merchantCommissionRateAmount decimal Evet Üye işyeri tarafından ödemeden alınan toplam komisyon tutarı. paidPrice ile price arasındaki farka eşittir
pfCommissionRateAmount decimal Evet Ödeme aracı kuruluşu olarak ÖderoPay'in ödemeden aldığı komisyon tutarı
cardUserKey string Hayır İsteği yapılırken kart bilgileri alanındaki storeCardAfterSuccessPayment alanı true gönderilen ödemelerde yer alır. Başarılı ödeme sonrası kaydedilen kartın saklı kart anahtarını ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
cardToken string Hayır İsteği yapılırken kart bilgileri alanındaki storeCardAfterSuccessPayment alanı true gönderilen ödemelerde yer alır. Başarılı ödeme sonrası kaydedilen kartın saklı kart kodunu ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
paidWithStoredCard boolean Evet Ödemenin saklı kartla gerçekleştirilip gerçekleştirilmediğini belirtir
binNumber string Hayır Saklı kartla yapılmayan ve tamamı ya da bir kısmı karttan tahsil edilen ödemelerde yer alır. Kartın ilk 6 hanesini belirtir
lastFourDigits string Hayır Saklı kartla yapılmayan ve tamamı ya da bir kısmı karttan tahsil edilen ödemelerde yer alır. Kartın son 4 hanesini belirtir
cardType CardType Hayır (bkz: Kart Tipleri) Saklı kartla yapılmayan ve tamamı ya da bir kısmı karttan tahsil edilen ödemelerde yer alır. Kartın tipini ifade eder
cardAssociation CardAssociation Hayır (bkz: Kart Kuruluşları) Saklı kartla yapılmayan ve tamamı ya da bir kısmı karttan tahsil edilen ödemelerde yer alır. Kartı sağlayan kart kuruluşuunu ifade eder
cardBrand string Hayır Saklı kartla yapılmayan ve tamamı ya da bir kısmı karttan tahsil edilen ödemelerde yer alır. Ödeme için yapılan istekte kart bilgilerinde yer alan cardBrand ile aynı değeri taşır
paymentTransactions PaymentTransaction[] Evet bkz: Ödeme Kırılımı Dönüş Bilgileri

Ödeme Kırılımı Dönüş Bilgileri

Ödeme isteği yapılırken gönderilen kırılım bilgileri ile, ödemenin bu kırılımlar bazındaki fiyatlama ve para gönderimi bilgilerini içerir

Parametre Adı Tipi Her Zaman Mevcut Açıklama
id long Evet Ödeme kırılımının ID'si
externalId string Hayır Ödeme isteğinde gönderilen, ödeme kırılımına ilişkin dış ID değeri
name string Evet Ödeme isteğinde gönderilen, ödeme kırılımının ifade ettiği ürün ya da hizmetin adı
transactionStatus TransactionStatus Evet (bkz: Para Gönderimi Durumları) Kırılıma ilişkin para gönderim durumunu ifade eden değer
price decimal Evet Ödeme kırılımının sepetteki tutarı
paidPrice decimal Evet Ödeme için tahsil edilen toplam tutarın, ilgili kırılıma düşen payı
walletPrice decimal Evet Ödeme için cüzdandan tahsil edilen toplam tutarın, ilgili kırılıma düşen payı
merchantCommissionRate decimal Evet Üye işyeri tarafından ödemeye uygulanan komisyon oranı
merchantCommissionRateAmount decimal Evet Üye işyeri tarafından ödemedem alınan komisyon tutarından ödeme kırılımına düşen pay
pfCommissionRateAmount decimal Evet Ödeme aracı kuruluşu olarak ÖderoPay'in ödemeden aldığı komisyon tutarından ödeme kırılımına düşen pay
merchantPayoutAmount decimal Evet Ödemeye ilişkin üye işyerine gönderilecek olan paranın, ilgili kırılıma düşen payı
subMerchantId long Hayır Ödeme kırılımının ilişkili olduğu alt üye işyeri ID'si
subMerchantName string Evet Ödeme kırılımının bir alt üye işyeriyle ilişkili olduğu durumda yer alır. İlgili üye işyerinin adını içerir
subMerchantPrice decimal Evet Ödeme kırılımının bir alt üye işyeriyle ilişkili olduğu durumda yer alır. Ödeme tutarından alt üye işyerine aktarılacak toplam tutarın, ilgili kırılıma düşen payıdır
subMerchantPayoutRate decimal Evet Ödeme kırılımının bir alt üye işyeriyle ilişkili olduğu durumda yer alır. Ödemeye ilişkin alt üye işyerine gönderilecek olan paranın, üye işyerine gönderilecek paraya olan oranıdır
subMerchantPayoutAmount decimal Evet Ödeme kırılımının bir alt üye işyeriyle ilişkili olduğu durumda yer alır. Ödemeye ilişkin alt üye işyerine gönderilecek olan tutarı ifade eder
blockageResolvedDate date Evet Para gönderimi için gereken blokaj süresinin sonlanacağı tarih
payout Payout Evet (bkz: Ödeme Kırılımı Para Gönderim Dağılımı) Ödeme kırılıma ilişkin para gönderim tutarlarının üye işyeri, alt üye işyeri ve ÖderoPay arasındaki dağılımını içerir

Ödeme Kırılımı Para Gönderim Dağılımı

Ödemeye ilişkin olarak yapılacak para gönderiminin, bir kırılım özelindeki payının üye işyeri, alt üye işyeri ve ÖderoPay arasındaki dağılımını içerir.

Para dağıtımının para birimi her zaman TRY'dir, dolayısı ile diğer para birimleri ile yapılan ödemelerde kur farkı oluşacaktır. Bu farklar pfConversionRate ve pfConversionRateAmount alanlarında belirtilmiştir.

Parametre Adı Tipi Her Zaman Mevcut Açıklama
paidPrice decimal Evet Ödeme için tahsil edilen toplam tutarın, ilgili kırılıma düşen payı
currency Currency Evet bkz: Para Birimleri
merchantPayoutAmount decimal Evet Ödemeye ilişkin üye işyerine gönderilecek olan paranın TL cinsinden değerinin, ilgili kırılıma düşen payı
subMerchantPayoutAmount decimal Evet Ödemeye ilişkin alt üye işyerine gönderilecek olan paranın TL cinsinden değerinin, ilgili kırılıma düşen payı
pfCommissionRateAmount decimal Evet Ödemeye ilişkin aracı kuruluşu olarak ÖderoPay'ine gönderilecek olan paranın TL cinsinden değerinin, ilgili kırılıma düşen payı
pfConversionRate decimal Evet TRY'den farklı bir para birimiyle yapılan ödemelerin para gönderimlerinde ÖderoPay'in baz aldığı kur farkı oranı. TRY ödemelerde 0'dır
pfConversionRateAmount decimal Evet TRY'den farklı bir para birimiyle yapılan ödemelerin para gönderimlerinde ÖderoPay'in aldığı kur farkı. TRY ödemelerde 0'dır

Örnek Kodlar

Açık kaynak kodlu ÖderoPay API client'larındaki örnek kodları inceleyebilirsiniz