接口说明
接口名称:alipay.trade.promotion.coupon.create
支持第三方代理调用:本接口支持第三方开发者代用户发起调用。
适用场景
订阅营销优惠创建。
公共请求参数
参数 类型 是否必选 最大长度 描述 示例值 app_idString 必选 32 支付宝分配给开发者的应用 ID 2014072300007148methodString 必选 128 接口名称 alipay.trade.promotion.coupon.createformatString 可选 40 仅支持JSON JSONcharsetString 必选 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8sign_typeString 必选 10 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 RSA2signString 必选 344 商户请求参数的签名串,详见签名 详见示例timestampString 必选 19 发送请求的时间,格式”yyyy-MM-dd HH:mm
” 2014-07-24 03:07:50versionString 必选 3 调用的接口版本,固定为:1.0 1.0app_auth_tokenString 可选 40 详见应用授权概述 - biz_contentString 必选 - 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 -
业务请求参数
参数 类型 是否必选 最大长度 描述 注意事项/枚举值 示例值 request_infoPromotionCoupon 必选 - 优惠信息 - - request_info.coupon_idString 可选 40 优惠编码 - 5JXR5XXWrequest_info.nameString 必选 12 优惠名称 - 新用户10元立减request_info.amount_offNumber 可选 32 折扣10元金额 单位分 - 1000request_info.percent_offNumber 可选 32 折扣比例,百分比,10%含义为9折 - 10request_info.durationString 必选 20 周期性重复类型 支持 forever(永久)、once(一次性)、repeating(重复)模式 - repeatingrequest_info.duration_in_iterationsString 可选 10 在接下来的3个计费周期可重复使用该优惠 - 3request_info.redeem_byString 必选 32 优惠到期时间 - 2026-02-20 14:10:00
常见请求示例
Java
package com.java.sdk.demo;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.AlipayConfig;
import com.alipay.api.domain.PromotionCoupon;
import com.alipay.api.response.AlipayTradePromotionCouponCreateResponse;
import com.alipay.api.request.AlipayTradePromotionCouponCreateRequest;
import com.alipay.api.domain.AlipayTradePromotionCouponCreateModel;
import com.alipay.api.FileItem;
import java.util.Base64;
import java.util.ArrayList;
import java.util.List;
public class AlipayTradePromotionCouponCreate {
public static void main ( String [] args ) throws AlipayApiException {
// 初始化SDK
AlipayClient alipayClient = new DefaultAlipayClient ( getAlipayConfig ());
// 构造请求参数以调用接口
AlipayTradePromotionCouponCreateRequest request = new AlipayTradePromotionCouponCreateRequest ();
AlipayTradePromotionCouponCreateModel model = new AlipayTradePromotionCouponCreateModel ();
// 设置优惠信息
PromotionCoupon requestInfo = new PromotionCoupon ();
requestInfo. setDuration ( "repeating" );
requestInfo. setRedeemBy ( "2026-02-20 14:10:00" );
requestInfo. setCouponId ( "5JXR5XXW" );
requestInfo. setName ( "新用户10元立减" );
requestInfo. setPercentOff ( 10L );
requestInfo. setAmountOff ( 1000L );
requestInfo. setDurationInIterations ( "3" );
model. setRequestInfo (requestInfo);
request. setBizModel (model);
// 第三方代调用模式下请设置app_auth_token
// request.putOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->");
AlipayTradePromotionCouponCreateResponse response = alipayClient. execute (request);
System.out. println (response. getBody ());
if (response. isSuccess ()) {
System.out. println ( "调用成功" );
} else {
System.out. println ( "调用失败" );
// sdk版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接
// String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
// System.out.println(diagnosisUrl);
}
}
private static AlipayConfig getAlipayConfig () {
String privateKey = "<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->" ;
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->" ;
AlipayConfig alipayConfig = new AlipayConfig ();
alipayConfig. setServerUrl ( "https://openapi.alipay.com/gateway.do" );
alipayConfig. setAppId ( "<-- 请填写您的AppId,例如:2019091767145019 -->" );
alipayConfig. setPrivateKey (privateKey);
alipayConfig. setFormat ( "json" );
alipayConfig. setAlipayPublicKey (alipayPublicKey);
alipayConfig. setCharset ( "UTF-8" );
alipayConfig. setSignType ( "RSA2" );
return alipayConfig;
}
}
PHP
<? php
require_once '../aop/AopClient.php' ;
require_once '../aop/AopCertClient.php' ;
require_once '../aop/AopCertification.php' ;
require_once '../aop/AlipayConfig.php' ;
require_once '../aop/request/AlipayTradePromotionCouponCreateRequest.php' ;
// 初始化SDK
$alipayClient = new AopClient ( getAlipayConfig ());
// 构造请求参数以调用接口
$request = new AlipayTradePromotionCouponCreateRequest ();
$model = array ();
// 设置优惠信息
$requestInfo = array ();
$requestInfo[ 'duration' ] = "repeating" ;
$requestInfo[ 'redeem_by' ] = "2026-02-20 14:10:00" ;
$requestInfo[ 'coupon_id' ] = "5JXR5XXW" ;
$requestInfo[ 'name' ] = "新用户10元立减" ;
$requestInfo[ 'percent_off' ] = 10 ;
$requestInfo[ 'amount_off' ] = 1000 ;
$requestInfo[ 'duration_in_iterations' ] = "3" ;
$model[ 'request_info' ] = $requestInfo;
$request -> setBizContent ( json_encode ($model, JSON_UNESCAPED_UNICODE ));
// 如果是第三方代调用模式,请设置app_auth_token(应用授权令牌)
$responseResult = $alipayClient -> execute ($request, null , "<-- 请填写应用授权令牌 -->" , null );
$responseApiName = str_replace ( "." , "_" ,$request -> getApiMethodName ()) . "_response" ;
$response = $responseResult -> $responseApiName;
if ( ! empty ($response -> code) && $response -> code == 10000 ){
echo ( "调用成功" );
}
else {
echo ( "调用失败" );
}
function getAlipayConfig ()
{
$privateKey = '<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->' ;
$alipayPublicKey = '<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->' ;
$alipayConfig = new AlipayConfig ();
$alipayConfig -> setServerUrl ( 'https://openapi.alipay.com/gateway.do' );
$alipayConfig -> setAppId ( '<-- 请填写您的AppId,例如:2019091767145019 -->' );
$alipayConfig -> setPrivateKey ($privateKey);
$alipayConfig -> setFormat ( 'json' );
$alipayConfig -> setAlipayPublicKey ($alipayPublicKey);
$alipayConfig -> setCharset ( 'UTF-8' );
$alipayConfig -> setSignType ( 'RSA2' );
return $alipayConfig;
}
C#
using System ;
using System . Collections . Generic ;
using Aop . Api ;
using Aop . Api . Request ;
using Aop . Api . Response ;
using Aop . Api . Domain ;
using Aop . Api . Util ;
namespace SdkDemoTest
{
public class AlipayTradePromotionCouponCreate
{
public static void Main ( string [] args )
{
// 初始化SDK
IAopClient alipayClient = new DefaultAopClient ( GetAlipayConfig ());
// 构造请求参数以调用接口
AlipayTradePromotionCouponCreateRequest request = new AlipayTradePromotionCouponCreateRequest ();
AlipayTradePromotionCouponCreateModel model = new AlipayTradePromotionCouponCreateModel ();
// 设置优惠信息
PromotionCoupon requestInfo = new PromotionCoupon ();
requestInfo.Duration = "repeating" ;
requestInfo.RedeemBy = "2026-02-20 14:10:00" ;
requestInfo.CouponId = "5JXR5XXW" ;
requestInfo.Name = "新用户10元立减" ;
requestInfo.PercentOff = 10 ;
requestInfo.AmountOff = 1000 ;
requestInfo.DurationInIterations = "3" ;
model.RequestInfo = requestInfo;
request. SetBizModel (model);
// 第三方代调用模式下请设置app_auth_token
// request.PutOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->");
AlipayTradePromotionCouponCreateResponse response = alipayClient. Execute (request);
if ( ! response.IsError)
{
Console. WriteLine ( "调用成功" );
}
else
{
Console. WriteLine ( "调用失败" );
}
}
private static AlipayConfig GetAlipayConfig ()
{
string privateKey = "<-- 请填写您的应用私钥,例如:MIIEvQIBADANB ... ... -->" ;
string alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIBIjANBg... -->" ;
AlipayConfig alipayConfig = new AlipayConfig ();
alipayConfig.ServerUrl = "https://openapi.alipay.com/gateway.do" ;
alipayConfig.AppId = "<-- 请填写您的AppId,例如:2019091767145019 -->" ;
alipayConfig.PrivateKey = privateKey;
alipayConfig.Format = "json" ;
alipayConfig.AlipayPublicKey = alipayPublicKey;
alipayConfig.Charset = "UTF-8" ;
alipayConfig.SignType = "RSA2" ;
return alipayConfig;
}
}
}
cURL
curl 'https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.promotion.coupon.create&format=json&sign=${sign}&app_id=${appid}&version=1.0&sign_type=RSA2×tamp=${now}' \
-F 'app_auth_token=${app_auth_token}' \
-F 'biz_content={
"request_info":{
"duration":"repeating",
"redeem_by":"2026-02-20 14:10:00",
"coupon_id":"5JXR5XXW",
"name":"新用户10元立减",
"percent_off":10,
"amount_off":1000,
"duration_in_iterations":"3"
}
}'
公共响应参数
参数 类型 是否必选 描述 示例值 code String 必选 网关返回码,详见文档 40004 msg String 必选 网关返回码描述,详见文档 Business Failed sub_code String 可选 业务返回码,参见具体的 API 接口文档 - sub_msg String 可选 业务返回码描述,参见具体的 API 接口文档 - sign String 必选 签名,详见文档 DZXh8eeTuAHoYE3w1J…
业务响应参数
参数 类型 是否必选 最大长度 描述 注意事项/枚举值 示例值 coupon_infoPromotionCoupon 必选 - 优惠信息 - - coupon_info.coupon_idString 必选 40 优惠编码 - 5JXR5XXWcoupon_info.nameString 必选 12 优惠名称 - 新用户10元立减coupon_info.amount_offNumber 可选 32 折扣10元金额 单位分 - 1000coupon_info.percent_offNumber 可选 32 折扣比例,百分比,10%含义为9折 - 10coupon_info.durationString 必选 20 周期性重复类型 支持 forever(永久)、once(一次性)、repeating(重复)模式 - repeatingcoupon_info.duration_in_iterationsString 可选 10 在接下来的3个计费周期可重复使用该优惠 - 3coupon_info.redeem_byString 必选 32 优惠到期时间 - 2026-02-20 14:10:00
响应示例
正常示例
{
"alipay_trade_promotion_coupon_create_response" :{
"code" : "10000" ,
"msg" : "Success" ,
"coupon_info" :{
"coupon_id" : "5JXR5XXW" ,
"name" : "新用户10元立减" ,
"amount_off" : 1000 ,
"percent_off" : 10 ,
"duration" : "repeating" ,
"duration_in_iterations" : "3" ,
"redeem_by" : "2026-02-20 14:10:00"
}
},
"sign" : "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}
异常示例
{ "alipay_trade_promotion_coupon_create_response" :{ "code" : "20000" , "msg" : "Service Currently Unavailable" , "sub_code" : "isp.unknow-error" , "sub_msg" : "系统繁忙" }, "sign" : "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE" }
业务错误码
错误码 错误描述 解决方案 SYSTEM_ERROR系统繁忙 服务器异常 可能发生了网络或者系统异常,导致服务调用失败,商户可以用同样的请求发起重试 INVALID_PARAMETER参数有误 请根据接口返回的参数非法的具体错误信息,修改参数后进行重试 COUPON_EXIST_ALREADY优惠已经存在 当前CouponId已经存在,请更换