Ejemplo n.º 1
0
        public ActionResult Index(InvoiceTriggerViewModel Model)
        {
            //1. 設定付款完成觸發或延遲開立發票資訊
            InvoiceTrigger invt = new InvoiceTrigger();

            invt.MerchantID = Model.MerchantID;
            invt.Tsr        = Model.Tsr;
            invt.PayType    = Model.PayType;

            //2. 初始化發票Service物件
            Invoice <InvoiceTrigger> inv = new Invoice <InvoiceTrigger>();

            //3. 指定測試環境, 上線時請記得改Prod
            inv.Environment = EInvoice.Integration.Enumeration.EnvironmentEnum.Stage;

            //4. 設定歐付寶提供的 Key 和 IV
            inv.HashIV  = "q9jcZX8Ib9LM8wYk";
            inv.HashKey = "ejCk326UnaZWKisg";

            //5. 執行API的回傳結果(JSON)字串
            string json = inv.post(invt);

            //6. 解序列化,還原成物件使用
            //InvoiceTriggerReturn obj = new InvoiceTriggerReturn();
            //obj = JsonConvert.DeserializeObject<InvoiceTriggerReturn>(json);
            //obj.XXX;
            // ...

            ViewBag.message = json;


            return(View());
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //1. 設定付款完成觸發或延遲開立發票資訊
            InvoiceTrigger invt = new InvoiceTrigger();

            invt.MerchantID = "2000132";         //廠商編號
            invt.Tsr        = "ecPaytest3409";   //交易單號
            invt.PayType    = PayTypeEnum.ECPAY; //交易類別
            //2. 初始化發票Service物件
            Invoice <InvoiceTrigger> inv = new Invoice <InvoiceTrigger>();

            //3. 指定測試環境, 上線時請記得改Prod
            inv.Environment = Ecpay.EInvoice.Integration.Enumeration.EnvironmentEnum.Stage;
            //4. 設定歐付寶提供的 Key 和 IV
            inv.HashIV  = "q9jcZX8Ib9LM8wYk";
            inv.HashKey = "ejCk326UnaZWKisg";
            //5. 執行API的回傳結果(JSON)字串
            string json = inv.post(invt);
            //6. 解序列化,還原成物件使用
            InvoiceTriggerReturn obj = new InvoiceTriggerReturn();

            obj = JsonConvert.DeserializeObject <InvoiceTriggerReturn>(json);
            /*資料顯示*/
            string temp = string.Empty;

            //obj.Tsr
            temp = string.Format("付款完成觸發或延遲開立發票結果:<br> Tsr = {0} <br> RtnCode={1} <br> RtnMsg={2}", obj.Tsr, obj.RtnCode, obj.RtnMsg);
            Response.Write(temp);
        }
Ejemplo n.º 3
0
        public ActionResult Index(InvoiceTriggerViewModel Model)
        {
            //1. 設定付款完成觸發或延遲開立發票資訊
            InvoiceTrigger invt = new InvoiceTrigger();
            invt.MerchantID = Model.MerchantID;
            invt.Tsr = Model.Tsr;
            invt.PayType = Model.PayType;

            //2. 初始化發票Service物件
            Invoice<InvoiceTrigger> inv = new Invoice<InvoiceTrigger>();

            //3. 指定測試環境, 上線時請記得改Prod
            inv.Environment = EInvoice.Integration.Enumeration.EnvironmentEnum.Stage;

            //4. 設定歐付寶提供的 Key 和 IV
            inv.HashIV = "q9jcZX8Ib9LM8wYk";
            inv.HashKey = "ejCk326UnaZWKisg";

            //5. 執行API的回傳結果(JSON)字串
            string json = inv.post(invt);

            //6. 解序列化,還原成物件使用
            //InvoiceTriggerReturn obj = new InvoiceTriggerReturn();
            //obj = JsonConvert.DeserializeObject<InvoiceTriggerReturn>(json);
            //obj.XXX;
            // ...

            ViewBag.message = json;


            return View();
        }
Ejemplo n.º 4
0
        public void TestTriggerIssue()
        {
            //1. 設定付款完成觸發或延遲開立發票資訊
            InvoiceTrigger invoiceTrigger = new InvoiceTrigger
            {
                //廠商編號
                MerchantID = "2000132",
                //交易單號
                //TODO : 弄上一個存在的交易單號
                Tsr = "ecPaytest3409",
                //交易類別
                PayType = PayTypeEnum.ECPAY
            };

            //2. 執行API的回傳結果
            var response = Client.Post <InvoiceTriggerReturn, InvoiceTrigger>(invoiceTrigger);

            //TODO : 弄上一個存在的交易單號

            //交易單號不存在
            Assert.AreEqual("4000001", response.RtnCode);
        }