TF Fiscal

其他电子凭证

DC-e 内容申报

5 个接口

DC-e API(型号 99,布局 1.00)支持开具、查询、取消电子内容声明并获取其 PDF(DACE)。DC-e 是在无须开具发票时为货物或商品运输提供凭证的税务文档——例如涉及 ICMS 非纳税人的发货。开具方始终为法人(CNPJ);收件方可以是法人(CNPJ)或自然人(CPF)。业务数据放在 /create 的请求体中;访问密钥的技术字段(cDC、cDV、cUF、dhEmi、mod)由服务器自动计算。

端点方法说明
/api/dce/createPOST开具 DC-e
/api/dce/consultPOST查询 DC-e 状态
/api/dce/cancelPOST取消已授权的 DC-e
/api/dce/pdfPOST获取 DC-e 的 DACE(PDF)

DC-e 被路由到开具方所在 UF 的授权方。字段 ide.cUF 必须与 emit.enderEmit.UF 中填写的 UF 一致——两者不一致时税务局会以 cStat=220 拒绝;若省略,则从该 UF 推导出 cUF。

POST/api/dce/create

开具 DC-e

根据发送的请求体开具一张 DC-e。客户端只发送业务数据;访问密钥的技术识别字段由服务器计算(见 ide 表下方的说明)。仅在生产环境(tpAmb=1)且 DC-e 被授权时才扣除额度。

必需请求头

请求头类型说明
tokenstring开票公司的 Token
signstringMD5 签名:MD5(token + path + body + timestamp)
timestampstringUnix 时间戳(秒,5 分钟窗口)

Body — 根

字段类型说明
ide *objectDC-e 的标识
emit *object开具方/发件方数据(CNPJ,或通过电商平台的 CPF——见下文)
dest *object收件方数据
det *array声明的项目/货物——至少 1 项
total *object声明的合计
transpobject运输数据
marketplaceobject电商平台数据(仅当 ide.tpEmit=1 时)
fiscoobject税务机关数据(仅当 ide.tpEmit=0 时)
autXMLarray被授权访问 XML 的 CNPJ/CPF
infAdicobject附加信息
请求中的必填字段: ide.tpAmb;emit.CNPJ(14 位)或 emit.CPF(11 位,通过电商平台的个人发件方——见 emit 中的注记)、emit.xNome 和 emit.enderEmit(xLgr、nro、xBairro、cMun、xMun、CEP 为 8 位、UF);dest 含 CNPJ 或 CPF、dest.xNome 和 dest.enderDest(同样的地址字段);det 中至少 1 项,含 xProd、NCM(2 或 8 位)、qCom > 0 和 vProd > 0;以及 total.vDC > 0。其余所有字段均为可选。

ide — 标识

字段类型说明
tpAmb *int环境:1=生产,2=测试。ide 中唯一真正必填的字段。
tpEmitint开具方类型:0=税务机关应用,1=电商平台,2=自主开具方。可选——默认:2
cUFint开具方 UF 的 IBGE 代码(2 位)。可选——省略时从 emit.enderEmit.UF 推导。如发送,必须与该 UF 一致(不一致时税务局会以 cStat=220 拒绝)
serieint税务文档系列号(访问密钥的 3 位)——标识 DC-e 的编号序列。可选——默认:公司中登记的 DC-e 系列
nDClongDC-e 的顺序号(构成访问密钥)。可选——省略或为 0 时由服务器自动递增
nSiteAutorizint处理该 DC-e 的授权站点标识(访问密钥的 1 位)。通常为 0(主站点)。可选——默认:0
tpEmisint开具方式:1=正常,9=应急。可选——默认:1

由服务器自动填充——无须发送: mod(固定为 99)和 cDV(密钥校验位)始终由服务器设定;cDC(6 位数字代码)、dhEmi(开具日期时间)和 verProc(处理程序版本)在省略时生成。上表中的 serie、nDC 和 cUF 字段在省略时也会自动填充。

emit — 开具方 / 发件方

字段类型说明
CNPJ ⚠string开具方 CNPJ(14 位)。省略时填充为 token 对应公司的 CNPJ
CPF ⚠string个人发件方的 CPF(11 位)。仅允许通过电商平台开具——见下方注记
xNome *string开具方/发件方的姓名或公司名称
enderEmit *object开具方地址(见下方结构)
个人发件方(CPF):根据税务局规则,CPF 不能作为自主开具方(tpEmit=2 要求 CNPJ)。如需以 CPF 作为发件方开具,只需发送 emit.CPF(不含 emit.CNPJ):服务器会自动设置 tpEmit=1(电商平台),在访问密钥中使用贵公司的 CNPJ(token 对应公司)作为授权开具方,并以公司数据填充 marketplace 块。所填的 CPF 将在 emit 中显示为发件方。

