欠条生成器 · 法律有效格式
司法实践要点
按《民法典》《最高人民法院关于审理民间借贷案件适用法律若干问题的规定》起草,自动校验身份证 / 利率上限 / 诉讼时效 / 大写金额。
填写过程实时识别法律风险,生成的文书可直接打印签字,建议保留欠款人手写"亲笔" + 按手印 + 留存身份证复印件备查。
法定要素齐全 + PDF 导出
| 期 | 到期日 | 应还本金 | 说明 |
|---|
了解工具定位 · 使用场景 · 对比优势
朋友之间借钱,口头约定容易伤感情,手写借条又怕要素不全、日后扯皮。使用本工具在线填写借款金额、期限、利率、双方身份信息,自动生成含法定要素的欠条 PDF,导出后双方签字即可。省去手写模板的麻烦,避免因缺借款人签名、借款日期等关键信息导致借条无效。
小企业主遇到员工预支工资或临时借款,需要一份规范的内部借款凭证。本工具支持填写公司名称、员工姓名、借款用途、还款方式等字段,生成的 PDF 欠条可直接用于财务入账。比从网上下载的通用模板更贴合实际场景,减少因格式不规范引发的内部纠纷。
租房押金纠纷频发,房东和租客各执一词。用本工具在签约时出具一份押金欠条,写明押金金额、退还条件、扣款标准,双方各持一份 PDF。退租时按约定条款核对,避免口头承诺无据可查。工具生成的欠条包含双方身份信息、签署日期等法定要素,可作为调解或诉讼的初步证据。
两人合伙开店或做项目,一方出资另一方出力,需要一份出资欠条明确资金性质(借款还是投资)和还款安排。本工具支持填写出资用途、还款期限、利息计算方式,生成的 PDF 欠条可直接用于合伙人之间确认。避免因资金性质模糊导致后期分红或追偿时产生分歧。
| 维度 | 本工具 | 竞品 A(见律师) | 传统方法(手写/Word) |
|---|---|---|---|
| 数据隐私 | 纯浏览器处理,不上传服务器 | 需将个人信息交给律师或律所 | 文件存储在本机,但需自行管理 |
| 处理速度 | 实时生成,1 秒内导出 PDF | 需预约、沟通、起草,通常 1-3 天 | 手写约 10-30 分钟,Word 排版约 15 分钟 |
| 法定要素覆盖 | 自动包含《民法典》规定的借款主体、金额、利率、期限、还款方式、违约责任等 | 律师会根据经验判断,但可能遗漏或过度复杂 | 依赖个人法律知识,易遗漏关键条款 |
| 格式规范性 | 自动生成标准 PDF,排版统一 | Word 或打印件,格式因人而异 | 手写易潦草难辨认,Word 排版需手动调整 |
| 法律效力 | 内容符合法定要素,与纸质借条同等效力 | 经律师审核,法律效力最高 | 若要素齐全同样有效,但举证时易被质疑真实性 |
| 费用 | 免费 | 律师咨询费通常 200-2000 元/次 | 零成本(仅纸张/打印费) |
| 注册要求 | 无需注册,打开即用 | 需预约、面谈或电话沟通 | 无需注册 |
| 修改灵活性 | 生成后不可在线修改,需重新生成 | 可反复与律师沟通修改 | 可随意修改,但需注意保持要素完整 |
上手步骤 · 输入输出 · 避坑提示
| 输入 | 输出 | 说明 |
|---|---|---|
| 借款人:张三,出借人:李四,金额:10000.00元,借款日期:2023-01-01,约定利率:年利率3.85%,还款日期:2023-12-31 | PDF文件,包含:借款人张三、出借人李四、借款金额壹万元整、借款日期2023年1月1日、年利率3.85%、还款日期2023年12月31日,以及法定必备条款(违约责任、争议解决等),页脚自动生成当前日期和唯一编号。 | 典型场景:个人之间小额借贷,利率参考LPR |
| 借款人:王五,出借人:赵六,金额:500000.00元,借款日期:2024-06-15,约定利率:年利率0%(无息),还款日期:2025-06-14 | PDF文件,包含:借款人王五、出借人赵六、借款金额伍拾万元整、借款日期2024年6月15日、无息借款、还款日期2025年6月14日,以及法定必备条款。 | 常见场景:亲友间无息借贷,金额较大 |
| 借款人:小明,出借人:小红,金额:500.00元,借款日期:2024-01-01,约定利率:年利率10%,还款日期:2024-01-31 | PDF文件,包含:借款人小明、出借人小红、借款金额伍佰元整、借款日期2024年1月1日、年利率10%、还款日期2024年1月31日,以及法定必备条款。 | 边界case:极小额短期借贷,利率较高 |
| 借款人:某公司,出借人:个人,金额:1000000.00元,借款日期:2024-03-01,约定利率:年利率6%,还款日期:2025-03-01 | PDF文件,包含:借款人某公司(法人)、出借人个人、借款金额壹佰万元整、借款日期2024年3月1日、年利率6%、还款日期2025年3月1日,以及法定必备条款。 | 边界case:企业与个人之间借贷,需法人代表 |
| 借款人:张三,出借人:李四,金额:0.00元,借款日期:2024-01-01,约定利率:年利率3%,还款日期:2024-12-31 | 提示:借款金额必须大于0。请重新输入。 | 易错case:金额输入为0,系统拒绝生成 |
| 借款人:张三,出借人:李四,金额:10000.00元,借款日期:2025-01-01,约定利率:年利率36%,还款日期:2024-12-31 | 提示:还款日期必须晚于借款日期。请重新输入。 | 易错case:还款日期早于借款日期,逻辑错误 |
| 借款人:张三,出借人:李四,金额:10000.00元,借款日期:2024-01-01,约定利率:年利率24%,还款日期:2024-12-31 | PDF文件,包含:借款人张三、出借人李四、借款金额壹万元整、借款日期2024年1月1日、年利率24%、还款日期2024年12月31日,以及法定必备条款。 | 边界case:利率接近法定上限(24%),仍合法 |
借款人:张三(身份证号:110101199001011234)借款人:张三(身份证号:110101199001011234)—— 实际签写时需与身份证原件逐字核对法律上姓名与身份证号必须完全匹配,错别字或同音字(如‘章三’)会导致借条效力争议。
借款金额:10000元借款金额:人民币壹万元整(¥10,000.00)《民法典》要求金额同时有小写和大写,防止篡改(如加个0变100000)。仅数字易被涂改。
借款日期:2024/1/1,还款日期:2024年12月31日借款日期:2024年1月1日,还款日期:2024年12月31日日期格式不一致可能被解释为不同年份或月份,引发诉讼争议。建议统一为‘年月日’汉字格式。
利息:按银行利率计算利息:年利率 12%(即月利率 1%),自借款日起按实际天数计算‘银行利率’无具体指向(基准利率/LPR/执行利率?),法院可能视为无利息约定。需写明具体百分比和计算方式。
还款方式:到期还款还款方式:到期一次性还本付息(或:每月付息,到期还本)‘到期还款’未说明是否含利息、是否分期。明确方式可避免提前部分还款时利息计算纠纷。
(未填写违约责任)逾期还款:每逾期一日,按未还金额的万分之五支付违约金《民法典》第577条允许约定违约金。无此条款时,出借人只能主张LPR利息,追偿成本高。
担保人:李四担保人:李四(身份证号:110101199002021234,联系方式:13800138000)仅写姓名无法锁定担保人身份,诉讼时无法送达法律文书。需身份证号+电话+住址。
打印的‘借款人:张三’下方手写签名写成了‘李四’打印的‘借款人:张三’下方手写签名必须为‘张三’本人签署签名与打印姓名不一致时,法院可能认定签名人为实际借款人,导致主体错误。
(直接导出,未预览)导出PDF后,用手机/电脑预览,确认所有字段(尤其是金额大写、日期)完整显示在一页内部分浏览器打印PDF时,长文本可能被截断或分页到第二页,导致关键信息缺失。建议导出后预览。
公式推导 · 流程图解 · 依据出处
欠条金额 = 本金 + 利息(若约定)
本金 — 借款的原始金额(元)利息 — 按约定利率和期限计算的利息(元)利率 — 年利率(%),未约定则为 0期限 — 借款天数或月数甲向乙借款 50,000 元,约定年利率 12%,借期 6 个月(180 天)。利息 = 50,000 × 12% × (180/365) ≈ 2,958.90 元。欠条总金额 = 50,000 + 2,958.90 = 52,958.90 元。
适用于民间借贷中单利计息场景。若约定复利或逾期罚息,需另行计算。利率上限参照《最高人民法院关于审理民间借贷案件适用法律若干问题的规定》LPR 四倍(2024 年约 13.8%)。
3 种主流语言 · 复制即用
from fpdf import FPDF
from datetime import date
class IOU(FPDF):
def iou_pdf(self, lender, borrower, amount, reason, due_date):
self.add_page()
self.set_font('Helvetica', 'B', 16)
self.cell(0, 10, 'IOU (Promissory Note)', new_x="LMARGIN", new_y="NEXT", align='C')
self.set_font('Helvetica', '', 12)
self.ln(10)
self.cell(0, 8, f'Date: {date.today().isoformat()}', new_x="LMARGIN", new_y="NEXT")
self.cell(0, 8, f'I, {borrower}, acknowledge receipt of', new_x="LMARGIN", new_y="NEXT")
self.cell(0, 8, f'${amount:.2f} from {lender}.', new_x="LMARGIN", new_y="NEXT")
self.cell(0, 8, f'Purpose: {reason}', new_x="LMARGIN", new_y="NEXT")
self.cell(0, 8, f'Due date: {due_date}', new_x="LMARGIN", new_y="NEXT")
self.ln(10)
self.cell(0, 8, 'Signature: ___________________', new_x="LMARGIN", new_y="NEXT")
self.cell(0, 8, f'({borrower})', new_x="LMARGIN", new_y="NEXT")
pdf = IOU()
pdf.iou_pdf('Alice', 'Bob', 1500.00, 'rent deposit', '2025-06-01')
pdf.output('iou.pdf')
print('Generated iou.pdf')package main
import (
"fmt"
"github.com/jung-kurt/gofpdf"
"time"
)
func main() {
lender := "Alice"
borrower := "Bob"
amount := 1500.00
reason := "rent deposit"
dueDate := "2025-06-01"
pdf := gofpdf.New("P", "mm", "A4", "")
pdf.AddPage()
pdf.SetFont("Helvetica", "B", 16)
pdf.CellFormat(0, 10, "IOU (Promissory Note)", "", 1, "CM", false, 0, "")
pdf.SetFont("Helvetica", "", 12)
pdf.Ln(10)
pdf.CellFormat(0, 8, fmt.Sprintf("Date: %s", time.Now().Format("2006-01-02")), "", 1, "LM", false, 0, "")
pdf.CellFormat(0, 8, fmt.Sprintf("I, %s, acknowledge receipt of", borrower), "", 1, "LM", false, 0, "")
pdf.CellFormat(0, 8, fmt.Sprintf("$%.2f from %s.", amount, lender), "", 1, "LM", false, 0, "")
pdf.CellFormat(0, 8, fmt.Sprintf("Purpose: %s", reason), "", 1, "LM", false, 0, "")
pdf.CellFormat(0, 8, fmt.Sprintf("Due date: %s", dueDate), "", 1, "LM", false, 0, "")
pdf.Ln(10)
pdf.CellFormat(0, 8, "Signature: ___________________", "", 1, "LM", false, 0, "")
pdf.CellFormat(0, 8, fmt.Sprintf("(%s)", borrower), "", 1, "LM", false, 0, "")
err := pdf.OutputFileAndClose("iou.pdf")
if err != nil {
panic(err)
}
fmt.Println("Generated iou.pdf")
}const PDFDocument = require('pdfkit');
const fs = require('fs');
function generateIOU(lender, borrower, amount, reason, dueDate) {
const doc = new PDFDocument();
doc.pipe(fs.createWriteStream('iou.pdf'));
doc.fontSize(16).text('IOU (Promissory Note)', { align: 'center' });
doc.moveDown();
doc.fontSize(12);
doc.text(`Date: ${new Date().toISOString().slice(0, 10)}`);
doc.text(`I, ${borrower}, acknowledge receipt of`);
doc.text(`$${amount.toFixed(2)} from ${lender}.`);
doc.text(`Purpose: ${reason}`);
doc.text(`Due date: ${dueDate}`);
doc.moveDown();
doc.text('Signature: ___________________');
doc.text(`(${borrower})`);
doc.end();
console.log('Generated iou.pdf');
}
generateIOU('Alice', 'Bob', 1500.00, 'rent deposit', '2025-06-01');9 个高频疑问