更新卡券接口(alipay.pass.instance.update)JAVA版本小样

简介: 使用场景介绍对于已经发布的卡券,商户可通过此接口进行更新,更新卡券接口包含三大主要功能:核销卡券、失效卡券、更新卡券样式内容 核销卡券功能 核销卡券主要描述开发者如何将发放出去的卡券进行核销,使卡券在用户的支付宝客户端展示为已使用状态。

官方接口文档:https://docs.open.alipay.com/199/105250/ 

使用场景介绍

对于已经发布的卡券,商户可通过此接口进行更新,更新卡券接口包含三大主要功能:核销卡券、失效卡券、更新卡券样式内容 

核销卡券功能 

核销卡券主要描述开发者如何将发放出去的卡券进行核销,使卡券在用户的支付宝客户端展示为已使用状态。对于支付宝卡券而言,核销操作只是将卡券状态变更为USED(已使用),用户客户端展示为已使用状态,未涉及资金流的核销。仅支持核销有效状态的卡券,若卡券处于卡券删除或者已转赠,不可进行核销操作 

失效卡券功能 

失效卡券主要描述开发者如何将发放出去的卡券进行作废,让卡券在用户的支付宝客户端消失的过程 

更新卡券功能 更新卡券样式内容,包括内容、logo、背景图、样式等(要支持更新,必须在模板中将对应字段设置成可变参数) 

其核心代码如下:

