特殊减额
接口限频:单特殊减额目标商户号100qps。接口幂等可重入时间:31天。余额不足处理:余额不足时,本接口会关单,关单成功后返回403-NOT_ENOUGH;因单据已关闭,重入接口时返回400-ALREADY_EXISTS
| 请求参数 | 类型 | 描述 |
|---|---|---|
| json | object | 声明请求的JSON数据结构 |
| mchid | string | 微信支付商户号 |
| bal_account_no | string | 额度台账号 |
| out_request_no | string | 特殊减额单号 |
| reduction_type | string | 特殊减额类型FINANCIAL_PENALTY | JUDICIAL_DEDUCTION 枚举值之一 |
| amount | integer | 减额金额 |
| reason | string | 特殊减额原因 |
| headers | object | 声明请求的头参数 |
| Wechatpay-Serial | string | 微信支付公钥ID/平台证书序列号 |
php
$instance->v3->aggracctBc->wbChannel->specialReduction->postAsync([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(json_decode((string) $response->getBody(), true));
})
->wait();php
$instance->chain('v3/aggracct-bc/wb-channel/special-reduction')->postAsync([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(json_decode((string) $response->getBody(), true));
})
->wait();php
$instance['v3/aggracct-bc/wb-channel/special-reduction']->postAsync([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
print_r(json_decode((string) $response->getBody(), true));
})
->wait();php
$response = $instance->v3->aggracctBc->wbChannel->specialReduction->post([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
]);
print_r(json_decode((string) $response->getBody(), true));php
$response = $instance->chain('v3/aggracct-bc/wb-channel/special-reduction')->post([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
]);
print_r(json_decode((string) $response->getBody(), true));php
$response = $instance['v3/aggracct-bc/wb-channel/special-reduction']->post([
'json' => [
'mchid' => '1900016681',
'bal_account_no' => '8609cb22e1774a50a930e414cc71eca06121bc',
'out_request_no' => 'htozr8denqegbt6tk6u10iymo7yww5pn',
'reduction_type' => 'JUDICIAL_DEDUCTION',
'amount' => 1,
'reason' => '司法案件号:202508080009',
],
'headers' => [
'Wechatpay-Serial' => 'PUB_KEY_ID_0114232134912410000000000000',
],
]);
print_r(json_decode((string) $response->getBody(), true));| 返回字典 | 类型 | 描述 |
|---|---|---|
| mchid | string | 微信支付商户号 |
| bal_account_no | string | 额度台账号 |
| out_request_no | string | 特殊减额单号 |
| reduction_type | string | 特殊减额类型FINANCIAL_PENALTY | JUDICIAL_DEDUCTION 枚举值之一 |
| amount | integer | 减额金额 |
| state | string | 处理结果PROCESSING | SUCCESS | FAILED 枚举值之一 |
| reason | string | 特殊减额原因 |
| quota_change_no | string | 微信支付额度变更单号 |
| success_time | string | 成功时间 |
| fail_time | string | 失败时间 |
| fail_reason | string | 失败原因BALANCE_NOT_ENOUGH | RECEIPT_NOT_EXIST_CLOSED | TIME_OUT_CLOSED 枚举值之一 |