Ödeme

3D doğrulama olmadan ödeme servisimizi kullanarak tek çekim, taksitli ve saklı kart ile ödeme işlemlerini gerçekleştirebilirsiniz. Kredi kartından direkt ödeme tutarı çekilir, 3D doğrulama yapılmaz.

Ödeme servisini kullanabilmeniz için secret_key ile basic authentication yapmalısınız. Bakınız

Bu serviste 3D doğrulama yapılmadığı için bu servisi kullanma yetkiniz olmalı. Bu konu hakkında satış temsilciniz ile temasa geçebilirsiniz.

https://api.paynet.com.tr/v2/transaction/payment

İstek Parametreleri
Dönüş Parametreleri
Request
Response
Service Url
İstek Parametreleri

Parametre

Tip

Zorunlu

Açıklama

amount

string

Evet

Kredi kartından çekilecek tutar. Ondalık ayıraç olarak virgül (,) kullanılmaktadır.

reference_no

string

Evet

Ödeme işleminin ilişkili olduğu referans numarası. Tekil (unique) bir veri olmalı. ( örn: sipariş numarası )

agent_reference_no

string

Hayır

Ana firma bayi referans kodu

domain

string

Evet

İşlemin yapıldığı uygulamanın domain bilgisi. ( örn: www.acme.com )

card_holder

string

Hayır

Kart sahibi bilgisi.

Saklı kart ile işlem yapılmıyorsa zorunlu.

pan

string

Hayır

Kart numarası.

Saklı kart ile işlem yapılmıyorsa zorunlu.

month

int

Hayır

Son kullanma tarihi Ay bilgisi. ( örn: 8,12 )

Saklı kart ile işlem yapılmıyorsa zorunlu.

year

int

Hayır

Son kullanma tarihi Yıl bilgisi. ( örn: 2020, 2030 ) Saklı kart ile işlem yapılmıyorsa zorunlu.

cvc

string

Hayır

Kart güvenlik kodu.

Saklı kart ile işlem yapılmıyorsa zorunlu.

card_hash

string

Hayır

Saklı kartın token bilgisi. Kart bilgileri girilmemiş ise bu bilgi zorunlu.

card_holder_phone

string

Hayır

Kart sahibinin telefon numarası.

card_holder_mail

string

Hayır

Kart sahibi email adresi.

description

string

Hayır

İşlem ile ilgili açıklama alanı.

instalment

int

Hayır

İşlemin kaç taksit yapılacağı bilgisi. Değer gönderilmezse tek çekim uygulanır.

agent_id

string

Hayır

Eğer alt bayileriniz var ise işlemin hangi bayi üzerinden geldiğini bu alana bayi kodu göndererek yapabilirsiniz.

company_amount

string

Hayır

Eğer alt bayileriniz var ise işlemin ne kadarının sizin hesabınıza aktarılacağını belirleyebilirsiniz. Ondalık ayıraç olarak virgül (,) kullanılmaktadır.

add_commission

bool

Hayır

İşlem komisyonunun karttan çekilecek tutar'a eklenmesini istiyorsanız "true" gönderebilirsiniz.

transaction_type

int

Hayır

Satış ya da ön provizyon. 1 satış, 3 ön provizyon. Varsayılan satış işlemidir.

ratio_code

string

Hayır

Paynet.com.tr yönetim ekranlarında “API oran tanımları” sayfasından tanımlayabileceğiniz oran tablolarının “oran kodunu” bu alanda gönderebilirsiniz. Gönderdiğiniz oran koduna ait oran tablosu üzerinden komisyon hesaplaması yapılır. Bu sayede API üzerinden istediğiniz oranlar ile işlem yapabilirsiniz.

save_card

bool

Hayır

Ödeme işlemi ile birlikte kredi kart numarasının da saklanması istiyorsanız bu parametreyi true yollayabilirsiniz. Kart saklama işlemi yapıyorsanız card_desc zorunlu, card_owner_id ya da user_unique_id değerlerinden en az birini göndermeniz zorunlu.

card_desc

string(100)

Hayır

Kart saklama işlemi yapılıyor ise bu alan zorunludur.

user_unique_id

string

Hayır

