使用invoify批量生成发票

eruera

发布于317天前
还没想好签名

invoify是什么

Invoify 是一款发票生成器应用程序,采用 Next.js 13、TypeScript、React 和 Shadcn UI 库构建。它提供了一种创建和管理专业发票的简单方法。官方项目地址:invoify。程序界面如下:

invoify-web-app.png

如何在懒猫微服上安装invoify

得益于懒猫微服强大的应用生态,懒猫商店现有2000+应用均可以一键安装,invoify应用地址如下:

https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.invoify

轻轻松松一键安装,再也不要操心各种系统繁琐的环境配置。

invoify使用方法

应用使用很简单,打开后按照自己需求填写即可,填写完成后点击生成PDF即可,注意有些项目为必填项。现在应用使用界面暂不支持中文,填写内容支持中文,但是经过测试,部分内容行间距过大,暂时还没有解决这个问题。

28e031b8-41d1-43c3-95fa-25cd35098e35.png

ee0f4d5c-fece-4c91-9bfb-d91d1a0b919a.png

Invoify API 字段说明

应用支持使用命令行批量生成发票,有利于用户进行二次开发适配自己的服务。首先对api各字段进行说明:

1. 发送方信息 (sender)

必填字段

字段类型验证规则说明
namestring2-50字符公司/个人名称
addressstring2-70字符地址
zipCodestring2-20字符邮编
citystring1-50字符城市
countrystring1-70字符国家
emailstring5-30字符,有效邮箱格式邮箱
phonestring1-50字符电话

可选字段

字段类型说明
customInputsarray自定义输入字段数组

2. 接收方信息 (receiver)

必填字段

字段类型验证规则说明
namestring2-50字符客户名称
addressstring2-70字符地址
zipCodestring2-20字符邮编
citystring1-50字符城市
countrystring1-70字符国家
emailstring5-30字符,有效邮箱格式邮箱
phonestring1-50字符电话

可选字段

字段类型说明
customInputsarray自定义输入字段数组

3. 发票详情 (details)

必填字段

字段类型验证规则说明
invoiceNumberstring至少1字符发票号
invoiceDatedate有效日期开票日期
dueDatedate有效日期到期日期
currencystring必填货币类型
languagestring必填语言
itemsarray至少1个商品项商品/服务列表
subTotalnumber非负数小计金额
totalAmountnumber非负数总金额
totalAmountInWordsstring必填大写金额
paymentTermsstring至少1字符付款条款
pdfTemplatenumber必填PDF模板ID

可选字段

字段类型说明
invoiceLogostring发票Logo (base64或URL)
purchaseOrderNumberstring采购订单号
paymentInformationobject付款信息
taxDetailsobject税务信息
discountDetailsobject折扣信息
shippingDetailsobject运费信息
additionalNotesstring附加说明
signatureobject签名信息
updatedAtstring更新时间

4. 商品项目 (items[]) - 数组中每个项目的字段

必填字段

字段类型验证规则说明
namestring至少1字符商品/服务名称
quantitynumber大于0数量
unitPricenumber大于0单价
totalnumber必填总价

可选字段

字段类型说明
descriptionstring商品描述

以上仅列举了必选字段,其余可参考官方项目地址:invoify

使用invoify批量生成发票

我是在windows平台上使用Git Bash运行命令,命令如下:

curl -X POST https://invoify.<你的懒猫微服名称>.heiyu.space/api/invoice/generate \
        -H "Content-Type: application/json" \
        -d '{
          "sender": {
            "name": "Test Company",
            "address": "123 Test Street",
            "zipCode": "12345",
            "city": "Test City",
            "country": "USA",
            "email": "test@company.com",
            "phone": "123-456-7890"
          },
          "receiver": {
            "name": "Client Company",
            "address": "456 Client Avenue",
            "zipCode": "67890",
            "city": "Client City",
            "country": "USA",
            "email": "client@company.com",
            "phone": "098-765-4321"
          },
          "details": {
            "invoiceNumber": "INV-2024-002",
            "invoiceDate": "2024-01-15T00:00:00.000Z",
            "dueDate": "2024-02-15T00:00:00.000Z",
            "currency": "USD",
            "language": "en",
            "items": [{
              "name": "Design Service",
              "description": "Professional UI/UX design",
              "quantity": 3,
              "unitPrice": 75.00,
              "total": 225.00
            }],
            "subTotal": 225.00,
            "totalAmount": 225.00,
            "totalAmountInWords": "Two Hundred Twenty-Five Dollars",
            "paymentTerms": "Net 30",
            "pdfTemplate": 2
          }
        }' \
        -w "\nHTTP Status: %{http_code}\n" \
        -s -o test-invoice-template2.pdf

该命令仅使用了必选字段,用户可以根据自身需求进行修改生成。生成pdf如下所示:

1756975931689.png

总结

总之invoify是一款不错的发票生成应用,尤其有api服务支持二次开发,可以方便用户适配自己的服务。

评论

0

暂无评论

说点什么呢~
收藏
0
0
0