Code Monkey home page Code Monkey logo

cempehlivan / cp.vpos Goto Github PK

View Code? Open in Web Editor NEW
76.0 8.0 23.0 239 KB

Akbank Sanal POS, Alternatif Bank Sanal POS, Anadolubank Sanal POS, QNB Finansbank Sanal POS, Garanti BBVA Sanal POS, Halkbank Sanal POS, ING Bank Sanal POS, İş Bankası Sanal POS, Şekerbank Sanal POS, Türk Ekonomi Bankası Sanal POS, Türkiye Finans Sanal POS, Vakıfbank Sanal POS, Yapı Kredı Bankası Sanal POS, Ziraat Bankası Sanal POS, Cardplus Sanal POS, Paratika Sanal POS, Payten - MSU Sanal POS

Home Page: https://www.nuget.org/packages/CP.VPOS

License: MIT License

C# 100.00%
sanalpos sanal-pos sanal-pos-entegrasyonu virtualpos akbank finansbank halkbank ingbank isbankasi garantibankasi

cp.vpos's Introduction

Hi there 👋

Welcome to my page!
I'm Cem, Web Software Development Manager from Istanbul, Turkey, currently working from GizSoft Business Solutions.

Where to find me

Github Twitter LinkedIn

cp.vpos's People

Contributors

cempehlivan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cp.vpos's Issues

Yapı Kredi yeni TROY kartları geldi, bin noları 8 haneli

Selam, yapı krediden yeni kartlar hakkında e-mail geldi, BinService.cs içindeki datanın devamına ben ekledim buraya da alt kısma eklediğim numaraları yazıyorum, ayrıca ilerleyen dönemlerde ISO tarafından 6 haneli bin uzunluğunun 8 e çıkarılması kararı alınmış gelen mailde bu şekilde yazıyor. Ben kodlara yine 6 hane olarak ekleme yaptım.
https://www.yapikredipos.com.tr/odeme-cozumlerimiz/duyurular/bin-numaralari

{
""binNumber"": ""736659"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""736660"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""736656"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""736657"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""736655"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""016101"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""016102"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""016170"",
""bankCode"": ""0067"",
""cardType"": 0,
""cardBrand"": 2,
""commercialCard"": false,
""cardProgram"": -1
},
{
""binNumber"": ""083701"",
""bankCode"": ""0067"",
""cardType"": 1,
""cardBrand"": 2,
""commercialCard"": true,
""cardProgram"": -1
},
{
""binNumber"": ""083700"",
""bankCode"": ""0067"",
""cardType"": 1,
""cardBrand"": 2,
""commercialCard"": true,
""cardProgram"": -1
},
{
""binNumber"": ""083703"",
""bankCode"": ""0067"",
""cardType"": 1,
""cardBrand"": 2,
""commercialCard"": true,
""cardProgram"": -1
}

bin number listesi

Merhaba Hocam,

bin number listesini database olarak kullanmak istiyordum BinService internal olarak ayarlanmış bunu public yapmamızda bir sakınca var mı? Manuel olarak da olsa listeyi içeri tek tek deneyerek ekleyebiliyorum.

bulduğum listede 900 kayıt var bunların 11 tanesi 6 haneli olmayan kayıtlar bunları düzeltmek gerekir mi?

BIN Numarası Banka Kodu Banka Adı Kart Markası Kart Tipi Kart Programı Ticari Kart
97925251 135 Anadolubank Troy Credit Unknown FALSE
9001203 12 Halkbank Amex Credit Paraf FALSE
40227801 111 QNB Finansbank Visa Credit CardFinans FALSE
41556501 111 QNB Finansbank Visa Credit CardFinans FALSE
52102280 111 QNB Finansbank MasterCard Credit CardFinans FALSE
97920301 111 QNB Finansbank Troy Credit CardFinans FALSE
11303200 32 Türk Ekonomi Bankası Amex Credit Unknown FALSE
51023900 32 Türk Ekonomi Bankası MasterCard Credit Bonus FALSE
11301500 15 Vakıfbank Amex Credit Unknown FALSE
9021001 15 Vakıfbank Visa Credit Unknown FALSE
97926500 15 Vakıfbank Troy Credit Unknown FALSE

