文档中心 > API类目 > 电子发票API

alipay.ebpp.invoice.info.send (发票信息回传接口(新版))

商户或ISV将发票信息发送至发票管家。例如:商户为用户开出发票之后,通过该接口将发票发送到买家支付宝的发票管家中,买家可在发票管家中查看发票。

公共参数

请求地址:
环境 HTTPS请求地址
正式环境 https://openapi.alipay.com/gateway.do
公共请求参数:
参数 类型 是否必填 最大长度 描述 示例值
app_id String 32 支付宝分配给开发者的应用ID 2014072300007148
method String 128 接口名称 alipay.ebpp.invoice.info.send
format String 40 仅支持JSON JSON
charset String 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
sign_type String 10 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 RSA2
sign String 344 商户请求参数的签名串,详见签名 详见示例
timestamp String 19 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" 2014-07-24 03:07:50
version String 3 调用的接口版本,固定为:1.0 1.0
app_auth_token String 40 详见应用授权概述
biz_content String - 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档

请求参数

参数 类型 是否必填 最大长度 描述 示例值
m_short_name String 必须 20 开票商户品牌简称,与商户入驻时的品牌简称保持一致。 XSD
sub_m_short_name String 必须 20 开票商户门店简称,与商户入驻时的门店简称保持一致。 XSD_HL
invoice_info_list InvoiceSendOpenModel [] 必须 - 发票信息列表
  • └ user_id
  • String
  • 特殊可选
  • 16
  • 支付宝用户userId,当发送红字发票时,即invoice_type=RED时,可选填;其他情况必填。
  • 2088399922382233
  • └ invoice_code
  • String
  • 必填
  • 15
  • 发票代码,该字段与invoice_no构成一张发票的唯一标识。
  • 4112740003
  • └ invoice_no
  • String
  • 必填
  • 10
  • 发票号码,该字段与invoice_code构成一张发票的唯一标识。
  • 41791003
  • └ invoice_date
  • String
  • 必填
  • 10
  • 开票日期,格式如:YYYY-MM-DD。
  • 2017-10-10
  • └ sum_amount
  • String
  • 必填
  • 30
  • 价税合计,票面上的总开票金额,单位(元),保留两位小数,sum_amount=ex_tax_amount+tax_amount。
  • 101.00
  • └ ex_tax_amount
  • String
  • 必填
  • 30
  • 不含税金额,票面上的不含税金额,单位(元),保留两位小数。
  • 100.00
  • └ tax_amount
  • String
  • 必填
  • 30
  • 合计税额,票面上的合计税额,单位(元),保留两位小数。
  • 1.00
  • invoice_content
  • InvoiceItemOpenModel []
  • 必填
  • 10000
  • 发票明细项。
  • └ item_name
  • String
  • 必填
  • 80
  • 开票项目:货物或应税劳务、服务名称
  • 餐饮费
  • └ item_no
  • String
  • 必填
  • 20
  • 国税局制定的商品税收编码,必须是最末级
  • 1010101990000000000
  • └ item_spec
  • String
  • 可选
  • 30
  • 规格型号
  • G39
  • └ item_unit
  • String
  • 必填
  • 10
  • 单位
  • └ item_quantity
  • Number
  • 必填
  • 10
  • 数量,可精确到两位小数
  • 1
  • └ item_unit_price
  • String
  • 必填
  • 20
  • 不含税单价,可精确到8位小数
  • 100.00
  • └ item_ex_tax_amount
  • String
  • 必填
  • 20
  • 明细行不含税金额,保留两位小数
  • 100.00
  • └ item_tax_rate
  • String
  • 必填
  • 3
  • 明细行税率,无税或者免税情况下输入:0.00。
  • 0.01
  • └ item_tax_amount
  • String
  • 必填
  • 20
  • 明细行税额,保留两位小数,无税或者免税情况下输入:0.00。
  • 1.00
  • └ item_sum_amount
  • String
  • 必填
  • 20
  • 明细行价税合计,必须保证item_sum_amount=item_ex_tax_amount+item_tax_amount。
  • 101.00
  • └ row_type
  • String
  • 必填
  • 10
  • 发票行性质:0表示正常行,1表示折扣行,2表示被折扣行。
  • 0
  • └ out_trade_no
  • String
  • 必填
  • 60
  • 该发票基于的实际交易流水号。
  • 20171023293456785924325
  • └ invoice_type
  • String
  • 必填
  • 5
  • 标识是红票还是蓝票,RED:红票;BLUE:蓝票。
  • BLUE
  • └ invoice_kind
  • String
  • 必填
  • 30
  • 标识发票的类型,PLAIN:增值税电子普通发票;SPECIAL:增值税专用发票;PLAIN_INVOICE:增值税普通发票;SALSE_INVOICE:机动车销售统一发票
    ;PAPER_INVOICE:增值税普通发票(卷式)。
  • PLAIN
  • invoice_title
  • InvoiceTitleOpenModel
  • 必填
  • 10000
  • 发票抬头,票面上的购买方信息。
  • └ title_name
  • String
  • 必填
  • 50
  • 票面上的购买方名称
  • 支付宝(中国)网络技术有限公司
  • └ payer_register_no
  • String
  • 可选
  • 20
  • 票面上的购买方纳税人识别号
  • 9133010060913454XP
  • └ payer_address_tel
  • String
  • 可选
  • 200
  • 票面上的购买方地址、电话
  • 杭州市西湖区天目山路黄龙时代广场0571-11111111
  • └ payer_bank_name_account
  • String
  • 可选
  • 100
  • 票面上的购买方开户行及账户
  • 中国建设银行11111111
  • └ payee_register_no
  • String
  • 必填
  • 50
  • 票面上销售方税号信息。
  • 310101000000090
  • └ payee_register_name
  • String
  • 必填
  • 50
  • 票面上销售方企业名称。
  • 支付宝(杭州)信息技术有限公司
  • └ payee_address_tel
  • String
  • 必填
  • 30
  • 票面上销售方地址、电话信息。
  • 杭州市西湖区某某办公楼 0571-237405862
  • └ payee_bank_name_account
  • String
  • 必填
  • 50
  • 票面上销售方开户行及账号。
  • 西湖区建行11111111111
  • └ check_code
  • String
  • 必填
  • 30
  • 票面上的校验码信息。
  • 15170246985745164986
  • └ out_invoice_id
  • String
  • 必填
  • 50
  • 外部发票id,isv生成发票之后所生成的发票流水号,主要用做存储。
  • 201710283459661232435535
  • └ ori_blue_inv_code
  • String
  • 特殊可选
  • 20
  • 红票情况下,必须填入原始蓝票的发票代码。
  • 4112740002
  • └ ori_blue_inv_no
  • String
  • 特殊可选
  • 20
  • 红票情况下,必须填入原始蓝票的发票号码。
  • 41791002
  • └ file_download_type
  • String
  • 必填
  • 3
  • 下载文件类型,需要回传文件下载链接的情况下必传,PDF:下载文件类型为pdf;JPG:下载的文件类型为jpg。
  • PDF
  • └ file_download_url
  • String
  • 必填
  • 100
  • 发票的pdf或者jpg文件下载地址。
  • http://img.hadalo.com/aa/kq/ddhrtdefgxKVXXXXa6apXXXXXXXXXX.pdf
  • └ payee
  • String
  • 可选
  • 50
  • 票面上收款人信息。
  • 张三
  • └ checker
  • String
  • 可选
  • 50
  • 票面上复核人信息。
  • 李四
  • └ clerk
  • String
  • 可选
  • 50
  • 票面上开票员信息。
  • 赵吴
  • └ invoice_memo
  • String
  • 可选
  • 100
  • 票面上备注信息。
  • 订单号:2017120800001
  • └ extend_fields
  • String
  • 可选
  • 1000
  • 预留的扩展字段,格式如:key1=value1\nkey2=value2\nkey3=value3,字段之间以\n分隔。
  • m_invoice_detail_url=http://196.021.871.011:8080/invoice/detail.action?fpdm= 4112740003&fphm=41791003

