Пример #1
0
        /// <summary>
        /// 快捷支付
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public static bool Purchase(TxnMsgContent.Request request, bool first, out string error)
        {
            request.externalRefNumber = DateTime.Now.ToString("yyyyMMddHHmmss");//必填
            request.entryTime         = DateTime.Now.ToString("yyyyMMddHHmmss");
            request.terminalId        = CoreHelper.CustomSetting.GetConfigKey("99billterminalId");
            //以下第二次鉴权可以不需要
            if (!first)
            {
                request.cardNo         = "";
                request.expiredDate    = "";
                request.cvv2           = "";
                request.cardHolderName = "";
                request.cardHolderId   = "";
                request.idType         = "";
            }
            request.txnType           = "PUR";
            request.interactiveStatus = "TR1";
            request.entryTime         = DateTime.Now.ToString("yyyyMMddHHmmss");
            string str     = "";
            var    extDate = request.extData;

            str += "<extMap>";
            str += "<extDate><key>phone</key><value>" + extDate.phone + "</value></extDate>";
            str += "<extDate><key>validCode</key><value>" + extDate.validCode + "</value></extDate>";
            str += "<extDate><key>savePciFlag</key><value>" + extDate.savePciFlag + "</value></extDate>";
            str += "<extDate><key>token</key><value>" + extDate.token + "</value></extDate>";
            str += "<extDate><key>payBatch</key><value>" + extDate.payBatch + "</value></extDate>";
            str += "</extMap>";
            request.OtherMsg = str;
            var xmlDoc   = request.SendRequest();
            var response = TxnMsgContent.Response.FromXml(xmlDoc);

            error = response.responseTextMessage;
            return(response.responseCode == "00");
        }