@alipay/alipay-aipay 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/alipay-aipay.js +6 -0
- package/dist/commands/install.d.ts +11 -0
- package/dist/commands/install.d.ts.map +1 -0
- package/dist/commands/install.js +182 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/prepare-tools.d.ts +5 -0
- package/dist/commands/prepare-tools.d.ts.map +1 -0
- package/dist/commands/prepare-tools.js +29 -0
- package/dist/commands/prepare-tools.js.map +1 -0
- package/dist/commands/uninstall.d.ts +10 -0
- package/dist/commands/uninstall.d.ts.map +1 -0
- package/dist/commands/uninstall.js +82 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/commands/update.d.ts +10 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +155 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +65 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +43 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/alipay-cli.d.ts +15 -0
- package/dist/utils/alipay-cli.d.ts.map +1 -0
- package/dist/utils/alipay-cli.js +221 -0
- package/dist/utils/alipay-cli.js.map +1 -0
- package/dist/utils/config.d.ts +48 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +207 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/file.d.ts +55 -0
- package/dist/utils/file.d.ts.map +1 -0
- package/dist/utils/file.js +154 -0
- package/dist/utils/file.js.map +1 -0
- package/dist/utils/gpg.d.ts +14 -0
- package/dist/utils/gpg.d.ts.map +1 -0
- package/dist/utils/gpg.js +247 -0
- package/dist/utils/gpg.js.map +1 -0
- package/dist/utils/jq.d.ts +14 -0
- package/dist/utils/jq.d.ts.map +1 -0
- package/dist/utils/jq.js +221 -0
- package/dist/utils/jq.js.map +1 -0
- package/dist/utils/npm.d.ts +17 -0
- package/dist/utils/npm.d.ts.map +1 -0
- package/dist/utils/npm.js +42 -0
- package/dist/utils/npm.js.map +1 -0
- package/dist/utils/shell.d.ts +11 -0
- package/dist/utils/shell.d.ts.map +1 -0
- package/dist/utils/shell.js +54 -0
- package/dist/utils/shell.js.map +1 -0
- package/package.json +48 -7
- package/skill/SKILL.md +118 -0
- package/skill/references/integration/flow.md +487 -0
- package/skill/references/integration/modules/alipay-sdk-reminder.md +256 -0
- package/skill/references/integration/modules/checklist.md +122 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +68 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +74 -0
- package/skill/references/integration/modules/code-examples/csharp/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +73 -0
- package/skill/references/integration/modules/code-examples/csharp/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +58 -0
- package/skill/references/integration/modules/code-examples/csharp/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +128 -0
- package/skill/references/integration/modules/code-examples/csharp/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.cs +500 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +72 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +80 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +78 -0
- package/skill/references/integration/modules/code-examples/java/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/java/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +66 -0
- package/skill/references/integration/modules/code-examples/java/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +135 -0
- package/skill/references/integration/modules/code-examples/java/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemoController.java +610 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +51 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +57 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +55 -0
- package/skill/references/integration/modules/code-examples/nodejs/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +54 -0
- package/skill/references/integration/modules/code-examples/nodejs/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +77 -0
- package/skill/references/integration/modules/code-examples/nodejs/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/nodejs/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.js +461 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +59 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +67 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +66 -0
- package/skill/references/integration/modules/code-examples/php/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/php/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +56 -0
- package/skill/references/integration/modules/code-examples/php/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +107 -0
- package/skill/references/integration/modules/code-examples/php/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.php +444 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/345/205/263/351/227/255/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +57 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +65 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +63 -0
- package/skill/references/integration/modules/code-examples/python/1-/351/200/232/347/224/250/346/216/245/345/217/243//347/273/237/344/270/200/346/224/266/345/215/225/344/272/244/346/230/223/351/200/200/346/254/276/346/237/245/350/257/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +62 -0
- package/skill/references/integration/modules/code-examples/python/2-/347/275/221/347/253/231/346/224/257/344/273/230//347/273/237/344/270/200/346/224/266/345/215/225/344/270/213/345/215/225/345/271/266/346/224/257/344/273/230/351/241/265/351/235/242/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +48 -0
- package/skill/references/integration/modules/code-examples/python/3-APP/346/224/257/344/273/230/APP/346/224/257/344/273/230/346/216/245/345/217/243/344/273/243/347/240/201/347/244/272/344/276/213.md +43 -0
- package/skill/references/integration/modules/code-examples/python/4-/346/214/211/351/207/217/344/273/230/350/264/271/A2MPaymentDemo.py +465 -0
- package/skill/references/integration/modules/interface-guide.md +90 -0
- package/skill/references/integration/modules/product-decision.md +90 -0
- package/skill/references/integration/modules/sandbox/a2m-sandbox-test.md +270 -0
- package/skill/references/integration/modules/sandbox/alipay-sandbox-tool.md +133 -0
- package/skill/references/integration/modules/sandbox/sandbox-setup-guide.md +218 -0
- package/skill/references/integration/modules/scripts/local_402_sandbox_pay.py +659 -0
- package/skill/references/normal/alipay-cli-env.md +214 -0
- package/skill/references/normal/rejection-guide.md +37 -0
- package/skill/references/normal/scripts/common.sh +32 -0
- package/skill/references/normal/scripts/detect_dev_tool.sh +46 -0
- package/skill/references/onboarding/flow.md +573 -0
- package/skill/references/onboarding/modules/app-release.md +415 -0
- package/skill/references/onboarding/modules/authorization.md +269 -0
- package/skill/references/onboarding/modules/error-handling.md +251 -0
- package/skill/references/onboarding/modules/mcc-reference.md +209 -0
- package/skill/references/onboarding/modules/product-sign.md +304 -0
- package/skill/references/onboarding/modules/scripts/app.sh +705 -0
- package/skill/references/onboarding/modules/scripts/ar_sign_apply.sh +248 -0
- package/skill/references/onboarding/modules/scripts/auth.sh +505 -0
- package/skill/references/onboarding/modules/scripts/error_handler.sh +452 -0
- package/skill/references/onboarding/modules/scripts/query_sign_status.sh +146 -0
- package/skill/references/onboarding/modules/scripts/service.sh +267 -0
- package/skill/references/onboarding/modules/scripts/upload_screenshots.sh +152 -0
- package/skill/references/onboarding/modules/service-registration.md +294 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# 统一收单交易关闭接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.domain.AlipayTradeCloseModel;
|
|
13
|
+
import com.alipay.api.response.AlipayTradeCloseResponse;
|
|
14
|
+
import com.alipay.api.request.AlipayTradeCloseRequest;
|
|
15
|
+
|
|
16
|
+
public class AlipayTradeClose {
|
|
17
|
+
|
|
18
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
19
|
+
// 初始化SDK(Java 使用 PKCS#8 格式私钥,C#/Python 使用 PKCS#1 格式,请勿混用)
|
|
20
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
21
|
+
|
|
22
|
+
AlipayTradeCloseRequest request = new AlipayTradeCloseRequest();
|
|
23
|
+
AlipayTradeCloseModel model = new AlipayTradeCloseModel();
|
|
24
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER"); // 商户订单号,与 tradeNo 二选一
|
|
25
|
+
// model.setTradeNo("ALIPAY_TRADE_NO_PLACEHOLDER"); // 支付宝交易号,同时传时以 tradeNo 为准
|
|
26
|
+
request.setBizModel(model);
|
|
27
|
+
|
|
28
|
+
AlipayTradeCloseResponse response = alipayClient.execute(request);
|
|
29
|
+
|
|
30
|
+
if (response.isSuccess()) {
|
|
31
|
+
System.out.println("交易关闭成功");
|
|
32
|
+
} else {
|
|
33
|
+
System.out.println("调用失败: " + response.getSubCode() + " - " + response.getSubMsg());
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private static AlipayConfig getAlipayConfig() {
|
|
38
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
39
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
40
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
41
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
42
|
+
// 沙箱环境: alipayConfig.setServerUrl("https://openapi-sandbox.dl.alipaydev.com/gateway.do");
|
|
43
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
44
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
45
|
+
alipayConfig.setFormat("json");
|
|
46
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
47
|
+
alipayConfig.setCharset("UTF-8");
|
|
48
|
+
alipayConfig.setSignType("RSA2");
|
|
49
|
+
return alipayConfig;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## 响应示例
|
|
55
|
+
### 正常示例
|
|
56
|
+
```json
|
|
57
|
+
{
|
|
58
|
+
"code": "10000",
|
|
59
|
+
"msg": "Success",
|
|
60
|
+
"trade_no": "ALIPAY_TRADE_NO_PLACEHOLDER",
|
|
61
|
+
"out_trade_no": "MERCHANT_ORDER_NO_PLACEHOLDER"
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
### 异常示例
|
|
65
|
+
```json
|
|
66
|
+
{
|
|
67
|
+
"code": "20000",
|
|
68
|
+
"msg": "Service Currently Unavailable",
|
|
69
|
+
"sub_code": "isp.unknow-error",
|
|
70
|
+
"sub_msg": "系统繁忙"
|
|
71
|
+
}
|
|
72
|
+
```
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# 统一收单交易查询接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.response.AlipayTradeQueryResponse;
|
|
13
|
+
import com.alipay.api.request.AlipayTradeQueryRequest;
|
|
14
|
+
import com.alipay.api.domain.AlipayTradeQueryModel;
|
|
15
|
+
|
|
16
|
+
public class AlipayTradeQuery {
|
|
17
|
+
|
|
18
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
19
|
+
// 初始化SDK(Java 使用 PKCS#8 格式私钥,C#/Python 使用 PKCS#1 格式,请勿混用)
|
|
20
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
21
|
+
|
|
22
|
+
AlipayTradeQueryRequest request = new AlipayTradeQueryRequest();
|
|
23
|
+
AlipayTradeQueryModel model = new AlipayTradeQueryModel();
|
|
24
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER"); // 商户订单号,与 tradeNo 二选一
|
|
25
|
+
// model.setTradeNo("ALIPAY_TRADE_NO_PLACEHOLDER"); // 支付宝交易号,同时传时以 tradeNo 为准
|
|
26
|
+
request.setBizModel(model);
|
|
27
|
+
|
|
28
|
+
AlipayTradeQueryResponse response = alipayClient.execute(request);
|
|
29
|
+
|
|
30
|
+
if (response.isSuccess()) {
|
|
31
|
+
// trade_status: TRADE_SUCCESS/TRADE_FINISHED 表示支付成功,TRADE_CLOSED 表示已关闭
|
|
32
|
+
System.out.println("交易状态: " + response.getTradeStatus() + ", 订单金额: " + response.getTotalAmount());
|
|
33
|
+
} else {
|
|
34
|
+
System.out.println("调用失败: " + response.getSubCode() + " - " + response.getSubMsg());
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
private static AlipayConfig getAlipayConfig() {
|
|
39
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
40
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
41
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
42
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
43
|
+
// 沙箱环境: alipayConfig.setServerUrl("https://openapi-sandbox.dl.alipaydev.com/gateway.do");
|
|
44
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
45
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
46
|
+
alipayConfig.setFormat("json");
|
|
47
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
48
|
+
alipayConfig.setCharset("UTF-8");
|
|
49
|
+
alipayConfig.setSignType("RSA2");
|
|
50
|
+
return alipayConfig;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## 响应示例
|
|
56
|
+
### 正常示例
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"code": "10000",
|
|
60
|
+
"msg": "Success",
|
|
61
|
+
"trade_no": "ALIPAY_TRADE_NO_PLACEHOLDER",
|
|
62
|
+
"out_trade_no": "MERCHANT_ORDER_NO_PLACEHOLDER",
|
|
63
|
+
"trade_status": "TRADE_SUCCESS",
|
|
64
|
+
"total_amount": "88.88",
|
|
65
|
+
"buyer_pay_amount": "8.88",
|
|
66
|
+
"receipt_amount": "15.25",
|
|
67
|
+
"buyer_logon_id": "159****5620",
|
|
68
|
+
"buyer_user_id": "<BUYER_USER_ID>",
|
|
69
|
+
"send_pay_date": "2014-11-27 15:45:57"
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
### 异常示例
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"code": "20000",
|
|
76
|
+
"msg": "Service Currently Unavailable",
|
|
77
|
+
"sub_code": "isp.unknow-error",
|
|
78
|
+
"sub_msg": "系统繁忙"
|
|
79
|
+
}
|
|
80
|
+
```
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# 统一收单交易退款接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.domain.AlipayTradeRefundModel;
|
|
13
|
+
import com.alipay.api.request.AlipayTradeRefundRequest;
|
|
14
|
+
import com.alipay.api.response.AlipayTradeRefundResponse;
|
|
15
|
+
|
|
16
|
+
public class AlipayTradeRefund {
|
|
17
|
+
|
|
18
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
19
|
+
// 初始化SDK(Java 使用 PKCS#8 格式私钥,C#/Python 使用 PKCS#1 格式,请勿混用)
|
|
20
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
21
|
+
|
|
22
|
+
AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
|
|
23
|
+
AlipayTradeRefundModel model = new AlipayTradeRefundModel();
|
|
24
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER"); // 商户订单号,与 tradeNo 二选一
|
|
25
|
+
model.setRefundAmount("200.12"); // 退款金额,必填,单位为元
|
|
26
|
+
model.setRefundReason("正常退款"); // 退款原因,选填
|
|
27
|
+
model.setOutRequestNo("OUT_REQUEST_NO_PLACEHOLDER"); // 退款请求号,同一笔交易多次部分退款时必填且必须不同
|
|
28
|
+
request.setBizModel(model);
|
|
29
|
+
|
|
30
|
+
AlipayTradeRefundResponse response = alipayClient.execute(request);
|
|
31
|
+
|
|
32
|
+
if (response.isSuccess()) {
|
|
33
|
+
// fund_change: Y=发生了资金变化(退款成功),N=未发生资金变化
|
|
34
|
+
System.out.println("资金变化: " + response.getFundChange() + ", 退款金额: " + response.getRefundFee());
|
|
35
|
+
} else {
|
|
36
|
+
System.out.println("调用失败: " + response.getSubCode() + " - " + response.getSubMsg());
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
private static AlipayConfig getAlipayConfig() {
|
|
41
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
42
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
43
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
44
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
45
|
+
// 沙箱环境: alipayConfig.setServerUrl("https://openapi-sandbox.dl.alipaydev.com/gateway.do");
|
|
46
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
47
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
48
|
+
alipayConfig.setFormat("json");
|
|
49
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
50
|
+
alipayConfig.setCharset("UTF-8");
|
|
51
|
+
alipayConfig.setSignType("RSA2");
|
|
52
|
+
return alipayConfig;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 响应示例
|
|
58
|
+
### 正常示例
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"code": "10000",
|
|
62
|
+
"msg": "Success",
|
|
63
|
+
"trade_no": "ALIPAY_TRADE_NO_PLACEHOLDER",
|
|
64
|
+
"out_trade_no": "MERCHANT_ORDER_NO_PLACEHOLDER",
|
|
65
|
+
"buyer_logon_id": "159****5620",
|
|
66
|
+
"fund_change": "Y",
|
|
67
|
+
"refund_fee": "88.88"
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
### 异常示例
|
|
71
|
+
```json
|
|
72
|
+
{
|
|
73
|
+
"code": "20000",
|
|
74
|
+
"msg": "Service Currently Unavailable",
|
|
75
|
+
"sub_code": "isp.unknow-error",
|
|
76
|
+
"sub_msg": "系统繁忙"
|
|
77
|
+
}
|
|
78
|
+
```
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# 统一收单交易退款查询接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.domain.AlipayTradeFastpayRefundQueryModel;
|
|
13
|
+
import com.alipay.api.response.AlipayTradeFastpayRefundQueryResponse;
|
|
14
|
+
import com.alipay.api.request.AlipayTradeFastpayRefundQueryRequest;
|
|
15
|
+
|
|
16
|
+
public class AlipayTradeFastpayRefundQuery {
|
|
17
|
+
|
|
18
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
19
|
+
// 初始化SDK(Java 使用 PKCS#8 格式私钥,C#/Python 使用 PKCS#1 格式,请勿混用)
|
|
20
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
21
|
+
|
|
22
|
+
AlipayTradeFastpayRefundQueryRequest request = new AlipayTradeFastpayRefundQueryRequest();
|
|
23
|
+
AlipayTradeFastpayRefundQueryModel model = new AlipayTradeFastpayRefundQueryModel();
|
|
24
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER"); // 商户订单号,与 tradeNo 二选一
|
|
25
|
+
model.setOutRequestNo("OUT_REQUEST_NO_PLACEHOLDER"); // 退款请求号,必填,同一笔交易多次部分退款时用于区分
|
|
26
|
+
request.setBizModel(model);
|
|
27
|
+
|
|
28
|
+
AlipayTradeFastpayRefundQueryResponse response = alipayClient.execute(request);
|
|
29
|
+
|
|
30
|
+
if (response.isSuccess()) {
|
|
31
|
+
// refund_status: REFUND_SUCCESS 表示退款成功,REFUND_PROCESSING 表示退款处理中
|
|
32
|
+
System.out.println("退款状态: " + response.getRefundStatus() + ", 退款金额: " + response.getRefundAmount());
|
|
33
|
+
} else {
|
|
34
|
+
System.out.println("调用失败: " + response.getSubCode() + " - " + response.getSubMsg());
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
private static AlipayConfig getAlipayConfig() {
|
|
39
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
40
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
41
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
42
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
43
|
+
// 沙箱环境: alipayConfig.setServerUrl("https://openapi-sandbox.dl.alipaydev.com/gateway.do");
|
|
44
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
45
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
46
|
+
alipayConfig.setFormat("json");
|
|
47
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
48
|
+
alipayConfig.setCharset("UTF-8");
|
|
49
|
+
alipayConfig.setSignType("RSA2");
|
|
50
|
+
return alipayConfig;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## 响应示例
|
|
56
|
+
### 正常示例
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"code": "10000",
|
|
60
|
+
"msg": "Success",
|
|
61
|
+
"trade_no": "ALIPAY_TRADE_NO_PLACEHOLDER",
|
|
62
|
+
"out_trade_no": "MERCHANT_ORDER_NO_PLACEHOLDER",
|
|
63
|
+
"out_request_no": "OUT_REQUEST_NO_PLACEHOLDER",
|
|
64
|
+
"total_amount": "100.20",
|
|
65
|
+
"refund_amount": "12.33",
|
|
66
|
+
"refund_status": "REFUND_SUCCESS"
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
### 异常示例
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"code": "20000",
|
|
73
|
+
"msg": "Service Currently Unavailable",
|
|
74
|
+
"sub_code": "isp.unknow-error",
|
|
75
|
+
"sub_msg": "系统繁忙"
|
|
76
|
+
}
|
|
77
|
+
```
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# 统一收单下单并支付页面接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.domain.AlipayTradePagePayModel;
|
|
13
|
+
import com.alipay.api.response.AlipayTradePagePayResponse;
|
|
14
|
+
import com.alipay.api.request.AlipayTradePagePayRequest;
|
|
15
|
+
|
|
16
|
+
public class AlipayTradePagePay {
|
|
17
|
+
|
|
18
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
19
|
+
// 初始化SDK(Java 使用 PKCS#8 格式私钥,C#/Python 使用 PKCS#1 格式,请勿混用)
|
|
20
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
21
|
+
|
|
22
|
+
AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
|
|
23
|
+
request.setNotifyUrl("https://your-domain.com/notify"); // 异步通知地址,必须传入
|
|
24
|
+
request.setReturnUrl("https://your-domain.com/return"); // 同步跳转地址,必须传入
|
|
25
|
+
|
|
26
|
+
AlipayTradePagePayModel model = new AlipayTradePagePayModel();
|
|
27
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER"); // 商户订单号,必填
|
|
28
|
+
model.setTotalAmount("88.88"); // 订单总金额,必填,单位为元
|
|
29
|
+
model.setSubject("Iphone6 16G"); // 订单标题,必填
|
|
30
|
+
model.setProductCode("FAST_INSTANT_TRADE_PAY"); // 网站支付固定值,必填
|
|
31
|
+
request.setBizModel(model);
|
|
32
|
+
|
|
33
|
+
// ⚠️ 网站支付必须使用 pageExecute(),不能使用 execute()
|
|
34
|
+
// ⚠️ 必须使用 POST 模式:alipayClient.pageExecute(request, "POST")
|
|
35
|
+
AlipayTradePagePayResponse response = alipayClient.pageExecute(request, "POST");
|
|
36
|
+
String formHtml = response.getBody();
|
|
37
|
+
// pageExecute 返回的是 HTML 表单字符串,前端需要渲染并自动提交
|
|
38
|
+
System.out.println(formHtml);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
private static AlipayConfig getAlipayConfig() {
|
|
42
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
43
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
44
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
45
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
46
|
+
// 沙箱环境: alipayConfig.setServerUrl("https://openapi-sandbox.dl.alipaydev.com/gateway.do");
|
|
47
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
48
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
49
|
+
alipayConfig.setFormat("json");
|
|
50
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
51
|
+
alipayConfig.setCharset("UTF-8");
|
|
52
|
+
alipayConfig.setSignType("RSA2");
|
|
53
|
+
return alipayConfig;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 响应示例
|
|
59
|
+
### 正常示例
|
|
60
|
+
```html
|
|
61
|
+
<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.page.pay&format=json&sign=SIGN_PLACEHOLDER&version=1.0&app_id=20190xxxxxx&sign_type=RSA2×tamp=2014-07-24+03%3A07%3A50">
|
|
62
|
+
<input type="hidden" name="biz_content" value="{"out_trade_no":"MERCHANT_ORDER_NO_PLACEHOLDER","total_amount":"88.88","subject":"Iphone6 16G","product_code":"FAST_INSTANT_TRADE_PAY"}">
|
|
63
|
+
<input type="submit" value="立即支付" style="display:none" >
|
|
64
|
+
</form>
|
|
65
|
+
<script>document.forms[0].submit();</script>
|
|
66
|
+
```
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# APP支付接口 - Java 示例
|
|
2
|
+
|
|
3
|
+
## 请求示例
|
|
4
|
+
|
|
5
|
+
```java
|
|
6
|
+
package com.java.sdk.demo;
|
|
7
|
+
|
|
8
|
+
import com.alipay.api.AlipayApiException;
|
|
9
|
+
import com.alipay.api.AlipayClient;
|
|
10
|
+
import com.alipay.api.DefaultAlipayClient;
|
|
11
|
+
import com.alipay.api.AlipayConfig;
|
|
12
|
+
import com.alipay.api.request.AlipayTradeAppPayRequest;
|
|
13
|
+
import com.alipay.api.domain.ExtUserInfo;
|
|
14
|
+
import com.alipay.api.domain.AlipayTradeAppPayModel;
|
|
15
|
+
import com.alipay.api.response.AlipayTradeAppPayResponse;
|
|
16
|
+
import com.alipay.api.domain.ExtendParams;
|
|
17
|
+
import com.alipay.api.domain.GoodsDetail;
|
|
18
|
+
|
|
19
|
+
import com.alipay.api.FileItem;
|
|
20
|
+
import java.util.Base64;
|
|
21
|
+
import java.util.ArrayList;
|
|
22
|
+
import java.util.List;
|
|
23
|
+
|
|
24
|
+
public class AlipayTradeAppPay {
|
|
25
|
+
|
|
26
|
+
public static void main(String[] args) throws AlipayApiException {
|
|
27
|
+
// 初始化SDK
|
|
28
|
+
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
29
|
+
|
|
30
|
+
// 构造请求参数以调用接口
|
|
31
|
+
AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
|
|
32
|
+
AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
|
|
33
|
+
|
|
34
|
+
// 设置商户订单号
|
|
35
|
+
model.setOutTradeNo("MERCHANT_ORDER_NO_PLACEHOLDER");
|
|
36
|
+
|
|
37
|
+
// 设置订单总金额
|
|
38
|
+
model.setTotalAmount("9.00");
|
|
39
|
+
|
|
40
|
+
// 设置订单标题
|
|
41
|
+
model.setSubject("大乐透");
|
|
42
|
+
|
|
43
|
+
// 设置产品码
|
|
44
|
+
model.setProductCode("QUICK_MSECURITY_PAY");
|
|
45
|
+
|
|
46
|
+
// 设置订单包含的商品列表信息
|
|
47
|
+
List<GoodsDetail> goodsDetail = new ArrayList<GoodsDetail>();
|
|
48
|
+
GoodsDetail goodsDetail0 = new GoodsDetail();
|
|
49
|
+
goodsDetail0.setGoodsName("ipad");
|
|
50
|
+
goodsDetail0.setAlipayGoodsId("20010001");
|
|
51
|
+
goodsDetail0.setQuantity(1L);
|
|
52
|
+
goodsDetail0.setPrice("2000");
|
|
53
|
+
goodsDetail0.setGoodsId("apple-01");
|
|
54
|
+
goodsDetail0.setGoodsCategory("34543238");
|
|
55
|
+
goodsDetail0.setCategoriesTree("124868003|126232002|126252004");
|
|
56
|
+
goodsDetail0.setShowUrl("http://www.alipay.com/xxx.jpg");
|
|
57
|
+
goodsDetail.add(goodsDetail0);
|
|
58
|
+
model.setGoodsDetail(goodsDetail);
|
|
59
|
+
|
|
60
|
+
// 设置订单绝对超时时间
|
|
61
|
+
model.setTimeExpire("2016-12-31 10:05:00");
|
|
62
|
+
|
|
63
|
+
// 设置业务扩展参数
|
|
64
|
+
ExtendParams extendParams = new ExtendParams();
|
|
65
|
+
extendParams.setSysServiceProviderId("<SYS_SERVICE_PROVIDER_ID>");
|
|
66
|
+
extendParams.setHbFqSellerPercent("100");
|
|
67
|
+
extendParams.setHbFqNum("3");
|
|
68
|
+
extendParams.setIndustryRefluxInfo("{\"scene_code\":\"metro_tradeorder\",\"channel\":\"xxxx\",\"scene_data\":{\"asset_name\":\"ALIPAY\"}}");
|
|
69
|
+
extendParams.setRoyaltyFreeze("true");
|
|
70
|
+
extendParams.setCardType("S0JP0000");
|
|
71
|
+
model.setExtendParams(extendParams);
|
|
72
|
+
|
|
73
|
+
// 设置公用回传参数
|
|
74
|
+
model.setPassbackParams("merchantBizType%3d3C%26merchantBizNo%3dMERCHANT_BIZ_NO_PLACEHOLDER");
|
|
75
|
+
|
|
76
|
+
// 设置商户的原始订单号
|
|
77
|
+
model.setMerchantOrderNo("MERCHANT_ORDER_NO_PLACEHOLDER");
|
|
78
|
+
|
|
79
|
+
// 设置外部指定买家
|
|
80
|
+
ExtUserInfo extUserInfo = new ExtUserInfo();
|
|
81
|
+
extUserInfo.setCertType("IDENTITY_CARD");
|
|
82
|
+
extUserInfo.setCertNo("<CERT_NO>");
|
|
83
|
+
extUserInfo.setMobile("<MOBILE>");
|
|
84
|
+
extUserInfo.setName("李明");
|
|
85
|
+
extUserInfo.setMinAge("18");
|
|
86
|
+
extUserInfo.setNeedCheckInfo("F");
|
|
87
|
+
extUserInfo.setIdentityHash("<IDENTITY_HASH>");
|
|
88
|
+
model.setExtUserInfo(extUserInfo);
|
|
89
|
+
|
|
90
|
+
// 设置通知参数选项
|
|
91
|
+
List<String> queryOptions = new ArrayList<String>();
|
|
92
|
+
queryOptions.add("hyb_amount");
|
|
93
|
+
queryOptions.add("enterprise_pay_info");
|
|
94
|
+
model.setQueryOptions(queryOptions);
|
|
95
|
+
|
|
96
|
+
request.setBizModel(model);
|
|
97
|
+
// 第三方代调用模式下请设置app_auth_token
|
|
98
|
+
// request.putOtherTextParam("app_auth_token", "<-- 请填写应用授权令牌 -->");
|
|
99
|
+
|
|
100
|
+
AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
|
|
101
|
+
String orderStr = response.getBody();
|
|
102
|
+
System.out.println(orderStr);
|
|
103
|
+
|
|
104
|
+
if (response.isSuccess()) {
|
|
105
|
+
System.out.println("调用成功");
|
|
106
|
+
} else {
|
|
107
|
+
System.out.println("调用失败");
|
|
108
|
+
// SDK 版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接
|
|
109
|
+
// String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
|
|
110
|
+
// System.out.println(diagnosisUrl);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
private static AlipayConfig getAlipayConfig() {
|
|
115
|
+
String privateKey = "<-- 请填写您的应用私钥,例如:MIIE...(脱敏示例) -->";
|
|
116
|
+
String alipayPublicKey = "<-- 请填写您的支付宝公钥,例如:MIIB...(脱敏示例) -->";
|
|
117
|
+
AlipayConfig alipayConfig = new AlipayConfig();
|
|
118
|
+
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
|
119
|
+
alipayConfig.setAppId("<-- 请填写您的AppId,例如:20190xxxxxx -->");
|
|
120
|
+
alipayConfig.setPrivateKey(privateKey);
|
|
121
|
+
alipayConfig.setFormat("json");
|
|
122
|
+
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
|
123
|
+
alipayConfig.setCharset("UTF-8");
|
|
124
|
+
alipayConfig.setSignType("RSA2");
|
|
125
|
+
return alipayConfig;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## 响应示例
|
|
131
|
+
### 正常示例
|
|
132
|
+
```
|
|
133
|
+
app_id=20190xxxxxx&biz_content=%7B%22time_expire%22%3A%222016-12-31+10%3A05%3A00%22%2C%22extend_params%22%3A%22%22%2C%22query_options%22%3A%22%5B%5C%22hyb_amount%5C%22%2C%5C%22enterprise_pay_info%5C%22%5D%22%2C%22subject%22%3A%22%E5%A4%A7%E4%B9%90%E9%80%8F%22%2C%22product_code%22%3A%22QUICK_MSECURITY_PAY%22%2C%22body%22%3A%22Iphone6+16G%22%2C%22passback_params%22%3A%22merchantBizType%253d3C%2526merchantBizNo%253dMERCHANT_BIZ_NO_PLACEHOLDER%22%2C%22specified_channel%22%3A%22pcredit%22%2C%22goods_detail%22%3A%22%22%2C%22merchant_order_no%22%3A%22MERCHANT_ORDER_NO_PLACEHOLDER%22%2C%22enable_pay_channels%22%3A%22pcredit%2CmoneyFund%2CdebitCardExpress%22%2C%22out_trade_no%22%3A%22MERCHANT_ORDER_NO_PLACEHOLDER%22%2C%22ext_user_info%22%3A%22%22%2C%22total_amount%22%3A%229.00%22%2C%22timeout_express%22%3A%2290m%22%2C%22disable_pay_channels%22%3A%22pcredit%2CmoneyFund%2CdebitCardExpress%22%2C%22agreement_sign_params%22%3A%22%22%7D&charset=UTF-8&format=json&method=alipay.trade.app.pay&sign=SIGN_PLACEHOLDER&sign_type=RSA2×tamp=2014-07-24+03%3A07%3A50&version=1.0
|
|
134
|
+
```
|
|
135
|
+
|