//更新卡券接口(alipay.pass.instance.update)
public static void alipaypassinstanceupdate(){
  
    AlipayClient   alipayClient=alipayclient();
    AlipayPassInstanceUpdateRequest request = new AlipayPassInstanceUpdateRequest();
         request.setBizContent(
                    "{\"status\":\"USED\","
                    //channl_id取发放卡券时候设置的值 
                    + "\"channel_id\":\"2014100900013222\","
                    //serial_number取发放成功的卡券的值
                    + "\"serial_number\":\"xm4333673662423559_lw_006\","
                    + "\"tpl_params\":"
                    + "{"
                    + "\"validStartDate\":\"2017-08-28 08:00:00\","
                    + "\"validEndDate\":\"2024-08-09 20:00:00\","
                    + "\"channelID\":\"2014100900013222\","
                    + "\"discountInfo\":\"凭此券即可打0.5折\","
                    + "\"code\":\"201607232562587i\","
                    + "\"useStateDesc\":\"不可使用\","
                    + "\"logoText\":\"2017年七夕8月28日优惠券\","
                    + "\"serialNumber\":\"xm4333673662423559_lw_006\"},"
        
                    +"\"verify_code\":\"201607232562587i\","
                    +"\"verify_type\":\"barcode\""
                    + "}");
         AlipayPassInstanceUpdateResponse response=null;
        try {
  
            response = alipayClient.execute(request);
            System.out.println(response.getBody());
         } catch (AlipayApiException e) {
  
            // TODO Auto-generated catch block
            e.printStackTrace();
         }
         if(response.isSuccess()){
  
         System.out.println("调用成功");
         } else {
  
         System.out.println("调用失败");
         }

然后同步返回信息如下:

{
  "alipay_pass_instance_update_response":{
  "code":"10000","msg":"Success","result":"{"operate":"UPDATE","serialNumber":"xm4333673662423559_lw_006"}","success":true},"sign":"AKSe17jNvsZAC2SPv3kwrApJfOXTgAzZ628jBuumLSVrF3g424BYCMx9aGqI+mzDphH7DnmTTR/39sVDeLZD8buaXl3h6VBkcdq3LAqY7K2JK60Nk7t0tTNz1tXAL1xflaq8P0t1K3k81EuVXGbyiMxRHg0Q2yZ3koOOXcnnNOY="}

注意点: 

1.channl_id取发放卡券时候设置的值

2.serial_number取发放成功的卡券的值

3.当status传值为USED后更新卡券,会在对应的支付宝的失效卡券里面看到,也就是上面说的核销卡券功能 

4.当status传值为CLOSED后更新卡券,支付宝对应的卡券包会消失对应的卡券,也就是上面说的失效卡券功能 

5.更新卡券功能参考对应的参数文档示例(在发放卡券接口示例,完成卡券发放的基础上,调用更新卡券接口(更新优惠描述信息和logoText),对卡券进行更新):https://docs.open.alipay.com/199/105249/ 

调用接口后对应的效果图如下: 


目录
相关文章
|
4月前
|
数据采集 JSON Java
Java爬虫获取1688店铺所有商品接口数据实战指南
本文介绍如何使用Java爬虫技术高效获取1688店铺商品信息,涵盖环境搭建、API调用、签名生成及数据抓取全流程,并附完整代码示例,助力市场分析与选品决策。
|
3月前
|
算法 安全 Java
除了类,Java中的接口和方法也可以使用泛型吗?
除了类,Java中的接口和方法也可以使用泛型吗?
154 11
|
2月前
|
Java Go 开发工具
【Java】(9)抽象类、接口、内部的运用与作用分析,枚举类型的使用
抽象类必须使用abstract修饰符来修饰,抽象方法也必须使用abstract修饰符来修饰,抽象方法不能有方法体。抽象类不能被实例化,无法使用new关键字来调用抽象类的构造器创建抽象类的实例。抽象类可以包含成员变量、方法(普通方法和抽象方法都可以)、构造器、初始化块、内部类(接 口、枚举)5种成分。抽象类的构造器不能用于创建实例,主要是用于被其子类调用。抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类abstract static不能同时修饰一个方法。
229 1
|
3月前
|
安全 架构师 Java
Java LTS版本进化秀:从8到21的欢乐升级之旅
困惑于Java版本选择?轻松幽默地穿越Java LTS版本时光隧道,掌握从Java 8到21的关键特性。通过一家初创公司的系统升级故事,直观了解每个版本如何解决代码冗余、性能瓶颈等开发痛点,助你在技术选型中做出明智决策。
|
4月前
|
存储 缓存 安全
Java集合框架(二):Set接口与哈希表原理
本文深入解析Java中Set集合的工作原理及其实现机制,涵盖HashSet、LinkedHashSet和TreeSet三大实现类。从Set接口的特性出发,对比List理解去重机制,并详解哈希表原理、hashCode与equals方法的作用。进一步剖析HashSet的底层HashMap实现、LinkedHashSet的双向链表维护顺序特性,以及TreeSet基于红黑树的排序功能。文章还包含性能对比、自定义对象去重、集合运算实战和线程安全方案,帮助读者全面掌握Set的应用与选择策略。
294 23
|
4月前
|
存储 安全 Java
Java集合框架(一):List接口及其实现类剖析
本文深入解析Java中List集合的实现原理,涵盖ArrayList的动态数组机制、LinkedList的链表结构、Vector与Stack的线程安全性及其不推荐使用的原因,对比了不同实现的性能与适用场景,帮助开发者根据实际需求选择合适的List实现。
|
Java
Java接口和抽象类
Java接口和抽象类
207 0
|
设计模式 搜索推荐 Java
java接口和抽象类的区别,以及使用选择
java接口和抽象类的区别,以及使用选择
201 0
|
设计模式 Java
【惊天揭秘】Java编程绝技大曝光:接口、抽象类、静态类与非静态类的神秘面纱终被揭开!
【8月更文挑战第22天】Java支持面向对象编程,通过接口、抽象类、静态类(如枚举与工具类)及普通类实现设计原则。接口定义行为规范,允许多重继承;抽象类含未实现的抽象方法,需子类完成;静态类常为工具类,提供静态方法;普通类则实例化对象。恰当运用这些结构能提升程序质量。
165 2
|
Java 开发者
Java中的接口和抽象类
Java中的接口和抽象类
207 3