All URIs are relative to https://openapi.alipay.com.
Method | HTTP request | Description |
---|---|---|
cancel() | POST /v3/alipay/trade/cancel | 统一收单交易撤销接口 |
close() | POST /v3/alipay/trade/close | 统一收单交易关闭接口 |
create() | POST /v3/alipay/trade/create | 统一收单交易创建接口 |
pay() | POST /v3/alipay/trade/pay | 统一收单交易支付接口 |
precreate() | POST /v3/alipay/trade/precreate | 统一收单线下交易预创建 |
query() | POST /v3/alipay/trade/query | 统一收单交易查询 |
refund() | POST /v3/alipay/trade/refund | 统一收单交易退款接口 |
cancel($alipayTradeCancelModel): \Alipay\OpenAPISDK\Model\AlipayTradeCancelResponseModel
统一收单交易撤销接口
支付交易返回失败或支付系统超时,调用该接口撤销交易。如果此订单用户支付失败,支付宝系统会将此订单关闭;如果用户支付成功,支付宝系统会将此订单资金退还给用户。 注意:只有发生支付系统超时或者支付结果未知时可调用撤销,其他正常支付的单如需实现相同功能请调用申请退款API。提交支付交易后调用【查询订单API】,没有明确的支付结果再调用【撤销订单API】。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradeCancelModel = new \Alipay\OpenAPISDK\Model\AlipayTradeCancelModel(); // \Alipay\OpenAPISDK\Model\AlipayTradeCancelModel
try {
$result = $apiInstance->cancel($alipayTradeCancelModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->cancel: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradeCancelModel | \Alipay\OpenAPISDK\Model\AlipayTradeCancelModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradeCancelResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
close($alipayTradeCloseModel): \Alipay\OpenAPISDK\Model\AlipayTradeCloseResponseModel
统一收单交易关闭接口
用于交易创建后,用户在一定时间内未进行支付,可调用该接口直接将未付款的交易进行关闭。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradeCloseModel = new \Alipay\OpenAPISDK\Model\AlipayTradeCloseModel(); // \Alipay\OpenAPISDK\Model\AlipayTradeCloseModel
try {
$result = $apiInstance->close($alipayTradeCloseModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->close: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradeCloseModel | \Alipay\OpenAPISDK\Model\AlipayTradeCloseModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradeCloseResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
create($alipayTradeCreateModel): \Alipay\OpenAPISDK\Model\AlipayTradeCreateResponseModel
统一收单交易创建接口
商户通过该接口进行交易的创建下单
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradeCreateModel = new \Alipay\OpenAPISDK\Model\AlipayTradeCreateModel(); // \Alipay\OpenAPISDK\Model\AlipayTradeCreateModel
try {
$result = $apiInstance->create($alipayTradeCreateModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->create: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradeCreateModel | \Alipay\OpenAPISDK\Model\AlipayTradeCreateModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradeCreateResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
pay($alipayTradePayModel): \Alipay\OpenAPISDK\Model\AlipayTradePayResponseModel
统一收单交易支付接口
收银员使用扫码设备读取用户手机支付宝“付款码”获取设备(如扫码枪)读取用户手机支付宝的付款码信息后,将二维码或条码信息通过本接口上送至支付宝发起支付。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradePayModel = new \Alipay\OpenAPISDK\Model\AlipayTradePayModel(); // \Alipay\OpenAPISDK\Model\AlipayTradePayModel
try {
$result = $apiInstance->pay($alipayTradePayModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->pay: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradePayModel | \Alipay\OpenAPISDK\Model\AlipayTradePayModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradePayResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
precreate($alipayTradePrecreateModel): \Alipay\OpenAPISDK\Model\AlipayTradePrecreateResponseModel
统一收单线下交易预创建
收银员通过收银台或商户后台调用支付宝接口,生成二维码后,展示给用户,由用户扫描二维码完成订单支付。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradePrecreateModel = new \Alipay\OpenAPISDK\Model\AlipayTradePrecreateModel(); // \Alipay\OpenAPISDK\Model\AlipayTradePrecreateModel
try {
$result = $apiInstance->precreate($alipayTradePrecreateModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->precreate: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradePrecreateModel | \Alipay\OpenAPISDK\Model\AlipayTradePrecreateModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradePrecreateResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
query($alipayTradeQueryModel): \Alipay\OpenAPISDK\Model\AlipayTradeQueryResponseModel
统一收单交易查询
该接口提供所有支付宝支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。 需要调用查询接口的情况: 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知; 调用支付接口后,返回系统错误或未知交易状态情况; 调用alipay.trade.pay,返回INPROCESS的状态; 调用alipay.trade.cancel之前,需确认支付状态;
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradeQueryModel = new \Alipay\OpenAPISDK\Model\AlipayTradeQueryModel(); // \Alipay\OpenAPISDK\Model\AlipayTradeQueryModel
try {
$result = $apiInstance->query($alipayTradeQueryModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->query: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradeQueryModel | \Alipay\OpenAPISDK\Model\AlipayTradeQueryModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradeQueryResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json
[Back to top] [Back to API list] [Back to README]
refund($alipayTradeRefundModel): \Alipay\OpenAPISDK\Model\AlipayTradeRefundResponseModel
统一收单交易退款接口
当交易发生之后一段时间内,由于买家或者卖家的原因需要退款时,卖家可以通过退款接口将支付款退还给买家,支付宝将在收到退款请求并且验证成功之后,按照退款规则将支付款按原路退到买家帐号上。 交易超过约定时间(签约时设置的可退款时间)的订单无法进行退款。 支付宝退款支持单笔交易分多次退款,多次退款需要提交原支付订单的订单号和设置不同的退款请求号。一笔退款失败后重新提交,要保证重试时退款请求号不能变更,防止该笔交易重复退款。 同一笔交易累计提交的退款金额不能超过原始交易总金额。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Alipay\OpenAPISDK\Api\AlipayTradeApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
// 初始化alipay参数
$alipayConfig = new \Alipay\OpenAPISDK\Util\Model\AlipayConfig();
$alipayConfig->setAppId('app_id');
$alipayConfig->setPrivateKey('private_key');
// 密钥模式
$alipayConfig->setAlipayPublicKey('alipay_public_key');
// 证书模式
// $alipayConfig->setAppCertPath('../appCertPublicKey.crt');
// $alipayConfig->setAlipayPublicCertPath('../alipayCertPublicKey_RSA2.crt');
// $alipayConfig->setRootCertPath('../alipayRootCert.crt');
$alipayConfig->setEncryptKey('encrypt_key');
$alipayConfigUtil = new \Alipay\OpenAPISDK\Util\AlipayConfigUtil($alipayConfig);
$apiInstance->setAlipayConfigUtil($alipayConfigUtil);
$alipayTradeRefundModel = new \Alipay\OpenAPISDK\Model\AlipayTradeRefundModel(); // \Alipay\OpenAPISDK\Model\AlipayTradeRefundModel
try {
$result = $apiInstance->refund($alipayTradeRefundModel);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AlipayTradeApi->refund: ', $e->getMessage(), PHP_EOL;
}
Name | Type | Description | Notes |
---|---|---|---|
alipayTradeRefundModel | \Alipay\OpenAPISDK\Model\AlipayTradeRefundModel | [optional] |
\Alipay\OpenAPISDK\Model\AlipayTradeRefundResponseModel
No authorization required
- Content-Type:
application/json
- Accept:
application/json