接口说明
本接口功能为在微信公众号拉起发票卡券列表,用户勾选需要提交报销的发票后,开发者获得所选发票的标识信息。
本接口的调用须遵循JS-SDK的调用方法,请在开发前阅读[微信JS-SDK接口文档](http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115&token=&lang=zh_CN" target="_blank)以熟悉开发术语和基本接口的调用。
请求方式
调用chooseInvoice接口
请求参数
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
timestamp | string(32) | 是 | 时间戳,采用 unix 十位时间戳 |
nonceStr | string(32) | 是 | 随机字符串 |
返回结果
用户点击确认或取消后,将按下表所列字段格式及含义返回结果。
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
err_msg | string | 是 | ok:选取发票成功,fail:选取发票失败,cancel:选取发票取消 |
choose_invoice_info | object | 否 | 用户选中的发票列表 |
choose_invoice_info的对象包括以下字段
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
card_id | string | 是 | 所选发票卡券的 card_id |
encrypt_code | string | 是 | 所选发票卡券的加密 code ,报销方可以通过 card_id 和 encrypt_code 获得报销发票的信息 |
app_id | string | 是 | 开票方的 appid |
示例代码
wx.config({ beta: true, debug: false, appId: "wx00000000000000", timestamp: 1489030247, nonceStr: "(9J4YRV[#@", signature: "f027317f8910000000000000000000", jsApiList: ['chooseInvoice'] }); wx.ready(function () { wx.invoke('chooseInvoice', { 'timestamp': 1489030247, 'nonceStr': "p(6N&7WOAF", }, function(res) { alert(JSON.stringify(res)); } }); });
接口说明
支持在微信小程序中直接拉起电子发票列表
详细接口文档请参见小程序API发票部分
接口说明
企业微信2.1新增了选择电子发票的js-API接口,使用企业微信的企业将企业微信更新至2.1以上版本后,可快速实现在企业微信中选中电子发票的功能。
详细接口文档请参见企业微信API电子发票部分。
接口说明
对于自建移动办公应用的企业及为企业提供独立报销App的报销服务商,微信提供了外部App拉起发票列表的接口。与微信内拉起发票列表接口相似,外部App开发者在用户勾选并点击确认后,可以获得发票的标识数据。
该接口须遵循JS-SDK的调用方法,请在开发前务必检查自己是否满足以下条件:
1 获得一个已认证的 微信开放平台 账号;
2 在微信开放平台上创建一个应用并提交应用通过审核。未注册应用的开发者可在开发者应用登记页面进行登记;
3 通读 微信开放平台资源中心 中关于SDK使用的基本方法,并正确导入到自身的应用中。
请求方式
iOS应用
参考压缩包内的OpenSDK1.7.7文件,使用时调用WXChooseInvoice类。其中需要签名的部分,参考JS-SDK的调用方式。 示例代码
—(void)getlnvoiceWithTicket: (NSString*)ticket whenComptetion: (void(^)(NSString* result, NSString*errorDesc) )comptetion{ BOOL isWXApplnstalled = [WXApi isWXApplnstalled]; if (!isWXApplnstalled) { // 用户没装微信,直接返回。 completion(nil.,@”Wechat Not installed”); return; } _completion = completion; WXChooselnvoiceReq *cardReq = [[WXChooselnvoiceReq alloc]initl; cardReq. applD = WechatlnvoiceAppld; cardReq.timeStamp = [[NSDate date]timelntervalSince1970]; NSString* timeStamp = [NSString stringWithFormat:@”%d”,cardReq.timeStamp]; cardReq. nonceStr = @“sfim_invoice”; NSString *cardSign = [self genCardSignWithNonceStr: cardReq.nonceStr andTimeStr: timeStamp andApiTicket:ticket]; cardReq.cardSign = cardSign; [WXApi sendReq:cardReq];//发送
Android应用
参考压缩包内,进入jar文件,使用时调用ChooseCardFromWXCardPackage类,并传入CardType为“INVOICE”。其中需要签名的部分,参考JS-SDK的调用方式。
返回结果
用户点击确认或取消后,将按下表所列字段格式及含义返回结果。
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
err_msg | string | 是 | ok:选取发票成功,fail:选取发票失败,cancel:选取发票取消 |
choose_invoice_info | object | 否 | 用户选中的发票列表 |
choose_invoice_info的对象包括以下字段
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
card_id | string | 是 | 所选发票卡券的 card_id |
encrypt_code | string | 是 | 所选发票卡券的加密 code ,报销方可以通过 card_id 和 encrypt_code 获得报销发票的信息 |
app_id | string | 是 | 开票方的 appid |
接口说明
通过该接口查询电子发票的结构化信息,并获取发票PDF文件。
请求方式
请求URL:https://api.weixin.qq.com/card/invoice/reimburse/getinvoiceinfo?access_token={access_token}
请求方法:POST
请求参数
请求参数使用JSON格式,字段如下:
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
card_id | string | 是 | 发票卡券的 card_id |
encrypt_code | string | 是 | 发票卡券的加密 code ,和 card_id 共同构成一张发票卡券的唯一标识 |
返回结果
返回结果为JSON格式,字段如下:
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
errcode | Int | 是 | 错误码 |
errmsg | String | 是 | 错误信息 |
当错误码为0时,有以下信息:
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
card_id | String | 是 | 发票 id |
begin_time | Int | 是 | 发票的有效期起始时间 |
end_time | Int | 是 | 发票的有效期截止时间 |
openid | String | 是 | 用户标识 |
type | String | 是 | 发票的类型,如广东增值税普通发票 |
payee | String | 是 | 发票的收款方 |
detail | String | 是 | 发票详情 |
user_info | Object | 是 | 用户可在发票票面看到的主要信息 |
user_info包含以下信息:
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
fee | Int | 是 | 发票加税合计金额,以分为单位 |
title | String | 是 | 发票的抬头 |
billing_time | Int | 是 | 开票时间,为十位时间戳(utc+8) |
billing_no | String | 是 | 发票代码 |
billing_code | String | 是 | 发票号码 |
info | List | 否 | 商品信息结构,见下方说明 |
fee_without_tax | Int | 是 | 不含税金额,以分为单位 |
tax | Int | 是 | 税额,以分为单位 |
公众平台电子发票功能与申请一、电子发票的申请条件 1、需通过公众平台微信认证(资质审核通过); 2、帐号类型:服务号、订阅号; 二、申请步骤 进入公众平台->添加功能插件->电子发票功能->申请开通。 温馨提示:符合申请条件,点击“申请开通”勾选“同意协议”后,功能立即开通成功。 三、电子发票购买方式 一个公司对应一个税号,可根据公司的具体情况选择对应的开票平台以及对应的套餐。进入公众平台->电子发票功能->套餐购买及管理。 购买流程: 第一步:选择套餐 选择开票平台:分别有百望、用友、瑞宏3个平台可供选择(套餐金额也不等); 填写门店数量; 资证上传;(根据套餐不同,页面有模板下载填写完后再上传) 第二步:资料填写 填写办税联系人信息 注:申请时需要填写办税联系人是由于电子发票发行需CA签章,签章需填写办税联系人信息。 填写企业资本、证照信息 温馨提示:资质提交完后,在3-5个工作日留意审核结果,审核通过即可进行支付。 最新推荐 |