外贸工具 本地计算 开箱即用 内置示例 不留痕迹

形式发票生成器

把客户询价变成一张规范的形式发票:逐行填写品名、数量与单价,工具自动算出每行金额、小计、运费保险与总计,并按外贸惯例生成 SAY US DOLLARS … ONLY 英文大写金额。单据以 A4 版式呈现,可直接打印或存为 PDF 发给客户确认。单据语言可切换中英文,全部数据在浏览器本地处理,不经过服务器。

外贸报价的第一步是给客户发一份形式发票(PI):列清品名、数量、单价,注明贸易条款、付款方式、有效期和收款银行,客户确认后才开始备货。这个生成器把这些信息整理成一张规范的 A4 单据——逐行填品名和单价,金额、小计、总计与英文大写金额自动算好,不用再对着计算器一行行核对。

单据右上方的编号、日期、有效期由你自己填写,工具不会自动生成或改动,方便与你的报价台账保持一致;行项目支持增删,最多 40 行,够覆盖一整柜的品种。单据语言可切换中英文——发给欧美客户用英文,给工厂下采购合同时可切中文版打印一份对照。

使用步骤

  1. 填写单据编号与日期:编号建议沿用你自己的报价流水(如 PI-2026-0001),日期可用「今天」按钮一键填入。
  2. 选择币种与贸易条款:币种决定总计与大写金额的币名;条款填 FOB / CIF 等国际贸易术语缩写加港口。
  3. 填写买卖双方信息与收款银行:地址、电话、邮箱按行粘贴即可,银行信息会印在单据底部的备注区。
  4. 逐行添加品名、数量与单价:金额自动算出,运费与保险费填入对应栏后计入总计。
  5. 核对下方 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 的行项目可直接复制到另外两张。

延伸阅读

来自本站原创文章,讲清这个工具背后的算法与口径。