Üye iş yeri tarafından verilen kullanıcıya özgü benzersiz id. İlk defa kart saklama yapılıyorsa zorunlu. İlk kart saklama tamamlandıktan sonra Paynet tarafından bu kullanıcıya benzersiz bir değer atanır( card_owner_id). Bu değeri kendi sisteminizde kullanıcınız ile ilişkilendirerek saklamalısınız. Daha sonra bu kullanıcıya yapılan kart saklama işlemlerinde user_unique_id yerine Paynet tarafından verilen card_owner_id değişkenini kullanmalısınız.

card_owner_id

string

Hayır

İlk defa kart saklama yapıldıktan sonra, Paynet tarafından user_unique_id’ye göre oluşturulan kart sahibinin benzersiz bilgisi. Bir sonraki kart saklama ve karttan ödeme alma işlemlerinde bu değer kullanılır.

user_gsm_no

string

Hayır

Kart saklama işleminde ek olarak OTP kontrolü yapmak isterseniz bu parametre kullanılır. Daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz.

subscription_id

string

Hayır

Düzenli ödeme kodu, mevcut bir düzenli ödemenize manuel ödeme almak istediğinizde invoice_no ile beraber kullanılır.

invoice_no

string

Hayır

Düzenli ödeme fatura numarası.

ratio_code_method

char

Hayır

Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz.

merge_option

bool

Hayır

Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz.

pos_type

int

Hayır

Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz.

approved_card

bool

Hayır

Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz.

user_id

string

Hayır

Kullanıcı kodu

dont_apply_campaign

bool

Hayır

İşlem esnasında herhangi bir artı taksitten yararlanmak istemiyorsanız bu parametreyi true olarak göndermelisiniz, default false'tur.

is_escrow

bool

Hayır

Yapılan işlemin ana firma onaylı gerçekleşmesini istiyorsanız "true" göndermeniz gerekmektedir. Parametre gönderilmezse false kabul edilir.

agent_customer_name

string

Hayır

Buraya yazacağınız değer slipte "Müşteri Adı" alanında görünecektir. Müşterinize göstermek istediğiniz firma adınızı yazabilirsiniz

iban

string

Hayır

Başında ülke kodu olacak şekilde (örn "TR") toplamda 26 karakter olacak şekilde girilmelidir.

Dönüş Parametreleri

Parametre

Tip

Açıklama

id

int

tekil paynet işlem id

xact_id

string

paynet işlem id'nin hash değeri

xact_date

DateTime

işlemin tarihi

transaction_type

char

işlem tipi 1: satış, 2: ön provizyon

pos_type

int

pos tipi

agent_id

string

bayi kodu

user_id

string

kullanıcı kodu

email

string

mail adresi

phone

string

telefon bilgisi

bank_id

string

Banka kodu

bank_name

string

Banka adı

instalment

int

taksit bilgisi

ratio

float

işlem komisyon oranı

card_no_masked

string

maskeli kart bilgisi

card_holder

string

kart sahibi

amount

decimal

brüt işlem tutarı

net_amount

decimal

komisyon hariç tutar

comission

decimal

komisyon tutarı

comission_tax

decimal

Hizmet bedeli vergisi

currency

string

para birimi

bank_authorization_code

string

banka onay kodu

bank_reference_code

string

banka referans kodu

bank_order_id

string

banka sipariş numarası

is_succeed

bool

işlemin başarılı ya başarısız olduğu bilgisi. true ise ilgili karttan tutar tahsil edilmiş demektir.

code

string

http status kodu

message

string

işlem sonuç mesajı

paynet_error_id

string

paynet hata kodu

paynet_error_message

string

paynet hata açıklaması

bank_error_id

string

bankadan bildirilen hata kodu

bank_error_message

string

bankadan bildirilen hata mesajı

bank_error_short_desc

string

bankadan bildirilen hata mesajı

bank_error_long_desc

string

bankadan bildirilen hata mesajı

reference_no

string

request sırasında gönderilen referans kodu

xact_transaction_id

string

O işlemin guid işlem kodu, bu işlemin iptal, iade işlemlerinde bu alan aynı guid değerini alır.

campaign_url

string

Bazı kart progamlarında + taksit ve taksit erteleme seçimi işlem sonrası başka bir uygulamada seçilebiliyor.

end_user_comission

decimal

