发票
默认 autoVat=true 时,API 根据贵公司的增值税/OSS 登记及客户国家和税号自动确定税率(境内 / 反向征收 / OSS / 出口)。发票编号无空缺,与面板共享同一序列。API 不支持删除发票——仅可作废(编号保留在序列中)。
| 场景 | 税率 | 说明 |
|---|---|---|
| 公司未登记增值税 | 0 | 手动 taxRate>0 → 422 |
| 同一国家(境内) | 卖方国税率 | 如 EE 24% |
| 欧盟内 B2B(有税号) | 0 | 反向征收 — 自动 vatNote |
| 欧盟内 B2C + 已注册 OSS | 买方国税率 | 如 DE 19% |
| 欧盟内 B2C(无 OSS) | 卖方国税率 | |
| 欧盟外销售 | 0 | 出口免税 — 自动 vatNote |
接口
POST
/invoices权限: write:invoices计费(按发票计数)
开具发票。autoVat 默认开启。
请求示例
curl -X POST -H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
https://corpenza.com/api/external/accounting/invoices -d '{
"clientName": "Berlin GmbH",
"clientCountry": "DE",
"clientVatNumber": "DE123456789",
"items": [
{ "description": "Consulting", "quantity": 2, "unitPrice": 250 }
]
}'响应示例
{
"id": "inv_...",
"invoiceNumber": "CRP-202606-0042",
"taxRate": 0,
"total": 500,
"vatNote": "Reverse Charge - ...",
"vatReason": "Intra-EU B2B — Reverse Charge"
}GET
/invoices权限: read:invoices发票列表(status、from、to、page、limit 过滤)。
请求示例
curl -H "Authorization: Bearer $API_KEY" \
"https://corpenza.com/api/external/accounting/invoices?status=SENT&page=1&limit=20"GET
/invoices/{id}权限: read:invoices单张发票详情(明细 + 付款)。
POST
/invoices/{id}/cancel权限: write:invoices作废发票(不删除)。PAID 不可作废(409)。