没有装微信怎么开订阅号没有微信支付付

已认证服务号开通微信支付详细步骤 - 推酷
已认证服务号开通微信支付详细步骤
已认证服务号开通微信支付详细步骤
三 5, 2014
平台动态,资讯速递
1.1 申请流程指引
一、申请流程图
二、申请接入步骤详细说明
(一)成为已认证的服务号
1、目前微信支付功能仅开放给已经通过微信认证的服务号(企业、商店商家、非事业单位媒体类服务号),若已经通过微信认证,且是服务号,可直接进入第二步;
2、订阅号商户可先升级为服务号,此步骤约1个工作日;
3、未经认证的商户可先申请微信认证。
注意:请申请认证的商户主体与后续申请微信支付权限的商户主体保持一致。
(二)提交申请资料,等待审核
1、登录公众号,进入:服务-服务中心-商户功能;
2、提交商户基本资料
1)请据实填写微信支付售卖的商品/服务信息,并据此选择经营范围、填写售卖商品信息,此处填写的商品信息将作为日后运营监管的依据;
2)目前仅对经营范围之内的商户开放微信支付申请权限,经营范围之外的商户请暂缓。
3、提交业务审核资料
此处提交的商户资料,要求与认证的商户主体一致,即认证主体与运营主体一致。
4、提交财务审核资料
此处提交的公司财务资料,要求与业务审核中的主体一致,即运营主体与结算主体一致。
5、等待审核
1)微信7个工作日内给到审核结果;
2)审核结果将以通知的形式告知商户,可点击页面右上角小信封图标进入查看。
3)通过审核的商户,将收到通知邮件,邮件中包含重要开发参数,请牢记申请时填写的邮箱地址。
该重要邮箱是商户在填写“业务审核资料”时设置的:
(三)进入开发、签订合同
1、通过审核的商户可以开始进行开发工作,微信已提供清晰的开发接口文档,帮助你顺利完成开发工作。
注意:为了不耽误进入上述流程图中的第四步,建议商户将签订合同与开发工作同步进行。
2、 签订合同
1)通过审核后,商户便可在线下载合同,盖章后请根据指引寄回;
2)若申请公众号支付,则商户需要签订《微信公众平台商户功能服务协议》和《微信支付服务协议》;
3)若仅申请APP支付,则商户仅需签订《微信支付服务协议》(下载、盖章、寄回),无需签订《微信公众平台商户功能服务协议》;
4)若同时申请公众号支付和APP支付,则同2),签订《微信公众平台商户功能服务协议》和《微信支付服务协议》;
5)微信在收到商户寄回的合同后,会由专人负责审核,确认无误后,会尽快盖章寄还商户。
注意:商户盖章时请注意加盖骑缝章。
(四)商户功能服务、售卖商品
1、缴纳微信风险保证金
1)登录财付通账户缴纳微信平台微信风险保证金;
该账户是第二步微信审核通过之后,邮件通知给商户的partnerid,登录密码是partnerkey;
2)未缴纳微信风险保证金不影响商户功能服务,但将无法正常结算财付通账户中的资金款项。
2、商户功能服务是指白名单之外的微信号也能在商户公众号内使用微信支付功能,商户功能服务之后才能正常售卖商品或服务。
1.2 首期接入商户类目及资质审查要求
资质证照要求
《企业法人营业执照》
《企业法人营业执照》
《企业法人营业执照》
《企业法人营业执照》
化妆品/个人护理
《化妆品生产企业卫生许可证》或《化妆品生产许可证》(化妆品生产行政许可与化妆品卫生行政许可两项行政许可整合为一项行政许可)
进口化妆品《卫生许可批件》及有效检验检疫证明
《企业法人营业执照》
《企业法人营业执照》
《企业法人营业执照》
汽车及配件
整车预订/汽配
《企业法人营业执照》
《企业法人营业执照》
《企业法人营业执照》
《食品流通许可证》或《食品卫生许可证》
《食品流通许可证》或《食品卫生许可证》,以及《出入境检验检疫卫生证书》
《全国工业产品生产许可证》
母婴服饰和用品
《企业经营许可证》
实体店餐饮
《餐饮服务许可证》、店铺门面照和经营场所照
《食品流通许可证》或《食品卫生许可证》
《食品流通许可证》或《食品卫生许可证》,以及《出入境检验检疫卫生证书》
《食品流通许可证》、《酒类流通备案登记表》、《进口食品卫生证》和《进口食品标签审核证》
《食品流通许可证》和《酒类流通备案登记表》
《食品流通许可证》和《酒类流通备案登记表》
《食品流通许可证》和《酒类流通备案登记表》
《出版许可证》或出版社授权文件,以及《出版物经营许可证》
《音像制品出版许可证》或出版社授权文件,以及《音像制品经营许可证》
《报纸出版许可证》或报纸出版授权文件,以及《出版物经营许可证》
《杂志出版许可证》或杂志社授权文件,以及《出版物经营许可证》
1.3 资费标准
一、费率收取标准及办法
商户使用商户功能和微信支付服务时,需按照腾讯规定的标准交纳微信支付手续费。费率及收费方式在商户签署的《微信公众平台商户功能服务协议》及《微信支付服务协议》中作具体约定。
二、微信风险保证金收取标准及办法
为了更好地向微信用户提供服务、规范商户管理,你需要按照合同约定缴纳一定金额的风险保证金,商户通过财付通账户缴纳微信风险保证金,保证金将被冻结在商户财付通账户中,合作结束后解冻。
三、首期开放类目及对应微信微信风险保证金、费率、结算周期
化妆品/个人护理
汽车及配件
整车预订/汽配
母婴服饰和用品
实体店餐饮
1.4 常见商户接入问题
1、我公司售卖商品/服务在经营类目中找不到对应的,怎么办?
基于平台风险管理,首期仅开放部分类目,后续将逐渐增加更多可接入类目,欢迎更多商户接入微信支付功能,敬请期待。
2、我提交完申请资料之后一直没有通过审核,为什么?
在收到你提交的申请资料之后,微信审核团队会在7个工作日以内给你审核结果。若审核被驳回,你可登录公众平台查看驳回原因,请你尽快根据驳回原因调整填写内容,并再次提交,微信审核团队将继续为你审核。
3、个人可以申请微信支付吗?
暂不接受个人申请微信支付功能。
4、交纳的微信风险保证金、支付手续费,会否开具发票或收据吗?
会开具支付手续费发票,不会开具微信风险保证金发票,因微信风险保证金是存放于商户自己的财付通账户中的,处于冻结状态,腾讯没有收到此款项,所以不会提供保证金发票或收据。
5、没有公众号,如何申请APP支付权限?
答:微信将在近期开放微信App支付功能申请。届时,没有开通公众号的APP开发者可在
2. 支付功能介绍
2.1 方案简介
微信支付,是当下体验最为顺畅、安全的移动支付解决方案。
以微信支付为核心功能,我们提供用户身份识别、微信地址共享、支付结算、客户关系维护、售后维权、交易统计的整套移动购物解决方案。
注意:只有商户完成维权功能、告警接口、发货接口的接入,系统自动检测后才可开通全网功能;
2.2 应用场景
商户通过图文消息、自定义菜单、关键字回复等方式向订阅用户推送商品消息,用户可在微信公众号中完成选购、填写收货地址、支付的流程。
商户也可以把商品网页生成二维码,发布在线下和线上的媒体,如车站、楼宇广告以及web广告。 用户用微信扫一扫后可打开商品详情,在微信中直接购买。
2.2.1 网页内购买场景—JS API支付接口
2.2.1.1 公众号内专卖店
在公众号内放置商品信息入口,利用自定义菜单、关键字回复和CallBack接口下发商品信息,用户可在微信公众号中完成商品选择、填写收货地址、支付的流程。通过微信OpenID可实现用户免注册免登录的效果。
全流程如下图所示:
各环节解析:
1. 在公众号中,设置微信专卖店菜单
对应接口:
2. 微信自动登录
对应接口:&
用户无需手动登录,自动获取用户微信OPENID身份
3. 微信地址
对应接口:
微信地址可以节省用户的填写地址的时间,有效提高购买转化率
4. 微信支付
对应接口:
最快捷安全的移动支付体验
2.2.1.2 微信扫购模式
相比于公众号内专卖店,微信扫购模式赋予商户更多的自主营销渠道,流量不仅仅限于公众号的关注用户,可拓展到线上线下最为广大的用户群体。
商户可把商品信息和二维码铺到线上、线下,每一个平面都可以成为你的自动销售渠道。
2.2.2 扫码支付场景—Native(原生)支付接口
与网页内支付场景不同,部分商户不需要经过网页选购,可以直接扫码支付购买。
步骤(1):左图,商户根据微信支付的规则,为不同商品生成不同的二维码,张贴在各种场景,便于用户扫描购买。
步骤(2):右图,用户使用微信扫描二维码后,获取商品信息,同时到商户后台下单。
步骤(3):左图,用户开始支付,输入支付密码。
步骤(4):右图,支付成功,商户后台得到通知,进行发货处理。
2.2.3 共享收货地址
收货地址共享,是指可在微信中,调用微信的地址组件,此地址首次调用需用户授权,可在不同网页中共享使用,地址数据会传递到商户后台。
步骤(1):左图,新用户进入网页,没有获取到收货地址。
步骤(2):右图,点击新增收货地址,进入微信地址控件,填写地址,商户可获得此数据。
步骤(3):左图,对于已有地址的用户,进入网页时可以快速选择,并填上,完成购买流程,而且地址数据作为用户属性,长久保存。
步骤(4):右图,点击收货地址,可以新增、删除或者编辑地址,所有流程在客户端界面完成,数据会同步到云端。
2.2.4 接入用户维权系统
用户在公众号内支付购买行为出现异常时,通常会投诉到腾讯客服,因此微信侧需要即时了解公众号与用户交易的详情。同时,为了最快效率的解决用户的问题,微信作为连接用户和商户的桥梁,会通过此维权系统即时将问题同步给商户,并将解决结果反馈至用户。
所有获得商户功能(微信支付)的公众号必须接入用户维权系统。
基本交互如下:
2.2.5 APP支付
微信APP支付,可以让手机APP直接调用微信支付,整个过程非常顺畅,可有效提高购买转化率,养成用户重复购买习惯。
申请时,请在公众平台勾选APP支付,并填写第三方应用的APPID,如下图:
微信APP支付后期也会在
上开放申请入口,敬请期待。
2.3 商户模块
申请支付权限后,可以
使用商户模块功能,查看交易相关的统计数据,也可使用财付通的商户号,
,查看订单流水,进行退款、下载对账单等操作。
2.3.1 商品消息推广
商品消息,是特殊类型的图文消息,用户打开后跳转到商户网站的商品详情页,不经过公众平台中间页。商户可以通过群发、实时回复、自动回复等方式,把商品消息下发给用户。
2.3.2 订单流水
『订单流水』可以汇总了一定周期内商户交易的流水情况,数据包括订单信息,金额,买家,渠道来源等等。商户也可以从订单中直接向买家发起对话。
2.3.3 登录财付通企业版
开通商户功能后,会分配商户一个财付通商户号(PartnerID),可以
管理资金和进行退款、下载对账单等操作。
2.3.4 支付测试
商户在获得支付权限后,此时处于支付测试状态,只有白名单内的用户可以在微信客户端上使用支付功能,此时需要在“支付测试”模块中添加白名单。在各项准备工作完成后,可发起发布申请,申请通过后商户的支付功能才能被全量用户使用。
2.4 功能接口
以下是商户可能用到的功能和接口,可根据商户的业务定制开通:
用户身份识别
即Oauth2.0用户授权接口,商户可通过该接口得到每一个用户加密且唯一的openid,获取用户的相关信息,进而识别用户身份,记录用户消费行为,提供更好的服务。
选择以下至少一种的支付方式:
1. JS API支付:通过浏览器点击或者扫描二维码打开的商品详情网页内,选购商品后,调用客户端的微信支付功能;
2. Native(原生)支付:可直接通过扫描二维码,进入原生购买页面,适用没有选购流程的支付场景。
完成三项支付资料审核
支付相关接口
提供支付订单查询、退款、对账单下载等接口,辅助商户完成支付流程;同时,商户必须接入发货通知接口,每笔交易均同步发货状态到微信。
完成三项支付资料审核
共享收货地址
用户在下单网页内填写过地址,将保存到微信支付平台,商户可共享用户在微信原生控件中填写过的地址,实现自动填写,可增加和编辑。
基本资料填写勾选且完成三项支付资料审核
购买后发货
用户下单后,商户必须在规定时间内发货,并使用发货通知接口,将发货信息传递给微信后台。如果发货超时,将依据平台运营规则进行警告或处罚。
完成三项支付资料审核
处理用户投诉,有效地解决用户购买后发货掉单的投诉问题,微信侧会监控商户的经营情况。商户必须接入维权系统,才能上线支付等相关服务。
完成三项支付资料审核
微信后台检测到商户经营行为异常或服务不稳定,将通过告警接口将相关信息告知到商户。未来将可能包括发货超时告警、服务器异常告警、支付存在风险告警等。
完成三项支付资料审核
2.5 帐号体系
商户向微信公众平台提交企业信息以及银行账户资料,审核通过并签约后,可以获得以下帐户(包含财付通的相关支付资金账户),用于公众号支付。
公众号身份的唯一标识。审核通过后,在微信发送的邮件中查看。
公众号支付请求中用于加密的密钥Key,可验证商户唯一身份,PaySignKey对应于支付场景中的appKey值。审核通过后,在微信发送的邮件中查看。
paySignKey
除了支付请求需要用到paySignKey,公众平台接口API的权限获取所需密钥Key,在使用所有公众平台API时,都需要先用它去换取access_token,然后再进行调用(详情参考文档API接口部分)。审核通过后,在微信发送的邮件中查看。
财付通商户身份的标识。审核通过后,在财付通发送的邮件中查看。
partnerKey
财付通商户权限密钥Key。审核通过后,在财付通发送的邮件中查看。
注:具体的帐号说明和使用场景,请参考《微信公众号支付接口文档》
2.6 商户系统对接
开通商户功能后,可按以下步骤完成商户和微信侧的对接,请商户仔细阅读以下部分:
1、生成商品消息:通过接口或者登录公众平台网站,根据商户网站的商品网页生成对应的消息,也可根据网页链接生成二维码;
2、商品推广:通过群发,自定菜单、关键字回复等方式,下发商品消息,也可把二维码张贴在车站、海报等线下的场景;
3、用户浏览:用户接收消息或者扫描二维码,即可打开商品网页,浏览商品详情;
4、用户下单:选购商品,可确认款式、数量和收货地址等信息,确认下单;
5、用户支付:商户调用微信支付功能,发起交易;用户确认交易信息,验证支付密码即可,支付成功,微信支付商户后台;
6、支付成功:用户看到支付成功的结果,通知商户后台,可更新订单状态,进行发货等相应操作;
7、发货通知:商户收到支付成功通知,发货后,需要通知微信后台,微信记录状态;
8、客服维权:客服系统即时将问题同步给商户,商户可以联系用户解决;
9、资金结算:按照规定的结算周期,系统结算资金到商户的银行账户,同时根据合同的费率收取支付服务费;
10、退款操作:商户使用分配的财付通商户号,登录财付通企业版(/)手动操作退款,也可以使用后台接口进行退款;
11、对账单下载:商户除了
手动下载订单流水,也可以使用后台接口下载订单对账。
注:退款和对账单下载的接口,请参考《财付通支付网关商户开发指南》。
2.7 行业案例
2.7.1 B2C行业
依托微信庞大的用户群、极致的用户体验,主流B2C纷纷对接微信支付,积极构建移动电商生态环境。
案例:一号店
案例:唯品会
案例:酒仙网
2.7.3 自动售卖机
结合传统的售卖机,用户选购商品后,扫码机器上的二维码,使用Native(原生)支付,快速购买。微信可提供支付帐号和硬件芯片的解决方案。
案例:友宝
2.8 常见支付功能问题
1、微信支付和财付通的关系?
答:微信支付是以绑定银行卡为基础的支付服务,由财付通提供支付牌照和银行通道的技术支持。用户使用微信支付绑定银行卡,和微信号对应QQ使用财付通的绑定无关。
同时,用户使用微信号对应QQ登录财付通,无法查看微信支付绑定的银行卡和对应的交易记录。
对于用户,主要认知的是微信支付品牌。对于商户,除了拥有微信公众号的商户身份,还会有微信公众平台分配一个财付通的商户号,用于结账收款。
2、微信支付如何绑定银行卡?如何支付?
答:用户首次支付时,输入银行卡号和持卡人信息,验证银行预留手机号,即可绑定。用户还会设置支付密码(非银行取款密码),后续购买不用再绑卡,验证支付密码即可直接支付。微信支付的绑定和支付流程,都是标准的快捷支付流程。
3、微信支付可以绑定的银行卡数量?
答:支持绑定13家银行,22个卡种的银行卡,包括储蓄卡和信用卡都可以。目前正在不断接入银行,覆盖范围会越来越大。
4、微信除了提供商户的支付接口,还有其他接口能力吗?
答:除了支付接口,微信还会提供订单查询、退款、退款查询、对账单下载等支付相关的接口,和财付通提供给商户的接口能力一样。不少商户担心退款和对账的接口,这些都是可以提供的。具体参考《财付通支付网关商户开发指南》。
5、微信支付的支付类型是?
答:微信支付使用的是B2C即时到账接口,暂不支持C2C的担保交易类型。
6、收货地址共享的地址格式是?
答:微信收货地址是基于三级的国标数据,地区对应是国标三级地区码,如“广东省-广州市-天河区”,对应的是510630。
7、微信支付的安全性如何保证?
答:有以下手段保证支付安全:
- 绑定银行卡需要验证实名信息和银行预留手机号;绑定银行卡后设置支付密码,交易需要验证此支付密码,大额支付还需要验证手机短信;
- 微信认证商户网页是安全的支付环境,会有微信安全支付的认证标题,提示用户;
- 支付后台有腾讯的大数据支撑,海量的数据和云端的计算能够及时判定用户的支付行为存在的风险性,如异地支付、非常用设备支付、QQ号被盗等情况,会分析和拦截异常支付行为;
- 7*24小时客户服务,加上微信客服,将及时为用户排忧解难;同时为微信支付开辟的专属客服通道,将以最快的速度响应用户的提出问题并做出处理判断;
8、接入微信支付,商户担心网页会被假冒和钓鱼?
答:微信会认证安全商户的网页,提示“微信安全支付”;不安全或者高风险的网页,微信会弹出中间页提示不安全,并拦截,未受安全认证的网页内填写相关帐号或者支付,也会提示有系统“网页内提示不要输入QQ密码或请勿支付”。
9、商户接入微信支付的成本高吗?
答:对于已有H5商城的商户接入JS API支付,前端页面上加微信支付按钮即可,支付成功后,后台接收通知发货;对于接入Native(原生)支付,商户后台增加一个下单接口,接收微信的下单请求即可。开发成本较低,不需要改变已有的流程。
10、商户使用微信支付需要有一个财付通商户号,能否使用已有的商户号?
答:由于支付权限和支付费率的差异,不能使用已有的财付通商户号,需要在微信公众平台重新申请开通。
& 2014,LBS观察员. 版权所有.LBS观景台登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
也许下边这些文章你也感兴趣
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致您的举报已经提交成功,我们将尽快处理,谢谢!
1 登录微信公众平台,点击右上角注册。
设置登录帐号基本信息。
怎么申请微信支付接口
査收自己的注册邮箱,点击链接,激活帐号。
怎么申请微信支付接口
正版微信“钱包”问题客服人工电话:010-
民警提示,在使用新兴支付方式管理钱款时一定要细心,真正的“客服”人员不会让客户往公司账户打款。如果...
这个建议你还是咨询一下他们客服比较好
微信官方客服电话(010-)受理退货,退款,投诉,解冻,提现,充值等等综合业务办理中心。
微信钱包投诉维权...
本文包含微信认证及营销两个要点,均是目前最为有效的方法。微信公众号主要面向名人、政府、媒体、企业等机构推出的合作推广业务。微信认证可以直接找美基营销的工作人员帮...
大家还关注当前位置 & &
& 我为什么不怎么用微信支付 尽量用支付宝了
我为什么不怎么用微信支付 尽量用支付宝了
17:26:42&&出处:&&作者:王帅
编辑:朝晖 &&)
让小伙伴们也看看:
微信公众号搜索"驱动之家"加关注,每日最新的手机、电脑、汽车、智能硬件信息可以让你一手全掌握。推荐关注!【微信扫描下图可直接关注】
阅读更多:
好文共享:
文章观点支持
当前平均分:0(0 次打分)
[09-28][09-28][09-28][09-28][09-28][09-28][09-28][09-27][09-27][09-27]
登录驱动之家
没有帐号?
用合作网站帐户直接登录iOS不用微信SDK唤起微信支付 - 简书
<div class="fixed-btn note-fixed-download" data-toggle="popover" data-placement="left" data-html="true" data-trigger="hover" data-content=''>
写了17955字,被452人关注,获得了994个喜欢
iOS不用微信SDK唤起微信支付
要想知道微信SDK是如何调起微信客户端,那么咱们先看看微信SDK到底做了什么
接入前期准备工作包括商户签约和密钥配置,已完成商户可略过。
下载微信SDK
SDK集成流程
将解压的微信OpenSDK文件夹拷贝到项目文件夹下,并导入开发环境中。
libWeChatSDK.a WechatAuthSDK.h WXApi.h WXApiObject.h
导入系统依赖库
在link Binary With Libraries 里面添加
libc++.tbd
CoreTelephony.framework
libsqlite3.0.tbd
SystemConfiguration.framework还有之前导入的
libWeChatSDK.a
到这一步,SDK集成已经完毕
添加URL Schemes点击项目名称,点击“Info”选项卡,在“URL Types”选项中,点击“+”, 在“URL Schemes”中输入微信的注册码
在支付的类里引用头文件:
#import "WXApi.h"
配置wxpay支付
#pragma mark
==============配置wxpay支付==============
- (void)payAction{
//发起网络请求,去你们服务器请求1.订单id,2. 钱(单位:分),3. 内容描述
//订单最好服务器生成,本文为了各位看的明白,所以在本地生成!
[NetWorkTool dingiD:[self generateTradeNO] andDetail:@"描述" success:^(NSDictionary *responseObject) {
//服务器返回数据
//调起微信支付
PayReq* wxreq
= [[PayReq alloc] init];
/** appid */
wxreq.openID
= responseObject[@"result"][@"appid"];
/** 商家向财付通申请的商家id */
wxreq.partnerId
= responseObject[@"result"][@"partnerid"];
/** 预支付订单 */
wxreq.prepayId
= responseObject[@"result"][@"prepayid"];
/** 随机串,防重发 */
wxreq.nonceStr
= responseObject[@"result"][@"noncestr"];
/** 时间戳,防重发 */
wxreq.timeStamp
= [responseObject[@"result"][@"timestamp"] intValue];
/** 商家根据财付通文档填写的数据和签名 */
wxreq.package
= responseObject[@"result"][@"package"];
/** 商家根据微信开放平台文档对数据做的签名 */
wxreq.sign
= responseObject[@"result"][@"sign"];
[WXApi sendReq:wxreq];
} failure:^(NSError *error) {
NSLog(@"%@",error);
#pragma mark
==============产生随机订单号==============
- (NSString *)generateTradeNO
static int kNumber = 15;
NSString *sourceStr = @"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
NSMutableString *resultStr = [[NSMutableString alloc] init];
srand((unsigned)time(0));
for (int i = 0; i & kN i++)
unsigned index = rand() % [sourceStr length];
NSString *oneStr = [sourceStr substringWithRange:NSMakeRange(index, 1)];
[resultStr appendString:oneStr];
return resultS
配置返回处理代码
在 AppDelegate.h 文件中,增加微信协议:
#import "WXApi.h"
@interface AppDelegate : UIResponder &UIApplicationDelegate,WXApiDelegate&
在 AppDelegate.m 文件中,增加引用代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 初始化微信sdk
[WXApi registerApp:@"wx*********"];
return YES;
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
/*! @brief 处理微信通过URL启动App时传递的数据
* 需要在 application:openURL:sourceApplication:annotation:或者application:handleOpenURL中调用。
* @param url 微信启动第三方应用时传递过来的URL
* @param delegate
WXApiDelegate对象,用来接收微信触发的消息。
* @return 成功返回YES,失败返回NO。
return [WXApi handleOpenURL:url delegate:self];
- (void)onResp:(BaseResp *)resp
//支付返回结果,实际支付结果需要去微信服务器端查询
NSString *strMsg = [NSString stringWithFormat:@"支付结果"];
switch (resp.errCode) {
case WXSuccess:
strMsg = @"支付结果:成功!";
NSLog(@"支付成功-PaySuccess,retcode = %d", resp.errCode);
strMsg = [NSString stringWithFormat:@"支付结果:失败!retcode = %d, retstr = %@", resp.errCode,resp.errStr];
NSLog(@"错误,retcode = %d, retstr = %@", resp.errCode,resp.errStr);
不用微信SDK 唤起微信支付
众所周知,iOS是一个封闭的系统,应用之间是不可以互相读取文件的,苹果就使用了URL Scheme来实现了这个功能。通过各个APP设计的符合苹果的统一规范的URL Scheme,Url Scheme 是可以用来传递信息的
URL Scheme是为方便app之间互相调用而设计的。你可以通过一个类似URL的链接,通过系统的OpenURl来打开该app,并可以传递一些参数。每个URL必须能唯一标识一个APP,如果你设置的URL与别的APP的URL冲突,此时,你的APP不一定会被调用起来,原因是当APP在安装的时候就已经在系统里面注册了此APP的URL Scheme,如果你的一致但是是后安装的,那么系统不会调用你的APP,因为你的APP设置的URL scheme被覆盖了。
分析得出,微信,支付宝等sdk 的分享,支付功能,都是通过URL scheme 进行传递内容的
那么我们可以查看微信SDK唤起微信客服端支付的时候,传递的URL Scheme 是什么内容,如果可以找到其编码规律,那么即可以不用sdk进行支付
那么,发起支付的过程中,系统会唤起微信客户端,我们思路是查看微信sdk发送给微信客户端的URL Scheme内容,就要伪造一个微信,也就是向系统声明一个和微信URL Scheme相同的地址
查看微信URL Scheme地址
经测试: 微信的URL Scheme是:weixin://
那么,我们新建个工程,起名为:GetPayURLScheme
接着注册自定义 URL Scheme
点击 项目里info.plist (非test里面的info.plist)并选择 右键 Open As – Source Code:加入:
&key&CFBundleURLTypes&/key&
&key&CFBundleURLSchemes&/key&
&string&weixin&/string&
&key&CFBundleURLName&/key&
&string&1111&/string&
这时候,点击 项目里info.plist (非test里面的info.plist)并选择 右键 Open As – list:
这样就生成了如下图的URLscheme:
在AppDelegate.m里面添加
//应用app接收urlScheme传值时会响应此方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
//显示截取的urlscheme
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"接收到的urlScheme" message:url.absoluteString delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil];
[alert show];
复制到剪贴板
UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
pasteboard.string = url.absoluteS
return YES;
运行到手机里面,这时候,你无论那个app要微信付款的时候,唤起的是刚才新建的名叫GetPayURLScheme工程 ,如下图:
可以看到:那个urlScheme:
weixin://app/wxdf261c3b90ffbc25/pay/?nonceStr=Ho7nAFOALQpVqSM7&package=Sign%3DWXPay&partnerId=&prepayId=wx&timeStamp=&sign=5A3EFD36CECED&signType=SHA1
可以看出:它的拼接方法是:
NSString *str = [NSString stringWithFormat:@"weixin://app/%@/pay/?nonceStr=%@&package=Sign%%3DWXPay&partnerId=%@&prepayId=%@&timeStamp=%@&sign=%@&signType=SHA1",appid,noncestr,partnerid,prepayid,[NSString stringWithFormat:@"%d",[timestamp intValue]],sign];
不用SDK,只需要配置这么一段代码,微信支付即可完成!!!!!!!!
- (void)payAction{
//发起网络请求,去你们服务器请求1.订单id,2. 钱(单位:分),3. 内容描述
//订单最好服务器生成,本文为了各位看的明白,所以在本地生成!
[NetWorkTool dingiD:[self generateTradeNO] andDetail:@"描述" success:^(NSDictionary *responseObject) {
/** appid */
NSString *appid
= responseObject[@"result"][@"appid"];
/** 商家向财付通申请的商家id */
NSString *partnerId
= responseObject[@"result"][@"partnerid"];
/** 预支付订单 */
NSString *prepayId
= responseObject[@"result"][@"prepayid"];
/** 随机串,防重发 */
NSString *nonceStr
= responseObject[@"result"][@"noncestr"];
/** 时间戳,防重发 */
NSString *timeStamp
= responseObject[@"result"][@"timestamp"];
/** 商家根据财付通文档填写的数据和签名 */
NSString *package
= responseObject[@"result"][@"package"];
/** 商家根据微信开放平台文档对数据做的签名 */
NSString *sign
= responseObject[@"result"][@"sign"];
//生成URLscheme
NSString *str = [NSString stringWithFormat:@"weixin://app/%@/pay/?nonceStr=%@&package=Sign%%3DWXPay&partnerId=%@&prepayId=%@&timeStamp=%@&sign=%@&signType=SHA1",appid,nonceStr,partnerId,prepayId,[NSString stringWithFormat:@"%d",[timeStamp intValue] ],sign];
//通过openURL的方法唤起支付界面
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
} failure:^(NSError *error) {
NSLog(@"%@",error);
订单最好服务器生成
之后必须去服务器验证支付状态!!!
大功告成!!!!!!
Demo 下载(转载请注明出处!)
GetPayURLScheme
下载地址:
下载地址:
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
如果你是程序员,或者有一颗喜欢写程序的心,喜欢分享技术干货、项目经验、程序员日常囧事等等,欢迎投稿《程序员》专题。
专题主编:小...
· 250198人关注
玩转简书的第一步,从这个专题开始。
想上首页热门榜么?好内容想被更多人看到么?来投稿吧!如果被拒也不要灰心哦~入选文章会进一个队...
· 144586人关注
《知了》专题大到包罗IT业及互联网的大情小态,小到收罗便利的工具和应用,准则是“用大脑思考、用良心酿字、用简单逻辑表述、用诚意筛选”,...
· 54171人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:

我要回帖

更多关于 微信支付没有回调 的文章

 

随机推荐