YKB Karekod Doğrulama

Bu servis Yapı Kredi Bankası QR (karekod) ile ödeme yapılması sırasında yetkilendirme yapan servistir.

Servise gönderilmesi gereken parametreler şu şekildedir:
Parametre ismi Tip Uzunluk Zorunluluk Örnek Değer Açıklama
MemberId long 16 Evet 1 Her zaman 1
MerchantId long 16 Evet 2 Sizin için oluşturulan Üye işyeri ID'si
CustomerId String 100 Hayır test@test.com Üye işyeri tarafında kayıtlı olan kullanıcının tekil bilgisidir. İster bir id ister bir email olabilir
UserCode String 40 Evet test Kullanıcı kodu. Test olarak girilebilir.
TxnType String 20 Evet Auth İşlem Tipi. Gönderilebilecek parametreler aşağıdadır: Auth --> Satış, PreAuth --> Ön Provizyon, PostAuth --> Provizyon kapama, Void --> İptal, Refund --> İade, Inquiry --> Ödeme sorgulama, QrAuth --> QR kod ile ödeme, PointAuth --> Puanlı Ödeme
InstallmentCount String 2 Hayır 1 Taksit sayısını ifade eder. İşlem taksitli işlem olacaksa bu sayı 1 den büyük olmalıdır. Eğer 1 den küçük veya numerik olmayan bir değer gönderilirse 0 kabul edilir.
Currency String 3 Evet 949 Kur bilgisi. (TL:949, USD:840, EUR:978, GBP:826, JPY:392, RUB:643)
OkUrl String 2048 Hayır https:/.... İşlem başarılı olduğunda üye işyerine dönülecek url bilgisi.
FailUrl String 2048 Hayır https:/.... İşlem başarısız olduğunda üye işyerine dönülecek url bilgisi.
OrderId String 2048 Hayır order1:/... Üye işyeri tarafından üretilen işleme özgü bir numaradır. Doldurulmaz ise sistem her işlem için kendisi de otomatik olarak bir sipariş numarası üretmektedir.
TotalAmount String 19 Evet 9950 İşlem tutarı 9950 99 TL 50 kuruş demektir, virgül veya noktalama içermez küsürat için 2 hanedir. 1 TL için 100 gönderilmelidir.
merchantLogoUrl String 2048 Evet https:/.... Üye işyeri logo adresi
Rnd String 64 Evet abcd Hash hesaplamasında kullanılan random numaradır.
Hash String 2048 Evet abcdefgh İşlemin güvenliği için oluşturulan hash bilgisidir.
Lang String 2 Hayır TR Kullanıcı dil bilgisi. (Türkçe: TR, İngilizce: EN)
paymentSystem String 2048 Evet - İşlemin ödeme sistemi.
description String 2 Hayır - İşlem açıklaması
Servisten dönen parametreler şu şekildedir:
Parametre ismi Tip Uzunluk Açıklama
fail boolean - false
statusCode integer 200 Cevap kodu. 200 --> Başarılı , Diğerleri başarısız
result string 64 Cevap açıklaması
count string 16 İşlem deneme sayısı
errorCode string 16 İşlem hata kodu
errorDescription string 64 İşlem hata açıklaması
responseCode string 16 İşlem cevap kodu
responseData string 2048 İşlem cevap verisi
dataLength string - Cevap verisi uzunluğu
Örnek JSON formatında istek ve cevaplar aşağıdadır:

HTTP Method: POST

Content-Type: application/json

URL: https://ppgsecurity-test.birlesikodeme.com:55002/api/ppg/Securities/AuthenticationQrCode

*Test ortam için bu adresi kullanabilirsiniz. Prod ortam için size URL bilgisi entegrasyon sürecinde iletilecektir.

Request
{
  "memberId": 0,
  "merchantId": 0,
  "customerId": "string",
  "userCode": "string",
  "txnType": "string",
  "installmentCount": "string",
  "currency": "string",
  "okUrl": "string",
  "failUrl": "string",
  "orderId": "string",
  "totalAmount": "string",
  "merchantLogoUrl": "string",
  "rnd": "string",
  "hash": "string",
  "paymentSystem": "string",
  "description": "string"
}
Response
{
  "fail": false,
  "statusCode": 200,
  "result": null,
  "count": 0,
  "errorCode": null,
  "errorDescription": null,
  "responseCode": null,
  "responseData": null,
  "dataLength": null
}

Gelen Token bilgisi diğer servisleri çağırırken Header’da kullanılacaktır. Authorization keyinin value kısmında bearer yazıp boşluk bırakıp authorization servisinden dönen token bilgisi eklenecektir.
Header: Key: Authorization Value: bearer ***