Giter Site home page Giter Site logo

Comments (5)

nuryagdym avatar nuryagdym commented on August 20, 2024 2

Merhabalar,

Kodu degistirmeden de kart limit yetersiz oldugunda kutuphane basarisiz olarak donus yapmasi gerekiyor.

Bazi Gatewaylerin test ortami stabil degil, canli ortamda denemekte fayda var, belki kartinizi verdigi bankanin telefon uygulamasindan online alisveris limitinizi az bir miktar belirleyip deneme yapabilirsiniz.

Dedigim gibi, kart limiti yetersiz oldugunda kutuphane basarili donuyorsa, dedigim verilerin icerigi lazim olacak.

from pos.

nuryagdym avatar nuryagdym commented on August 20, 2024 1

Merhabalar, bildirim icin tesekkurler.

  1. VakifBankPos artik deprecated yeni versiyonda kaldirilacak. Yerine PayFlexV4Pos kullanmaniz gerekiyor. Sadece sinif ismini degistirmeniz yeterli.
  2. 'success1' => [
    'threeDResponseData' => [
    'MerchantId' => '000000000111111',
    'SubMerchantNo' => '0',
    'SubMerchantName' => null,
    'SubMerchantNumber' => null,
    'PurchAmount' => 100,
    'PurchCurrency' => '949',
    'VerifyEnrollmentRequestId' => 'order-id-123',
    'SessionInfo' => ['data' => 'sss'],
    'InstallmentCount' => null,
    'Pan' => '5555444433332222',
    'Expiry' => 'cv',
    'Xid' => 'xid0393i3kdkdlslsls',
    'Status' => 'Y',
    'Cavv' => 'AAABBBBBBBBBBBBBBBIIIIII=',
    'Eci' => '02',
    'ExpSign' => null,
    'ErrorCode' => null,
    'ErrorMessage' => null,
    ],
    'paymentData' => [
    'MerchantId' => '000000000111111',
    'TerminalNo' => 'VP999999',
    'TransactionType' => 'Sale',
    'TransactionId' => '20230309B838',
    'ResultCode' => '0000',
    'ResultDetail' => 'İŞLEM BAŞARILI',
    'CustomItems' => [],
    'InstallmentTable' => null,
    'CampaignResult' => null,
    'AuthCode' => '822641',
    'HostDate' => '20220404123456',
    'Rrn' => '209411062014',
    'CurrencyAmount' => 100,
    'CurrencyCode' => '949',
    'OrderId' => 'order-id-123',
    'TLAmount' => 100,
    'ECI' => '02',
    'ThreeDSecureType' => '2',
    'TransactionDeviceSource' => '0',
    'BatchNo' => '1',
    ],
    'expectedData' => [
    'cavv' => 'AAABBBBBBBBBBBBBBBIIIIII=',
    'md_status' => 'Y',
    'md_error_message' => null,
    'transaction_security' => null,
    'trans_id' => '20230309B838',
    'ref_ret_num' => '20230309B838',
    'proc_return_code' => '0000',
    'transaction_type' => 'pay',
    'eci' => '02',
    'auth_code' => '822641',
    'order_id' => 'order-id-123',
    'status' => 'approved',
    'status_detail' => 'İŞLEM BAŞARILI',
    'error_code' => null,
    'error_message' => null,
    ]
    ],

    bu teste gore (kod biraz karisik o yuzden kodu anlatmaya calismayayim) islemin basarili olmasi icin
    1. $request icinde gelen veride, yani 3D otorizasyon onayi sonucunda gelen veride, "Status" => "Y" olmasi gerekiyor.
    2. ve 3D basarili ise provizyon islemi yapiyoruz, provizyon sonucunda bankadan gelen responseda 'ResultCode' => '0000' degeri olmasi gerekiyor.
  3. Sizin if ($request->get('status') == 'success' && is_null($request->get('ErrorCode'))) { ile kontrol ettiginiz durum sadece 3D otorizasyon islemin basarili olup olmadigini kontrol eder, ki kart limiti yetersiz oldugu durumda 3D otorizasyon basarili olur ve provizyon sorgusu basarisiz olur diye dushunuyorum.

Durum tam olarak anlayabilmem acidan

$this->logger->log(LogLevel::DEBUG, 'mapping 3D payment data', [
burda bana $raw3DAuthResponseData ve $rawPaymentResponseData parametrelerin icerigi lazim.

from pos.

berkansahin avatar berkansahin commented on August 20, 2024

Merhabalar,

Öncelikle cevabınız için teşekkür ederim @nuryagdym

Evet dediğiniz gibi limit yetersiz olduğunda başarısız oldu işlem. Gateway olarak vakifbank-cp olarak anahtarı değiştirdim test ortamında testi bitirmeye çalışıyorum ancak 3D sayfasını geçtikten sonra callback url kısmına gelmeden aşağıdaki urllede takılıp kalıyor. Test ortamına özel bir durum mu live bilgiler ile sizce bir deneme yapmam mantıklı olur mu ?

Koşuluda dediğiniz gibi değiştirdim.

if ($request->get('status') == 'Y' && is_null($request->get('ErrorCode')) && $request->get('ResultCode') == '0000') {

Takılan url : https://cptest.vakifbank.com.tr/CommonPayment/SecurePayment/PaymentReview

3D sayfası örneği;
Screenshot 2024-03-29 at 16 31 59

from pos.

berkansahin avatar berkansahin commented on August 20, 2024

Tamamdır çok teşekkür ederim. Duruma göre bişey olursa tekrar dönüş yaparım mutlaka

from pos.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.