herhangi bir banka ile çalışmadım projeyi öğrenme amaçlı yapıyorum - bilgi sahibi değilim. Bin Number ları sanal pos ile anlaşma yaptığımız bankadan mı alıyoruz ? hangi sıklıkla güncelleniyor ? banka diğer bankaların da bin numaralarını verebiliyor mu? güncelleme olduğu zaman (tüm bankalar için) bunu talep edebiliyor muyuz ?

bir de açık topic te oluşan bir durumdan bahsetmiştim...

proje için tekrar teşekkürler

Object to int convert problem

Merhaba Hocam,

Iyzico test ederken aşağıdaki static method problem çıkartıyordu. request.responseArray["mdStatus"].cpToInt()
aşağıda methodta catch e düşüyordu. önce string'e dönüştürdüm sorun çözüldü.

vVal = Convert.ToInt32(pText.cpToString());

internal static int cpToInt(this object pText)
{
    lastError = null;
    int vVal = 0;
    try
    {
        if (!(pText is DBNull))
            vVal = Convert.ToInt32(pText.cpToString());
    }
    catch (Exception e)
    {
        lastError = e;
    }
    return vVal;
}

#5

Payten / Asseco Nestpay Hash v3

Merhaba,
Elinize sağlık öncelikle. 31 Temmuz 2023den itibaren Hash V3 kullanılması gerekiyor sanırım. Bununla alakalı geliştirme yapılacak mısınız?

Garanti Bankası 3D Problem

Garanti Bankası 3D işlemlerinde hem Production hemde Test ortamında sistem hatası oluşuyor.

mdStatus => 7
mdErrorMessage => 0122

Hata kodlarına bakılırsa "Sistem Hatası" olarak gözüküyor, fakat Production ortamında da aynı durum oluşuyor.

Nestpay poslarında storetype parametresi sabit değil sanırım

Merhabalar, Halkbank sanal pos entegrasyonu yaparken farkettim ki:

NetspayAbstract.cs içersinde Sale3D fonksiyonunda storetype statik olarak 3d_pay olarak belirlemişsiniz. Ama farkettim ki banka tarafından bize 3d olarak tanımlama yapılmış. Bu yüzdendir ki payment3D modeli içerisine storetype diye bir parametre eklense güzel olur düşüncesindeyim.

Isyeri kullanim tipi desteklenmiyor.

Merhabalar Cem bey,

Projeniz güzel olmuş ellerineize sağlık. Halkbank sanalposunda bana aşağıdaki gibi bir hata dönüyor. Gerçek ortamın responsu alıyorum ama test ortamında da aynı hatayı alıyorum sebebi nedir.

{
"result": {
"statu": 0,
"message": "Isyeri kullanim tipi desteklenmiyor.",
"orderNumber": "ACT959",
"transactionId": null,
"privateResponse": {
"oid": "ACT959",
"Response": "Error",
"hashAlgorithm": "ver3",
"encoding": "UTF-8",
"Ecom_Payment_Card_ExpDate_Month": "12",
"ProcReturnCode": "99",
"currency": "949",
"callbackCall": "true",
"amount": "1.00",
"maskedCreditCard": "5342 61** ** ",
"islemtipi": "Auth",
"merchantName": "M
****",
"Ecom_Payment_Card_ExpDate_Year": "25",
"storetype": "3d_pay",
"mdStatus": "7",
"ErrCode": "3D-1007",
"failUrl": "/Pay/HalkBankCheckOutSales?OrderNumber=ACT959&status=success",
"clientIp": "....238",
"installment": "",
"ErrMsg": "Isyeri kullanim tipi desteklenmiyor.",
"clientid": "
",
"mdErrorMsg": "Isyeri kullanim tipi desteklenmiyor.",
"MaskedPan": "534261
",
"taksit": "",
"okUrl": "*******************/HalkBankCheckOutSales?OrderNumber=ACT959&status=success",
"lang": "tr",
"xid": "eszgP6RyZZtrEVHpBRr9Z7AMfkQ=",
"HASH": "
******************************",
"rnd": "oSTke8b+uYq2VBTwTOkF"
}
},
"status": true,
"message": "Başarılı"
}

