形式发票生成器
把客户询价变成一张规范的形式发票:逐行填写品名、数量与单价,工具自动算出每行金额、小计、运费保险与总计,并按外贸惯例生成 SAY US DOLLARS … ONLY 英文大写金额。单据以 A4 版式呈现,可直接打印或存为 PDF 发给客户确认。单据语言可切换中英文,全部数据在浏览器本地处理,不经过服务器。
外贸报价的第一步是给客户发一份形式发票(PI):列清品名、数量、单价,注明贸易条款、付款方式、有效期和收款银行,客户确认后才开始备货。这个生成器把这些信息整理成一张规范的 A4 单据——逐行填品名和单价,金额、小计、总计与英文大写金额自动算好,不用再对着计算器一行行核对。
单据右上方的编号、日期、有效期由你自己填写,工具不会自动生成或改动,方便与你的报价台账保持一致;行项目支持增删,最多 40 行,够覆盖一整柜的品种。单据语言可切换中英文——发给欧美客户用英文,给工厂下采购合同时可切中文版打印一份对照。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 填写单据编号与日期:编号建议沿用你自己的报价流水(如 PI-2026-0001),日期可用「今天」按钮一键填入。
- 选择币种与贸易条款:币种决定总计与大写金额的币名;条款填 FOB / CIF 等国际贸易术语缩写加港口。
- 填写买卖双方信息与收款银行:地址、电话、邮箱按行粘贴即可,银行信息会印在单据底部的备注区。
- 逐行添加品名、数量与单价:金额自动算出,运费与保险费填入对应栏后计入总计。
- 核对下方 A4 单据,点「打印 / 存 PDF」发给客户,或复制结果摘要留档。
计算原理与示例
形式发票和报价单有什么区别?
报价单通常是一页产品价格清单,而形式发票是「准合同」:除了价格还要注明贸易条款、付款方式、交期、有效期和银行信息,客户凭它去申请进口许可或外汇。用本工具时,把条款栏认真填全,PI 就同时具备了报价与合同确认两重作用。
编号、日期和有效期该填什么?
编号建议沿用你自己的报价台账流水,保持全年唯一,方便后续按编号催款和归档;日期填报价发出的当天;有效期按你的价格锁定周期填,常用的有 15 天和 30 天——原料价格波动大的品类建议填短一些,避免过期后客户还按旧价下单。
大写金额为什么是 SAY … ONLY 的格式?
这是国际单据的通行写法:SAY 开头表示「大写金额为」,币种用英文全称(US DOLLARS 而不是 USD),整数部分用英文数字,有小数时用 AND CENTS 引出分位,最后以 ONLY 结尾封住金额、防止篡改。生成后逐字念一遍核对,与数字金额一致再发出。
代码示例
JavaScript 行金额与总计的算法
// 每行金额 = 数量 × 单价(两位小数)
const amount = qty * unitPrice; // 1000 × 4.50 = 4500
// 总计 = 各行金额之和 + 运费 + 保险费
const total = amounts.reduce((s, a) => s + a, 0)
+ freight + insurance; // 5300 + 500 + 120 = 5920
JavaScript 英文大写金额的口径
// SAY + 币种全称 + 整数部分 + AND CENTS + 分位 + ONLY
amountInWords(5920, 'USD');
// 'SAY US DOLLARS FIVE THOUSAND NINE HUNDRED TWENTY ONLY'
amountInWords(1234.56, 'USD');
// 'SAY US DOLLARS ONE THOUSAND TWO HUNDRED THIRTY-FOUR AND CENTS FIFTY-SIX ONLY'
常见问题
单据会保存在服务器上吗?
不会。所有填写内容只在你的浏览器里处理和渲染,关闭页面就没了,也不产生任何上传记录。要留档就用打印存 PDF,或复制结果摘要。
打印出来是 A4 版式吗?
是。预览就是按 A4 纸面排版的,打印时会自动隐藏页面上的其他元素,只输出单据本身。在打印对话框里选「另存为 PDF」即可得到 PDF 文件。
可以出中文单据吗?
可以。把「单据语言」切换为中文,标题、字段名和大写金额说明会全部换成中文,适合给工厂、货代或财务做对照。发给海外客户时再切回英文。
行项目最多能填多少行?
40 行。超过一整柜的品种建议拆成两张单据;点行末的 × 可删除不需要的行,最后一行无法删除以保持表格完整。
运费和保险费怎么计入总价?
在对应栏直接填金额(与货值同币种),会加在小计之后计入总计。CIF / CFR 条款时必填,FOB / EXW 条款留 0 即可,留 0 的栏不会印在单据上。
编号会自动生成吗?日期会自动更新吗?
都不会自动改。编号和日期完全由你填写,工具只在日期栏提供「今天」按钮方便一键填入当天——这样同一张单据随时重新打开、打印,内容都不会变。
数据量大的清单会卡吗?
不会。计算在本地瞬时完成,40 行以内的表格渲染和打印都不受网络影响;换行项目后预览与总计即时刷新。
和商业发票、装箱单是什么关系?
三张单据是一套流程:PI 用于报价确认,成交后换 CI(商业发票)用于清关结算,装箱单(PL)给货代和海关核对货物明细。本站提供三件套生成器,字段口径互相衔接,改完 PI 的行项目可直接复制到另外两张。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。