通过 SmartBill.ro API 本地自动化开具 SmartBill 发票,执行验证载荷、创建发票等任务。
SmartBill 开具发票是一项面向实际任务的技能,主要用于使用脚本/ smartbill cli.py 来决定SmartBill API的呼叫, 而不是使用 ad-hoc HTTP 片段.;Workflow.;
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
请使用 scripts/smartbill_cli.py 执行确定性的 SmartBill API 调用,而非临时编写的 HTTP 片段代码。
python scripts/smartbill_cli.py validate-payload --input references/invoice-example.json --show-payloadpython scripts/smartbill_cli.py create-invoice --input --dry-run python scripts/smartbill_cli.py create-invoice --input --allow-final python scripts/smartbill_cli.py download-invoice-pdf --series-name --number --output number 字符串(含前导零,例如 "0123")。不得去除前导零,也不得将其转换为整数。--output 参数支持绝对路径或相对路径,且路径结尾必须为 .pdf。调用 SmartBill 前,请设置以下环境变量:
SMARTBILL_USERNAME — SmartBill 登录邮箱SMARTBILL_TOKEN — SmartBill API TokenSMARTBILL_COMPANY_VAT_CODE — 默认 CIF(可选,但建议设置)可选覆盖项:
SMARTBILL_API_BASE(默认值:https://ws.smartbill.ro/SBORO/api)SMARTBILL_TIMEOUT_SECONDS(默认值:30)SMARTBILL_RETRIES(默认值:2)SMARTBILL_DEBUG(默认未设置)— 设为 1、true 或 yes 可启用请求/响应调试日志,并输出至 stderrvalidate-payload{ "invoice": {...} } 包裹层的格式)。create-invoicePOST /invoice 创建发票。--allow-final 参数方可签发正式发票(非草稿)。--dry-run(仅打印标准化后的载荷,不发起 API 调用)及 --force-draft 参数。--debug 参数(或设置 SMARTBILL_DEBUG=1)可在 stderr 中打印完整的请求与响应载荷。get-seriesGET /series 查询当前可用的 SmartBill 发票系列。download-invoice-pdfGET /invoice/pdf 使用 CIF + 系列名 + 编号组合获取 PDF 文件。--output 接受绝对路径或相对路径的 .pdf 文件路径;相对路径基于当前工作目录解析;最终解析出的路径必须位于 OpenClaw 允许的媒体根目录内,或处于当前工作目录下。发票载荷是一个扁平化的 JSON 对象,直接提交至 SmartBill API。参见 references/invoice-example.json 获取标准最小示例,以及 references/smartbill-api.md 查阅各字段详细说明。
CLI 支持以下两种输入格式:
{ "companyVatCode": "...", "client": {...}, ... }{ "invoice": { "companyVatCode": "...", "client": {...}, ... } }CLI 会自动解包,并将内部的发票对象直接发送至 API。
--dry-run 检查标准化后的载荷,确认无误后再调用 API。isDraft: false)视为高影响操作,必须经用户显式确认。client.saveToDb: false 和 products[].saveToDb: false,避免测试数据被持久化。number 必须按返回值原样存储(如 "0123"),严禁去除前导零或转为整数类型。references/smartbill-api.md 以了解载荷字段定义、端点映射,以及认证与速率限制相关说明。references/invoice-example.json 作为标准初始载荷模板使用。相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.5万人学习
最新文章