# 商户订单查询
# 接口说明
本接口为【二维码生成规范】的配套接口。由开发者实现,高灯向服务平台发起调用。
使用业务场景:
商户离线生成开票链接,引导用户进入开票页面(扫码或链接跳转)。用户填写发票抬头,高灯将通过本接口向开发者/商户获取开票订单信息,进而完成发票开具,并按约定通过微信卡包或邮件将开票结果交付用户。
# 接口地址
由开发者提供给高灯,请按如下格式返回数据
# 请求方式
POST
# 请求参数
参数名称 | 类型 | 必填 | 最大长度(字节) | 描述 | 示例 |
---|---|---|---|---|---|
order_id | string | 是 | 64 | 商户订单号:开发者接入方业务订单唯一标识 | gd_1904242006002627690 |
org_code | string | 否 | 100 | 销方纳税人识别号.门店编号 销方纳税人识别号(销方票面信息):即统一社会信用代码(一般是15、17、18、20位长度位数字或大写字母,字母I、O、S、V、Z除外) 门店编号:请登录“商家平台“-“门店管理”处查看,如果没有配置门店则“.”传空。 注意,销方纳税人识别号与门店编号中间是英文的“.” | 91469027MA5RH09M0R.91469027MA5RH09M0R 或 91469027MA5RH09M0R. |
# 响应
# 响应头(http header)
请在http响应头部设置字段"G-Protocol-Version",对应值为"1.0.0",若不正确设置则会导致后续开票异步推送结果与预期不一致以及其他开票问题。
# payload数据返回格式
{
"code" : 0,//状态码定义见文末
"msg" : "",//错误信息
"data" :{}//业务数据返回内容
}
返回示例:
{
"code":0,
"msg":"成功",
"data":{
"order_id":"201905032041577285",
"org_code":"92440300MA11111.FFF101",
"terminal_code":"92440300MA11111",
"b_user_id":"",
"amount":702,
"tax_amount":23398,
"no_tax_amount":199,
"order_time":1557127953,
"seller_name":"烧烤店",
"seller_tax_code":"1111111",
"seller_address":"深圳市南山区招商街道",
"seller_tel":"",
"seller_bank_name":"中国建设银行",
"seller_bank_account":"62366872000xxxxxx",
"org_name":"韩国烧烤店",
"payee":"陈三",
"checker":"陈三",
"drawer":"张三",
"callback_url":"http://www.gd.com/callback/blue",
"taxpayer_confirmation": {
"renewable_resource_recycling_flag": 0,
"draw_with_nobuyer_flag": 1,
"not_dutyfree_reason": "02"
},
"goods_info":[
{
"name": "餐费",
"tax_code": "3040201030000000000",
"tax_type": "餐饮服务",
"models": "",
"unit": "kg",
"total_price": "13214.91",
"total": "823.1",
"price": "16.05504799",
"tax_rate": "0.09",
"tax_amount": "1189.34",
"discount": "0",
"preferential_policy_flag": "0",
"zero_tax_flag": "",
"vat_special_management": "",
"special_invoice_kind":""
}
]
}
}
# data 业务数据返回内容描述
参数名称 | 类型 | 必填 | 最大长度(字节) | 描述 | 示例 |
---|---|---|---|---|---|
order_id | string | 是 | 64 | 商户订单号:开发者接入方业务订单唯一标识 | gd_1904242006002627690 |
org_code | string | 否 | 100 | 销方纳税人识别号.门店编码:销方纳税人识别号(销方票面信息):即统一社会信用代码(一般是15、17、18、20位长度位数字或大写字母,字母I、O、S、V、Z除外)门店编码:请登录销项平台门店管理处查看,如果没有配置门店则“.”传空。 注意,销方纳税人识别号与门店编号中间是英文的“.” | 91469027MA5RH09M0R.FF104 |
b_user_id | string | 否 | 50 | 用户在开发者/商户侧的唯一标识 | |
amount | int | 是 | 20 | 订单含税总金额【单位:分(如6666指66.66元)】 | 6666 |
tax_amount | int | 是 | 20 | 总税额【单位:分(如6666指66.66元)】 | 6666 |
no_tax_amount | int | 是 | 20 | 不含税总金额【单位:分(如6666指66.66元)】 | 6666 |
order_time | int | 是 | 11 | 订单时间:秒级时间戳 | 1512222222 |
seller_name | string | 是 | 100 | 销方名称(销方票面信息):如果填入则根据填入信息填入票面,如果不填入,则默认读取商户平台销方企业名称填入 【名称不含有特殊符号:’<’ ‘>’ ‘转义符’ ‘双引号’ ‘逗号’等特殊符号】 | 海南高灯科技有限公司 |
seller_tax_code | string | 是 | 20 | 销方纳税人识别号(销方票面信息):即统一社会信用代码(一般是15、17、18、20位长度位数字或大写字母,字母I、O、S、V、Z除外) | 91469027MA5RH09M0R |
seller_address | string | 否 | 100 | 销方地址(销方票面信息):如果填入则根据填入信息填入票面 | 海南省老城高新技术产业示范区海南生态软件园 |
seller_tel | string | 否 | 100 | 销方电话(销方票面信息):如果填入则根据填入信息填入票面 | 0755-86888888(若无座机可输入手机号:18285162583) |
seller_bank_name | string | 否 | 100 | 销方银行名称(销方票面信息):如果填入则根据填入信息填入票面 | 中国工商银行深圳南山科苑分行 |
seller_bank_account | string | 否 | 100 | 销方银行账号(销方票面信息):如果填入则根据填入信息填入票面【纯数字,不能有汉字、字母或其它字符,首位数字不能为0】 6 | 2128124020000333990 |
org_name | string | 否 | 50 | 门店名称 | 深圳市南山区海岸城店 |
terminal_code | string | 是 | 50 | 税盘号: 1、使用PC端云票儿助手客户端时必填,要区别航信金税盘(白色)、百旺税控盘(黑色)和税务Ukey [航信主盘传0,航信分盘传分机号,如:1、2、3……等,百旺传12位盘号(前面的33-不用输入),税务Ukey传盘背后12位的盘号] 2、使用高灯WCS时,如果不填入,则采用轮询当前在线托管的盘进行开票,如果填入,则指定对应盘进行开票,航信和百旺均填入12位的盘号(前面的33-或44-不用输入),不支持Ukey盘 3、使用区块链进行开票时,epID要传; 4、Ukey托管,传值格式:12位Ukey设备编号; 5、新税控服务器,传值格式:虚拟设备号_终端号(必填,如:111111111111_0001) | 661234567789 |
remark | string | 否 | 180 | 备注(票面信息): 1、正常发票备注不超过180字节,如是差额征税或红字发票等,系统默认会填入备注信息,默认信息长度加用户填入长度不超过180字节; 2、差额征税默认信息长度最少18字节(即金额1.00)(例:差额征税:1.00); 3、电子红字发票默认信息长度最少46字节(即发票代码12位,发票号码8位)(例:对应正式发票代码:012345678912、号码:01234567) 4、专用红字发票默认信息长度最少50字节(即信息表编号16位)(例:开具红字增值税专用发票信息表编号0123456789012345) 行程详情:2019年10月1日 15:30 深圳-北京高速 | |
drawer | string | 是 | 16 | 开票人姓名(票面信息) | 高灯云 |
payee | string | 否 | 16 | 收款人姓名(票面信息):如果填入则根据填入信息填入票面 | 全电发票无需填写 |
checker | string | 否 | 16 | 复核人姓名(票面信息):如果填入则根据填入信息填入票面 | 全电发票无需填写 |
invoice_type_code | string | 否 | 3 | 开具发票类型:默认为026 004:增值税专用发票 007:增值税普通发票 025:增值税卷式发票 026:增值税电子发票 028:增值税电子专票 032:区块链电子发票 081:全电电子专票 082:全电电子普票 | 081 |
callback_url | string | 是 | 500 | 发票结果回传地址:接收平台推送的开票结果消息地址,可参见【开票结果异步通知】章节协议 | 开发者服务器地址 |
taxpayer_confirmation | (json object) | 否 | 开具全电发票时必填 | ||
taxpayer_confirmation .renewable_resource_recycling_flag | int | 是 | 1 | 再生资源回收单位标志 1、是;0、否 | 0,再生资源回收单位传1 |
taxpayer_confirmation .draw_with_nobuyer_flag | int | 是 | 1 | 试点阶段无购买方纳税人信息继续开票标志 1、是;0、否 | 一般传:1 |
taxpayer_confirmation .not_dutyfree_reason | string | 否 | 2 | 不开免税发票原因代码 01、开具发票为2022年3月31日前发生纳税义务的业务; 02、前期已开具相应征收率发票,发生销售折让、中止或者退回等情形需要开具红字发票,或者开票有误需要重新开具; 03、因为实际经营业务需要,放弃享受免征增值税政策 | 小规模开具非免税发票时需要填写原因,免税传空 |
goods_info | array | 是 | (list) | 商品明细 | [{},{}…] |
special_invoice_kind | string | 否 | 2 | 特殊票种标识: 开具税控成品油发票时必填(08:成品油), 开具其他票时可以为空 | 01,全电发票成品油 |
specific_business_code | string | 否 | 2 | 特定业务代码, 特定业务必填。 01-成品油 04-货物运输 06-不动产经营租赁服务 09-旅客运输行业 16-农产品收购 03-建筑服务行业 05-不动产销售服务 13-拖拉机和联合收割机发票 | |
real_static_rent | (json object) | 否 | 开具不动产经营租赁服务全电发票(数电票)时必填 | ||
real_static_rent.property_num | string | 是 | 50 | 房屋产权证书/不动产权证号码, 若没有证书填写 "无" | |
real_static_rent.location | string | 是 | 100 | 不动产地址 (省市区县) | |
real_static_rent.address_detail | string | 是 | 200 | 不动产详细地址,必须包含“街、路、村、乡、镇、道、巷、号”等关键词之一 | |
real_static_rent.rent_begin_date | string | 是 | 10 | 租赁期起 yyyy-MM-dd格式 | |
real_static_rent.rent_end_date | string | 是 | 10 | 租赁期止 yyyy-MM-dd格式 | |
real_static_rent.intercity_flag | string | 是 | 1 | 跨地市标志 Y-是 N-否 | |
real_static_rent.unit_of_area | int | 是 | 1 | 面积单位 10:平方千米; 20:平方米; 30:公顷; 40:亩 | |
passenger_transport | list | 否 | 开具旅客运输行业开全电发票(数电票)时必填 | ||
passenger_transport.traveler | string | 否 | 50 | 出行人 | |
passenger_transport.id_type | int | 否 | 1 | 出行人证件类型 102营业执照、201居民身份证、202军官证、203武警警官证、204士兵证、206残疾人证、207残疾军人证(1-8级)、208外国护照、210港澳居民来往内地通行证、212中华人民共和国往来港澳通行证、213台湾居民来往大陆通行证、214大陆居民往来台湾通行证、215外国人居留证、227中国护照 | |
passenger_transport.id_number | string | 否 | 50 | 出行人证件号码 | |
passenger_transport.travel_date | string | 否 | 10 | 出行日期 yyyy-MM-dd格式 | |
passenger_transport.departure_place | string | 否 | 100 | 出发地,按行政区划名称填写,包括县(市、区)名称,可在县(市、区)后自主增添具体地址 | |
passenger_transport.destination_palce | string | 否 | 200 | 到达地 | |
passenger_transport.vehicle_type | int | 否 | 1 | 交通工具类型: 1飞机; 2火车; 3长途汽车; 4公共交通; 5出租车; 6汽车; 7船舶; 9其他; | |
passenger_transport.level | string | 否 | 50 | 等级,若交通工具为火车、飞机、船舶,则该要素为必填。等级类型: 交通工具-飞机:经济舱、头等舱、公务舱; 交通工具-船舶:一等舱、二等舱、三等舱; 交通工具-火车:一等座、二等座、软席(软座、软卧)、硬席(硬座、硬卧) | |
goods_transport | list | 否 | 开具货物运输服务全电发票(数电票)时必填 | ||
goods_transport.transport_number | string | 否 | 运输工具号牌,运输工具种类属于无牌号的工具种类时,需填写无 | ||
goods_transport.transport_kind | string | 否 | 运输工具种类: 铁路运输 公路运输 水路运输 航空运输 管道运输 | ||
goods_transport.goods_name | string | 否 | 货物运输名称 | ||
goods_transport.departure_place | string | 否 | 出发地.按行政区划名称填写,包括县(市、区)名称,可在县(市、区)后自主增添具体地址 | ||
goods_transport.destination_place | string | 否 | 到达地,与出发地同要求 | ||
agricultural_purchase | object | 否 | 开具农产品收购全电发票(数电票)时必填 | ||
agricultural_purchase.id_type | string | 否 | 农产品收购证件类型 102营业执照、201居民身份证、202军官证、203武警警官证、204士兵证、206残疾人证、207残疾军人证(1-8级)、208外国护照、210港澳居民来往内地通行证、212中华人民共和国往来港澳通行证、213台湾居民来往大陆通行证、214大陆居民往来台湾通行证、215外国人居留证、227中国护照 | ||
building_service | object | 否 | 开具建筑服务类全电发票(数电票)时必填 | ||
building_service.site | string | 是 | 建筑服务发生地 | ||
building_service.detail_site | string | 否 | 发生地详细地址 | ||
building_service.building_project | string | 是 | 建筑项目名称 | ||
building_service.cross_sign | string | 是 | 跨地市标志,填值:Y、N | ||
building_service.vat_land_number | string | 否 | 土地增值税项目编号 | ||
real_static_sales | object | 否 | 开具不动产销售发票(数电票)时必填 | ||
real_static_sales.property_num | string | 否 | 房屋产权证书/不动产权证号码 | ||
real_static_sales.loaction | string | 是 | 不动产地址 | ||
real_static_sales.address_detail | string | 否 | 不动产详细地址 | ||
real_static_sales.cross_sign | string | 是 | 跨市标志,填值:Y、N | ||
real_static_sales.unit_of_area | int | 是 | 面积单位 : 10:平方千米; 20:平方米; 30:公顷; 40:亩 | ||
real_static_sales.online_contract_code | string | 否 | 不动产单元代码/网签合同备案编码 | ||
real_static_sales.vat_land_number | string | 否 | 土地增值税项目编号 | ||
real_static_sales.assessed_taxable_amount | string | 否 | 核定计税价格 | ||
real_static_sales.actual_taxable_amount | string | 否 | 实际成交含税金额 | ||
tractor_combine | object | 否 | 拖拉机和联合收割机服务必填 | ||
tractor_combine.chassis_number | string | 否 | 底盘号或机架号 | ||
tractor_combine.engine_number | string | 是 | 发动机号 | ||
tractor_combine.is_register | string | 否 | 是否用于拖拉机和联合收割机登记 Y-是 N-否 默认N |
# goods_info字段详情
参数名称 | 类型 | 必填 | 最大长度(字节) | 描述 | 示例 |
---|---|---|---|---|---|
name | string | 是 | 50 | 商品名称 【名称不含有特殊符号:‘<’ ‘>’ ‘/’ ‘&’ 等特殊符号】 | 餐费 |
tax_code | string | 是 | 40 | 税收商品编码:商品所属分类商品编码,详见[税收商品编码税率表] | 3070401000000000000 |
tax_type | string | 否 | 50 | 税收商品类别:指商品在商品编码中的分类名称 | 餐饮服务 |
models | string | 否 | 36 | 商品规格(商品票面信息):指商品规格型号,如果填入将显示在发票票面“规格型号”栏目 | DDM2022 |
unit | string | 否 | 14 | 商品单位(商品票面信息):如果填入将显示在发票票面“单位”栏目 | 餐 |
total_price | decimal(10,2) | 是 | 不含税商品总价= 不含税单价 * 数量【单位:元,保留2位小数】 | 1000.50 | |
total | string | 否 | 20 | 商品数量:精确到6位,和price成对存在) | 1 |
price | string | 否 | 浮点型 | 商品单价(精确到小数点后6位,加上小数点共12位),不含税 日常售卖的商品或服务一般是含税价格,对应不含税单价为 含税单价/(1 + 税率)。 假如商品单价200元,税率 10%,则不含税价格为: 200/(1+10%) ≈ 181.82, 如果数量为1,保留两位小数即可,否则保留6位 | 66.66 |
tax_rate | decimal(10,2) | 是 | 商品税率:请参照【税收商品编码税率表】或咨询财务【范围0-1】 | 0.17 | |
tax_amount | decimal(10,2) | 是 | 税额=不含税金额*税率【保留两位小数(精确到2位)】 | 1.70 | |
discount | decimal(10,2) | 否 | 含税折扣总金额:金额必须是负数【保留2位小数(精确到2位)】 | -10.0 | |
preferential_policy_flag | string | 否 | 1 | 优惠政策标志: 0:不使用优惠政策 1:使用优惠政策 说明: 1、若商品为零税率,需在零税率标识(zero_tax_flag)填写相应零税率标识,并且在增值税特殊管理(vat_special_management)填写相应的优惠说明; 2、若商品不为零税率,则仅需在增值税特殊管理中填入。 | 0 |
zero_tax_flag | string | 否 | 1 | 零税率标识: 空:非零税率 0:出口零税率 1:免税 2:不征税 3:普通零税率 (0、1、2时优惠政策标识应为1,空和3时优惠政策标识应为0,填入时商品税率需设置为0%) | 空 |
vat_special_management | string | 否 | 50 | 增值税特殊管理:优惠政策为1时该字段必传,根据税局“税收分类编码”显示,目前包括但不限于: 100%先征后退 50%先征后退 不征税 先征后退 免税 即征即退100% 即征即退30% 即征即退50% 即征即退70% 按3%简易征收 按5%简易征收 按5%简易征收减按1.5%计征 按5%简易征收减按3%计征 稀土产品 简易征收 超税负12%即征即退 超税负3%即征即退 超税负8%即征即退 【目前仅支持按5%(3% 2% 1.5%)简易征收、免税、不征税),preferential_policy_flag 优惠政策标识位 1 时必填】 | 免税 |
# 业务状态码定义
状态码 | 说明 | 释义 |
---|---|---|
0 | 订单正常返回 | 订单拉取成功后后进行开票 |
2001 | 订单不存在 | 当订单信息存在上报延迟,导致查询不成功。高灯会在24h内进行重试拉单,成功则正常开票,否则认为开票失败 |
2002 | 订单取消 | 订单状态发生异常关闭时返回,高灯不会进行重试,默认为开票失败 |