开发指引(区块链发票模式)

更新时间:2023.10.12

本开发指引对微信支付电子发票的标准流程、关键场景的开发思路和最佳实践展开介绍。你可以阅读开发指引,并结合【API文档】完成微信支付电子发票的接入流程。

# 1、前置条件

为降低开发指引环节的阅读和实践成本,建议在阅读本指引前,确保你已经:

  • 阅读【接入前准备】文档,完成AppID、商户证书等相关参数和材料的准备

  • 阅读【接口规则】,了解微信支付API v3通用的基础约定,包括认证机制、请求规则、数据格式、参数兼容性、错误处理等

# 2、开发指引

你可以根据商户的不同需求,调用微信的电子发票能力,进行场景应用。

# 业务时序图

业务序列图

步骤一 服务商邀请子商户开通电子发票,子商户并完成相关的开票模式选择和产品设置后,可先调用《检查子商户开票功能状态》检查商户是否完成电子发票功能授权,如未授权需根据《接入前准备》操作步骤完成授权邀请;

步骤二 确认授权关系后,须先调用《配置开发选项》接口设置回调地址、支付开票入口标识等,用于接收获取用户抬头等信息通知;调用《创建电子发票卡券模板》接口为商户创建电子发票的卡券模板;

步骤三 配置完成后,可调用《获取商品和服务税收分类对照表》查询商户设置的开票商品税率信息;调用《获取商户开票基础信息》,查询获取商户配置的电子发票开票基础信息;

步骤四 申请开具电子发票

  • 场景1、微信支付场景申请开票

用户通过微信支付消费,商户可在支付账单页展示开票入口。通过《微信支付下单接口》传入电子发票入口开放标识字段(仅指定订单展示)或通过《配置开发选项》设置支付订单标识(设置后全部订单展示);用户支付完成后,收到带「开发票」入口的支付消息通知,通过支付账单页填写发票抬头,并提交申请。

  • 场景2、非微信支付场景申请开票

用户通过其他方式消费,可通过《获取抬头填写链接》,生成开票二维码或在订单小程序展示,用户扫码或点击后,填写发票抬头信息。

步骤五 用户填写抬头后,会收到《用户发票抬头填写完成通知》,然后通过《获取用户填写的抬头》,获取用户填写的信息;获取填写抬头后,根据订单匹配相关订单信息,然后调用《开具电子发票》为用户开具电子发票并插入微信卡包;

步骤六 如商户需对已开具的电子发票进行冲红(开具红票),可调用《冲红电子发票》进行冲红,并将其从用户的微信卡包中删除;

步骤七 调用《开具电子发票》接口或《冲红电子发票》接口成功后,可通过《查询电子发票》查询电子发票开具/冲红结果,并获取已开具/冲红/插卡的电子发票信息;

步骤八 如需下载电子发票,可先通过《查询电子发票》获取电子发票相关参数信息,然后通过《获取发票下载信息》,获取发票信息,调取《下载发票文件》,下载发票版式文件。

更多技术问题
技术咨询
反馈
咨询
目录