1.1.1 • Published 3 years ago

ezpay-invoice-sdk-funtuantw v1.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

Installation

> yarn add ezpay-invoice-sdk-funtuantw -p

Usage

Create Instance

const EzpayInvoice  = require('ezpay-invoice-sdk-funtuantw').default
const ei = new EzpayInvoice()

Set Mode

setMode(mode: string)

設置 Endpoint 呼叫環境

ei.setMode('prod')

Set Merchant ID(required)

setMerchantID(MerchantID: string)

設置商店代號(必填)

ei.setMerchantID(process.env.MERCHANT_ID)

Set Hash Key and IV(required)

setHashKeyAndIV(data: Object)

欄位型別說明預設必填
keystring加密時會使用到的 HashKeynull
ivstring加密時會使用到的 HashIVnull

設置加密 HashKey 與 HashIV

ei.setHashKeyAndIV({
  key: process.env.HASH_KEY,
  iv: process.env.HASH_IV
})

Set Post Data

setPostData

*目前僅提供單項商品

欄位型別說明預設必填
RespondTypestring回應格式(JSON, String)JSON
MerchantOrderNostring自訂編號null
Statusstring開立發票方式(0 - 等待觸發開立, 1 - 即時開立, 3 - 預約自動開立)1
TimeStampstring時間戳記當下時間(unix time)
Categorystring發票種類(B2B - 買受人為營業人, B2C - 買受人為個人)B2B
BuyerNamestring買受人名稱null
BuyerUBNstring買受人統一編號(買受人為營業人時必填)null
BuyerEmailstring買受人電子信箱null
PrintFlagstring索取紙本發票(Y, N)Y
TaxTypestring課稅別(1 - 應稅, 2 - 零稅率, 3 - 免稅, 9 - 混合應稅與免稅或零稅率)Y
TaxRatenumber稅率5
TaxAmtnumber稅額銷售額合計 * 0.05(四捨五入)
Amtnumber銷售額合計null
TotalAmtnumber發票金額(銷售額 + 稅額)銷售額合計 * 1.05(四捨五入)
ItemNamestring商品名稱null
ItemCountstring商品數量null
ItemUnitstring商品單位null
ItemPricestring商品單價null
ItemAmtstring商品小計null
Commentstring備註null

設置發票內容

ei.setPostData({
  MerchantOrderNo: '201409170000001',
  Status: '1',
  BuyerName: '王大品',
  BuyerUBN: '20312900',
  Amt: '490',
  ItemName: '商品一',
  ItemCount: '1',
  ItemUnit: '個',
  ItemPrice: '490',
  ItemAmt: '490'
})

開立發票 Issue Invoice

ei.issueInvoice(): Promise\<T>

Return Promise | 欄位 | 型別 | 說明 | |---|---|---| | status | string | 開立結果狀態 | | message | string | 開立結果說明 | | result | string | 開立結果詳細內容 |

ei.issueInvoice()
  .then(r => {
    console.log(r)
  }).catch(err => {
    console.log(err)
  })

作廢發票 Invalid Invoice

ei.invalidInvoice(data: Object): Promise\<T>

欄位型別說明預設必填
InvoiceNumberstring發票號碼null
InvalidReasonstring作廢原因null

Return Promise | 欄位 | 型別 | 說明 | |---|---|---| | status | string | 開立結果狀態 | | message | string | 開立結果說明 | | result | string | 開立結果詳細內容 |

ei.invalidInvoice({
    InvoiceNumber: 'AB12340000',
    InvalidReason: '作廢原因',
  }).then(r => {
    console.log(r)
  }).catch(err => {
    console.log(err)
  })

全額折讓發票 Allowance Invoice

ei.allowanceInvoice(data: Object): Promise\<T>

欄位型別說明預設必填
InvoiceNostring發票號碼null

Return Promise | 欄位 | 型別 | 說明 | |---|---|---| | status | string | 開立結果狀態 | | message | string | 開立結果說明 | | result | string | 開立結果詳細內容 |

// 全額折讓發票需使用 ei.setPostData 寫入原發票資訊

ei.allowanceInvoice({
    InvoiceNo: 'AB12340000',
  }).then(r => {
    console.log(r)
  }).catch(err => {
    console.log(err)
  })

查詢發票 Search Invoice

ei.searchInvoice(data: Object): Promise\<T>

欄位型別說明預設必填
SearchTypestring查詢方式'1'
MerchantOrderNostring自訂編號null
TotalAmtnumber發票金額null
InvoiceNumberstring發票號碼null
RandomNumstring發票防偽隨機碼null

Return Promise | 欄位 | 型別 | 說明 | |---|---|---| | status | string | 開立結果狀態 | | message | string | 開立結果說明 | | result | string | 開立結果詳細內容 |

ei.searchInvoice({
    InvoiceNo: 'AB12340000',
    TotalAmt: 2999,
  }).then(r => {
    console.log(r)
  }).catch(err => {
    console.log(err)
  })

LICENSE

MIT

1.1.1

3 years ago

1.1.0

3 years ago