public ActionResult Index() { //1. 設定開立發票資訊 InvoiceCreate invc = new InvoiceCreate(); invc.MerchantID = "2000132"; //廠商編號。 invc.RelateNumber = "ecPay" + new Random().Next(0, 99999).ToString(); //商家自訂訂單編號 invc.CustomerID = ""; //客戶代號 invc.CustomerIdentifier = ""; //統一編號 invc.CustomerName = ""; //客戶名稱 invc.CustomerAddr = "客戶地址"; //客戶地址 invc.CustomerPhone = "0912345678"; //客戶手機號碼 invc.CustomerEmail = "*****@*****.**"; //客戶電子信箱 //invc.ClearanceMark = CustomsClearanceMarkEnum.None;//通關方式 invc.Print = PrintEnum.No; //列印註記 invc.Donation = DonationEnum.No; //捐贈註記 invc.LoveCode = ""; //愛心碼 invc.carruerType = CarruerTypeEnum.PhoneBarcode; //載具類別 invc.CarruerNum = "/6G+X3LQ"; //invc.CarruerNum = invc.CarruerNum.Replace('+', ' '); //依API說明,把+號換成空白 //invc.TaxType = TaxTypeEnum.DutyFree;//課稅類別 invc.SalesAmount = "30"; //發票金額。含稅總金額。 invc.InvoiceRemark = "(qwrrg)"; //備註 invc.invType = TheWordTypeEnum.Normal; //發票字軌類別 invc.vat = VatEnum.Yes; //商品單價是否含稅 //商品資訊(Item)的集合類別。 invc.Items.Add(new Item() { ItemName = "魚骨幣", //商品名稱 ItemCount = "1", //商品數量 ItemWord = "箱", //單位 ItemPrice = "30", //商品單價 //ItemTaxType =TaxTypeEnum.DutyFree//商品課稅別 ItemAmount = "30", //總金額 ItemTaxType = TaxTypeEnum.Taxable.ToString() }); /* invc.Items.Add(new Item() * { * ItemName = "糧食",//商品名稱 * ItemPrice = "200",//商品單價 * ItemCount = "1",//商品數量 * ItemWord = "個",//單位 * ItemAmount = "200",//總金額 * //ItemTaxType =TaxTypeEnum.DutyFree//商品課稅別 * });*/ //2. 初始化發票Service物件 Invoice <InvoiceCreate> inv = new Invoice <InvoiceCreate>(); //3. 指定測試環境, 上線時請記得改Prod inv.Environment = AllPay.EInvoice.Integration.Enumeration.EnvironmentEnum.Stage; //4. 設定歐付寶提供的 Key 和 IV inv.HashIV = "q9jcZX8Ib9LM8wYk"; inv.HashKey = "ejCk326UnaZWKisg"; //5. 執行API的回傳結果(JSON)字串 string json = inv.post(invc); bool check = isJSON2(json); string temp = string.Empty; if (check) //判斷是不是json格式 { //6. 解序列化,還原成物件使用 InvoiceCreateReturn obj = new InvoiceCreateReturn(); obj = JsonConvert.DeserializeObject <InvoiceCreateReturn>(json); temp = string.Format("開立發票結果<br> InvoiceDate={0}<br> InvoiceNumber={1}<br> RandomNumber={2}<br> RtnCode={3} <br> RtnCode={4} ", obj.InvoiceDate, obj.InvoiceNumber, obj.RandomNumber, obj.RtnCode, obj.RtnMsg); } else { temp = json; } Response.Write(temp); return(View()); }
protected void Page_Load(object sender, EventArgs e) { //1. 設定觸發或延遲開立發票資訊 InvoiceDelay invc = new InvoiceDelay(); invc.MerchantID = "2000132"; //廠商編號 invc.DelayFlag = DelayFlagEnum.NormalDelay; //延遲註記 invc.RelateNumber = "ecPaytest" + new Random().Next(0, 99999).ToString(); //商家自訂訂單編號 invc.CustomerID = ""; //客戶代號 invc.CustomerIdentifier = ""; //統一編號 invc.CustomerName = ""; //客戶名稱 invc.CustomerAddr = ""; //客戶地址 invc.CustomerPhone = "0912345678"; //客戶手機號碼 invc.CustomerEmail = "*****@*****.**"; //客戶電子信箱 //invc.ClearanceMark = CustomsClearanceMarkEnum.None;//通關方式 invc.Print = PrintEnum.No; //列印註記 invc.Donation = DonationEnum.No; //捐贈註記 //invc.LoveCode = "930";//愛心碼 invc.carruerType = CarruerTypeEnum.PhoneBarcode; //載具類別 invc.CarruerNum = "/6G+X3LQ"; //載具編號 invc.CarruerNum = invc.CarruerNum.Replace('+', ' '); //依API說明,把+號換成空白 invc.TaxType = TaxTypeEnum.DutyFree; //課稅類別 invc.SalesAmount = "200"; //發票金額。含稅總金額 invc.InvoiceRemark = ""; //備註 invc.DelayDay = "0"; //延遲天數 //invc.ECBankID = "";//ECBank 代號 invc.Tsr = "ecPaytest" + new Random().Next(0, 99999).ToString(); //交易單號 invc.PayType = PayTypeEnum.ECPAY; //交易類別 //invc.NotifyURL = "";//開立完成時通知廠商的網址 //invc.invType = TheWordTypeEnum.Normal;//發票字軌類別 //invc.vat = VatEnum.No;//商品單價是否含稅 //商品資訊(Item)的集合類別。 invc.Items.Add(new Item() { ItemName = "1111111", //商品名稱 ItemPrice = "100", //商品單價 ItemCount = "1", //商品數量 ItemWord = "個", //單位 ItemAmount = "100", //總金額 //ItemTaxType =TaxTypeEnum.DutyFree//商品課稅別 }); invc.Items.Add(new Item() { ItemName = "1111111", //商品名稱 ItemPrice = "100", //商品單價 ItemCount = "1", //商品數量 ItemWord = "個", //單位 ItemAmount = "100", //總金額 //ItemTaxType =TaxTypeEnum.DutyFree//商品課稅別 }); //2. 初始化發票Service物件 Invoice <InvoiceDelay> inv = new Invoice <InvoiceDelay>(); //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(invc); bool check = isJSON2(json); string temp = string.Empty; if (check) //判斷是不是json格式 { //6. 解序列化,還原成物件使用 InvoiceCreateReturn obj = new InvoiceCreateReturn(); obj = JsonConvert.DeserializeObject <InvoiceCreateReturn>(json); temp = string.Format("開立發票結果<br> InvoiceDate={0}<br> InvoiceNumber={1}<br> RandomNumber={2}<br> RtnCode={3} <br> RtnCode={4} ", obj.InvoiceDate, obj.InvoiceNumber, obj.RandomNumber, obj.RtnCode, obj.RtnMsg); } else { temp = json; } Response.Write(temp); }