公共响应参数

参数 类型 是否必填 最大长度 描述 示例值
code String - 网关返回码,详见文档 40004
msg String - 网关返回码描述,详见文档 Business Failed
sub_code String - 业务返回码,详见文档 ACQ.TRADE_HAS_SUCCESS
sub_msg String - 业务返回码描述,详见文档 交易已被支付
sign String - 签名,详见文档 DZXh8eeTuAHoYE3w1J+POiPhfDxOYBfUNn1lkeT/V7P4zJdyojWEa6IZs6Hz0yDW5Cp/viufUb5I0/V5WENS3OYR8zRedqo6D+fUTdLHdc+EFyCkiQhBxIzgngPdPdfp1PIS7BdhhzrsZHbRqb7o4k3Dxc+AAnFauu4V6Zdwczo=

响应参数

参数 类型 是否必填 最大长度 描述 示例值
url String 选填 10000 发票访问地址,同步红票的情况下不返回该字段,同步蓝票的情况下如果同步单张发票,返回发票详情链接地址,如果同步的是多张发票,返回发票列表地址 alipays://platformapi/startapp?appId=20000920&url=%2Fwww%2Flist.htm%3Ffrom%3Doffline

请求示例

  • JAVA
  • .NET
  • PHP
  • HTTP请求源码
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayEbppInvoiceInfoSendRequest request = new AlipayEbppInvoiceInfoSendRequest();
request.setBizContent("{" +
"\"m_short_name\":\"XSD\"," +
"\"sub_m_short_name\":\"XSD_HL\"," +
"      \"invoice_info_list\":[{" +
"        \"user_id\":\"2088399922382233\"," +
"\"invoice_code\":\"4112740003\"," +
"\"invoice_no\":\"41791003\"," +
"\"invoice_date\":\"2017-10-10\"," +
"\"sum_amount\":\"101.00\"," +
"\"ex_tax_amount\":\"100.00\"," +
"\"tax_amount\":\"1.00\"," +
"          \"invoice_content\":[{" +
"            \"item_name\":\"餐饮费\"," +
"\"item_no\":\"1010101990000000000\"," +
"\"item_spec\":\"G39\"," +
"\"item_unit\":\"台\"," +
"\"item_quantity\":1," +
"\"item_unit_price\":\"100.00\"," +
"\"item_ex_tax_amount\":\"100.00\"," +
"\"item_tax_rate\":\"0.01\"," +
"\"item_tax_amount\":\"1.00\"," +
"\"item_sum_amount\":\"101.00\"," +
"\"row_type\":\"0\"" +
"            }]," +
"\"out_trade_no\":\"20171023293456785924325\"," +
"\"invoice_type\":\"BLUE\"," +
"\"invoice_kind\":\"PLAIN\"," +
"\"invoice_title\":{" +
"\"title_name\":\"支付宝(中国)网络技术有限公司\"," +
"\"payer_register_no\":\"9133010060913454XP\"," +
"\"payer_address_tel\":\"杭州市西湖区天目山路黄龙时代广场0571-11111111\"," +
"\"payer_bank_name_account\":\"中国建设银行11111111\"" +
"        }," +
"\"payee_register_no\":\"310101000000090\"," +
"\"payee_register_name\":\"支付宝(杭州)信息技术有限公司\"," +
"\"payee_address_tel\":\"杭州市西湖区某某办公楼 0571-237405862\"," +
"\"payee_bank_name_account\":\"西湖区建行11111111111\"," +
"\"check_code\":\"15170246985745164986\"," +
"\"out_invoice_id\":\"201710283459661232435535\"," +
"\"ori_blue_inv_code\":\"4112740002\"," +
"\"ori_blue_inv_no\":\"41791002\"," +
"\"file_download_type\":\"PDF\"," +
"\"file_download_url\":\"http://img.hadalo.com/aa/kq/ddhrtdefgxKVXXXXa6apXXXXXXXXXX.pdf\"," +
"\"payee\":\"张三\"," +
"\"checker\":\"李四\"," +
"\"clerk\":\"赵吴\"," +
"\"invoice_memo\":\"订单号:2017120800001\"," +
"\"extend_fields\":\"m_invoice_detail_url=http://196.021.871.011:8080/invoice/detail.action?fpdm= 4112740003&fphm=41791003\"" +
"        }]" +
"  }");
AlipayEbppInvoiceInfoSendResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

响应示例

  • JSON示例
{
	"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE",
	"alipay_ebpp_invoice_info_send_response":{
		"msg":"Success",
		"code":"10000",
		"url":"alipays://platformapi/startapp?appId=20000920&url=%2Fwww%2Flist.htm%3Ffrom%3Doffline"
	}
}

异常示例

  • JSON示例
{
	"sign":"ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE",
	"alipay_ebpp_invoice_info_send_response":{
		"msg":"Service Currently Unavailable",
		"code":"20000",
		"sub_msg":"系统繁忙",
		"sub_code":"isp.unknow-error"
	}
}

业务错误码

错误码 错误描述 解决方案
INVALID_PARAMETER 参数有误 调整入参
SYSTEM_ERROR 系统繁忙 内部系统异常,稍后重试
MERCHANT_NOT_SUPPORT 开票商户尚未完成入驻 请先完成开票商户入驻
BIZ_ERROR 业务异常 依据错误提示,调整入参,稍后重试
RECORD_ALREADY_EXIST 发票纪录已存在 检查out_invoice_id是否重复,或者校验发票号码、代码是否重复

公共错误码

返回
顶部