Ejemplo n.º 1
0
        public NvpCodec DirectPayment(OrderViewModel orderViewModel, ref NvpCodec decoder, ref string retMsg)
        {
            if (_env == "pilot")
            {
                _pendpointurl = "https://pilot-payflowpro.paypal.com";
            }

            var encoder = new NvpCodec();
            encoder["TENDER"] = "C";
            encoder["TRXTYPE"] = "S";
            encoder["ACCT"] = orderViewModel.CreditCardNumber;
            //encoder["CVV2"] = createOrderViewModel.Cvv2;
            encoder["EXPDATE"] = orderViewModel.ExpDate;
            encoder["ACCTTYPE"] = orderViewModel.PaymentOption;
            encoder["AMT"] = orderViewModel.Amt.ToString("c");
            encoder["CURRENCY"] = _currencyCode;
            encoder["FIRSTNAME"] = orderViewModel.FirstNameCreditCard;
            encoder["LASTNAME"] = orderViewModel.LastNameCreditCard;
            encoder["STREET"] = orderViewModel.CcAddress1;
            encoder["CITY"] = orderViewModel.CcCity;
            //encoder["STATE"] = createOrderViewModel.CcAddress2.ToUpper();
            encoder["ZIP"] = orderViewModel.CcPostalCode;
            encoder["COUNTRY"] = orderViewModel.CountryCode;

            // unique request ID
            Guid uid = Guid.NewGuid();
            encoder["INVNUM"] = uid.ToString();
            //encoder["ORDERDESC"] = createOrderViewModel.CourseName;
            encoder["VERBOSITY"] = "MEDIUM";
            encoder["Email"] = orderViewModel.Email;

            //encoder["COMMENT1"] = createOrderViewModel.TransactionDateTimeUtc.ToString("yyyy-MM-dd HH:mm:ss") + "-" + createOrderViewModel.CourseName;
            //encoder["COMMENT2"] = "elearning-" + createOrderViewModel.Organization;

            //Roger Code - Do I need to generate a token each time?
            //var token = Convert.ToBase64String(Guid.NewGuid().ToByteArray());
            //encoder["SECURETOKENID"] = token;
            //encoder["CREATESECURETOKEN"] = "Y";

            var pStrrequestforNvp = encoder.Encode();
            var pStresponsenvp = HttpCall(pStrrequestforNvp, uid.ToString());

            if (String.IsNullOrEmpty(pStresponsenvp))
                return null;

            decoder = new NvpCodec();
            decoder.Decode(pStresponsenvp);

            

            return decoder;

        }
Ejemplo n.º 2
0
        /// <summary>
        /// Credentials added to the NVP string
        /// </summary>
        /// <returns></returns>
        private string BuildCredentialsNvpString()
        {
            var codec = new NvpCodec();

            if (!IsEmpty(_apiUser))
                codec["USER"] = _apiUser;

            if (!IsEmpty(_apiPassword))
                codec[Pwd] = _apiPassword;

            if (!IsEmpty(_apiVendor))
                codec[Vendor] = _apiVendor;

            if (!IsEmpty(ApiPartner))
                codec[Partner] = ApiPartner;

            return codec.Encode();
        }