getRefundByOutRefundNo
查询单笔退款(通过商户退款单号)
使用示例
ts
import type { Order } from 'nest-wxpay'
import { WechatService } from 'nest-wxpay'
import { Injectable, Param, Get } from '@nestjs/common'
@Injectable()
export class Controller {
constructor(private readonly wechatService: WechatService) {}
@Get('order/:id')
async order(@Param('id') id: string): Promise<Order> {
return this.wechatService.getRefundByOutRefundNo(id)
}
}
参数解析
id
商户订单号
返回参数
RefundGoodDetail
字段名 | 类型 | 是否必填 | 用途 |
---|---|---|---|
merchant_goods_id | string | 是 | 商户侧商品编号 |
wechatpay_goods_id | string | 否 | 微信支付商品编号 |
goods_name | string | 否 | 商品名称 |
unit_price | number | 是 | 商品单价,单位为分 |
refund_amount | number | 是 | 退款金额,单位为分 |
refund_quantity | number | 是 | 退货数量,单位为分 |
Amount
字段名 | 类型 | 是否必填 | 用途 |
---|---|---|---|
total | number | 是 | 订单金额,单位为分 |
refund | number | 是 | 退款金额,单位为分 |
from | FundsFromItem[] | 否 | 资金来源 |
payer_total | number | 是 | 用户支付金额,单位为分 |
payer_refund | number | 是 | 用户退款金额,单位为分 |
settlement_refund | number | 是 | 应结退款金额,单位为分 |
settlement_total | number | 是 | 应结订单金额,单位为分 |
discount_refund | number | 是 | 优惠退款金额,单位为分 |
currency | string | 是 | 货币类型 |
refund_fee | number | 否 | 退款费用,单位为分 |
Promotion
字段名 | 类型 | 是否必填 | 用途 |
---|---|---|---|
promotion_id | string | 是 | 优惠活动ID |
scope | 'GLOBAL' | 'SINGLE' | 是 |
type | 'COUPON' | 'DISCOUNT' | 是 |
amount | number | 是 | 优惠金额,单位为分 |
refund_amount | number | 是 | 优惠退款金额,单位为分 |
goods_detail | RefundGoodDetail[] | 否 | 商品退款详情 |
RefundResponse
字段名 | 类型 | 是否必填 | 用途 |
---|---|---|---|
refund_id | string | 是 | 微信退款单号 |
out_refund_no | string | 是 | 商户退款单号 |
transaction_id | string | 是 | 微信订单号 |
out_trade_no | string | 是 | 商户订单号 |
channel | 'ORIGINAL' | 'BALANCE' | 'OTHER_BALANCE' |
user_received_account | string | 是 | 用户收到的退款账户 |
success_time | string | 否 | 退款成功时间 |
create_time | string | 是 | 退款创建时间 |
status | 'SUCCESS' | 'CLOSED' | 'PROCESSING' |
funds_account | 'UNSETTLED' | 'AVAILABLE' | 'UNAVAILABLE' |
amount | Amount | 是 | 退款金额信息 |
promotion_detail | Promotion[] | 否 | 优惠退款详情 |