Sertifika Kontrolünün ByPass Edilmesi

Merhaba,

Ssl sertifikasının bypass edilmesi normalde tercih edilecek bir durum değil. Güvenlik zaafiyeti yaratabilir.

Koşullu yapayım dedim ama ServicePointManager static bir class. Yük altında race condition yaratabilir. Bir işlemin bypass arzusu alakasız başka bir işlemde de bypassa yol açabilir.

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

satırları kaldırılabilir. En iyisi tercihin uygulama tarafına bırakılması bence.

3d ödeme ile ilgili hata mesajı?

Merhaba,

Aşağıdaki 3d ile ödemede aşağıdaki gibi hata alıyorum. 3d yi kapattığım zaman sorunsuz kayıt oluyor.
https://ibb.co/LPjtcD2

response.statu = Error
response.message = "İşlem sırasında bilinmeyen bir hata oluştu"

        public IActionResult VirtualPOS3DResponse()
        {
            var request = _httpContextAccessor.HttpContext?.Request;
            Dictionary<string, object> pairs = request.Form.Keys.ToDictionary(k => k, v => (object)request.Form[v]);
            SaleResponse response = VPOSClient.Sale3DResponse(new Sale3DResponseRequest
            {
                responseArray = pairs
            }, GetBankInfo().Result);

            if (response.statu == CP.VPOS.Enums.SaleResponseStatu.Success)
            {
                var messages = new List<string>();
                var state = new OnlinePaymentCheckoutState();
                var redirectUrl = Url.Action(nameof(CheckoutController.Confirm), "Checkout", new { area = string.Empty }, request.Scheme).TrimEnd('/');
                state.IsConfirmed = true;
                state.SubmitForm = true;
                state.FormData = redirectUrl;
                _httpContextAccessor.HttpContext.Session.TrySetObject("OnlinePaymentCheckoutState", state);
                return RedirectToAction(nameof(CheckoutController.Confirm), "Checkout");
            }
            else
            {
                Logger.Error(response.message);
                NotifyError(response.message);
                return RedirectToAction(nameof(CheckoutController.PaymentMethod), "Checkout");
            }
        }
sID 1
oid 23a937d4-063d-4e42-9e95-8634ed2abdc9
hashAlgorithm ver3
encoding ISO-8859-9
Ecom_Payment_Card_ExpDate_Month 12
version 2
currency 949
dsId 1
callbackCall TRUE
amount 18.69
maskedCreditCard 4355 08** **** 4358
islemtipi Auth
merchantName Akbank
ACQBIN 490740
PAResSyntaxOK TRUE
Ecom_Payment_Card_ExpDate_Year 30
storetype 3d_pay
mdStatus 0
failUrl https://localhost:44325/onlinepayment/virtualpos3dresponse
clientIp 5.21.104.95
installment  
merchantID 100100000
mdErrorMsg Not authenticated
clientid 100100000
MaskedPan 435508***4358
txstatus N
digest digest
PAResVerified TRUE
taksit  
okUrl https://localhost:44325/onlinepayment/virtualpos3dresponse
md 435508:E22686B70BB6B3C699EF5CBEE1463224280DF284EC5C336DA015D0257492D543:4089:##100100000
lang tr
xid mw4fVcBqfYqFKbxqdZe4e7zMPOo=
TRANID  
HASH vFSr8JaXyp0+/1i4IPZbdS/l92HdcN3ocmWhWgnfmbd5we2ddvGW9j0OS1WbnbvYmFbTTIcdQYEEF7Q4lS7vDg==
rnd 9KtgsP9cSyDptzMPvQtj

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.