ratio_code kullanımında komisyon değeri

end_user_ratio

float

ratio_code kullanımında komisyon oranı

ratio_code

string

oran kodu

ratio_code_method

string

oran kodu methodu

is_save_card_succeed

bool

kart saklama işlemi yapılıyorsa kart saklama sonucu

save_card_result_message

string

kart saklama mesajı

card_owner_id

string

kart saklamada bir sonraki sefer kullanılacak id

user_unique_id

string

müşterinizin benzersiz numarası

card_hash

string

token edilmiş kart bilgisi

card_bank_id

string

saklı kart bankası

card_logo_url

string

saklı kart logosu

object_name

string

dönüş yapılan API'nin nesne adı

company_cost_ratio

float

Ana firma hizmet bedeli değeri

company_commission

decimal

Bu işlem sonucunda ana firmaya kesilecek hizmet bedeli tutarı

company_commission_with_tax

decimal

Bu işlem sonucunda ana firmaya kesilecek KDV'li hizmet bedeli tutarı

company_net_amount

decimal

Bu işlem sonucunda ana firmaya ödenecek net tutar

plus_installment

string

Artı taksit sayısı

card_type

char

Kredi kartı. Bakınız

card_brand_name

string

Kart bankası markası (VISA, MASTERCARD, AMEX)

Request
{
"amount": "20,50",
"reference_no": "REF1000",
"domain": "paynet.com.tr",
"card_holder": "Paynet A.Ş",
"pan": "1212121212121212",
"month": "8",
"year": "2026",
"cvc": "000"
}
Response
{
"id": 20490**,
"xact_id": "**_EAAAAEBAN9wUFv0GvZ37KeP0ggCz*SafLumQCPN2Z1EDrs**",
"xact_date": "2018-12-14T13:33:53.1227309+03:00",
"transaction_type": 1,
"pos_type": 6,
"agent_id": "20077",
"user_id": "PaynetApi",
"email": null,
"phone": null,
"instalment": 0,
"ratio": 0.02,
"card_no_masked": "435508******4358",
"card_holder": "TEST TEST",
"amount": 20.50,
"net_amount": 12.25,
"comission": 0.25,
"comission_tax": 0,
"currency": "TRY",
"bank_id": "ZDGR",
"bank_name": "Maximum",
"bank_authorization_code": "aut-7044",
"bank_reference_code": "ref-7044",
"bank_order_id": "order-7044",
"is_succeed": true,
"paynet_error_id": "",
"paynet_error_message": "",
"bank_error_id": "",
"bank_error_message": "",
"bank_error_short_desc": "",
"bank_error_long_desc": "",
"reference_no": "deneme11",
"xact_transaction_id": "20490**",
"campaign_url": "",
"end_user_comission": 0,
"end_user_ratio": 0,
"ratio_code": "",
"ratio_code_method": "",
"is_save_card_succeed": false,
"save_card_result_message": "",
"card_owner_id": "",
"user_unique_id": "",
"card_hash": "",
"card_bank_id": "",
"card_logo_url": "",
"company_cost_ratio":"",
"company_commission":"",
"company_commission_with_tax":"",
"company_net_amount":"",
"plus_installment":"",
"card_type":"",
"card_brand_name":"",
"object_name": "payment_response",
"code": 0,
"message": "Başarılı İşlem"
}
Service Url

Sistem

URL

Canlı sistem

https://api.paynet.com.tr/v2/transaction/payment

Test sistemi

https://pts-api.paynet.com.tr/v2/transaction/payment

İşlem sonucunun başarılı olup olmadığını is_succeed parametresini kontrol ederek anlayabilirsiniz. is_succeed parametresi true ise işlem başarılı demektir. Hata kodları daha detaylı bilgi için.

connection timeout ya da execution time out gibi sebeplerden dolayı cevap alamıyorsanız, aynı reference_no ile cevap alana kadar işleme devam edebilirsiniz. Sistem aynı reference_no ile daha önceden başarılı bir işlem var ise o işlemi döndürür. Bu durumda sonuç kodu 0 yerine 100 döner, sonuç mesajı da “Önceki Başarılı İşlem” olarak döner.

Kart saklama süreci ile ilgili dahat detaylı bilgi için Bakınız