dest — 收件方

字段类型说明
CNPJ ⚠string收件方 CNPJ(14 位)
CPF ⚠string收件方 CPF(11 位)
xNome *string收件方的姓名或公司名称
enderDest *object收件方地址(见下方结构)

enderEmit / enderDest — 地址

字段类型说明
xLgr *string街道
nro *string门牌号
xCplstring补充信息
xBairro *string街区
cMun *long自治市 IBGE 代码(7 位)
xMun *string自治市名称
CEP *string邮政编码(8 位)
UF *stringUF 简称(2 个字母)
cPaisint国家代码。默认:1058(巴西)
xPaisstring国家名称。默认:BRASIL
fonestring电话
emailstring电子邮箱

det[] — 声明的项目

字段类型说明
nItemint项目顺序号
xProd *string声明的货物/商品描述
NCM *stringNCM 代码(2 或 8 位)
qCom *decimal数量(> 0)
vUnComdecimal单价
vProd *decimal项目总金额(> 0)
infAdProdstring项目附加信息

total — 合计

字段类型说明
vDC *decimal声明的总金额(> 0)

transp — 运输

字段类型说明
modTransint运输方式:0=邮政,1=自有,2=承运商。默认:2
CNPJTranspstring承运商 CNPJ

marketplace — 电商平台(仅 tpEmit=1)

字段类型说明
CNPJstring电商平台 CNPJ
xNomestring电商平台名称
Sitestring电商平台网站

fisco — 税务机关(仅 tpEmit=0)

字段类型说明
CNPJstring机关 CNPJ
xOrgaostring机关名称
UFstring机关所在 UF

autXML[] — XML 授权对象

字段类型说明
CNPJstring被授权查询/下载 XML 的 CNPJ
CPFstring被授权查询/下载 XML 的 CPF

infAdic — 附加信息

字段类型说明
infAdFiscostring税务机关关注的信息
infCplstring纳税人关注的补充信息
infAdMarketPlacestring电商平台附加信息

* 必填字段。⚠ 开具方和收件方中,CNPJ 或 CPF 至少须填一个。

POST/api/dce/consult

查询 DC-e 状态

根据访问密钥查询 DC-e 在税务局上的当前状态。当 DC-e 已取消时,响应反映取消的数据(本地库是取消信息的事实来源)。

必需请求头

请求头类型说明
tokenstring开票公司的 Token
signstringMD5 签名
timestampstringUnix 时间戳(秒)

Body

字段类型说明
chDCe *stringDC-e 访问密钥(44 位)

* 必填字段。

POST/api/dce/cancel

取消 DC-e

取消一张已授权的 DC-e(事件 110111)。要求 DC-e 已被授权(已有协议号)且尚未取消。每张 DC-e 只允许取消一次。

必需请求头

请求头类型说明
tokenstring开票公司的 Token
signstringMD5 签名
timestampstringUnix 时间戳(秒)

Body

字段类型说明
chDCe *stringDC-e 访问密钥(44 位)
xJust *string取消理由(按税务局要求至少 15 个字符)
nProtstring授权协议号。可选:省略时使用开具时登记的协议号

* 必填字段。

遇到拒绝时,响应返回 success=false、拒绝的 cStat/xMotivo 以及附加字段 xmlEnviadoDebug(含已发送的 XML),用于诊断。

POST/api/dce/pdf

获取 DC-e PDF

返回 DACE 的 URL——即 DC-e 的 PDF 表现形式。当 PDF 在存储中尚不存在时,会按需生成并发送。如存储不可用,则 PDF 以 base64 形式直接在响应体中返回。

必需请求头

请求头类型说明
tokenstring开票公司的 Token
signstringMD5 签名
timestampstringUnix 时间戳(秒)

Body

字段类型说明
chDCe *stringDC-e 访问密钥(44 位)

* 必填字段。

GET/api/dce/get_list

DC-e 列表(分页)

分页列出公司的 DC-e。参数通过 查询字符串(query string)传递(不在 body 中)。时间过滤可选,但若使用则需同时传入 start_create_time 和 end_create_time。

必需请求头

请求头类型说明
tokenstring开票公司令牌
signstringMD5 签名(path 包含查询字符串)
timestampstring秒级 Unix 时间戳

查询字符串

参数类型说明
page *int页码(≥ 1)
page_size *int每页大小(1–50)
start_create_timelongUnix 时间戳(毫秒) — 起始(需要 end_create_time)
end_create_timelongUnix 时间戳(毫秒) — 结束
statusstring按状态过滤。值: "Success"(已授权)、"Canceled"(已取消)、"Processing"(处理中)、"Failed"(失败)、"Unknown"(未知)

* 必填字段。