创建退款请求
退款请求是 BACEN 定义的 MED 中的另一项功能。
其主要目的是便于退还已完成的 PIX 交易。退款请求可因操作失误或违规而产生。在后一种情况下,需存在一份针对某笔 PIX 交易的违规报告,且已处于关闭和已接受状态。
注意
为了理解退款请求的流程,需要了解创建退款的间接参与者可以使用哪些 ENDPOINTS。
当间接参与者创建退款请求时,如果请求是错误生成的,可以(在必要时)取消该请求。
当间接参与者收到退款请求时,必须通过告知请求分析结果来响应。
上述两种流程将在后续章节中描述。
还需注意,如果间接参与者发起请求,则其争议另一个参与者。在相反的流程中,间接参与者是被争议方。
重要
巴西中央银行规定,间接参与者收到退款请求后 1 天内,退款请求必须被关闭。
如果间接参与者出现延误,QI Tech 将以 totally_accepted 状态关闭退款请求,以避免机构受到巴西中央银行的处罚。
请求
ENDPOINT
/pix/refund_requestMÉTODO
POST请求体
{
"pix_transfer_key": "a39mn71j-1dc7-4df0-8472-233624706e08",
"request_control_key":"df3ae07e-1dc7-4df0-8472-233624706e08",
"amount": 200.00,
"refund_request_details": "transação fraudada",
"refund_request_type": "fraud"
}
请求体参数
| 字段 | 类型 | 描述 | 字符数 |
|---|---|---|---|
pix_transfer_key * | string | PIX 交易唯一标识符。 | 36 |
request_control_key * | uuidv4 | 用于查询所发起请求的 UUID4。 | 36 |
amount | float | 退款金额。若未提供,将使用原始交易金额。 | 19 |
refund_request_details | string | 关于将创建的退款请求的详情。 | <= 2000 |
refund_request_type * | enum | 可以是 (fraud/operational_flaw)。 | refund_request_type 枚举值 |
响应
STATUS
200响应体
{
"refund_request_key": "47633091-7d44-4d10-9d00-1f937104e537",
"pix_transfer_key": "2bcbfd65-8660-4cb0-8ae4-4c4b327b32be",
"end_to_end_id": "E73856642202407011350E8cnA3Ae7r3",
"requested_amount": 200.00,
"refund_request_status": "open",
"refund_request_type": "operational_flaw",
"infraction_report_key": null,
"refund_request_details": "Foi identificada uma fraude na transação.",
"requesting_participant": "73856642",
"contested_participant": "99999999",
"analysis_result": null,
"analysis_details": null,
"reject_reason": null,
"refund_transfer_key": null,
"refunded_amount": 0.00,
"refund_request_direction": "outgoing",
"created_at": "2024-07-01T13:50:30Z"
}
信息
如果字段 "refund_request_type" 为 "fraud",QI Tech 将在响应中告知已关闭并接受的 infraction_report_key。
响应体参数
| 字段 | 类型 | 描述 | 字符数 |
|---|---|---|---|
pix_transfer_key* | string | PIX 交易唯一标识符。 | 36 |
refund_request_key* | string | 退款唯一标识符。 | 36 |
infraction_report_key* | string | 与退款相关的违规唯一标识符。仅当类型为欺诈时。 | 36 |
refund_request_type | enum | 退款请求类型。 | refund_request_type 枚举值 |
requested_amount* | float | 退款金额。 | - |
refund_request_status* | enum | 状态。 | refund_request_status 枚举值 |
contested_participant* | string | 被贷记参与者(被争议方)的 ISPB。 | 8 |
requesting_participant* | string | 被借记参与者(请求方)的 ISPB。 | 8 |
refund_request_details* | string | 退款详情。 | - |
analysis_result* | enum | 退款关闭分析结果。 | analysis_result 枚举值 |
analysis_details* | string | 退款关闭分析详情。 | - |
reject_reason* | string | 退款被拒绝的原因(以 REJECTED 关闭时)。 | reject_reason 枚举值 |
refund_transfer_key* | string | 退款交易的 pix_transfer_key(接受关闭时)。 | - |
refunded_amount* | float | 退款交易中已退还的金额。 | - |
refund_request_direction* | string | 退款请求方向。 | refund_request_direction 枚举值 |
created_at * | string | 退款请求创建日期。 | 24 |
refund_request_status 枚举值
| 字段 | 描述 |
|---|---|
open | 退款请求已创建并在 BACEN 中开放。 |
cancelled | 退款请求在 BACEN 中已取消。 |
closed | 退款请求在 BACEN 中已关闭。 |
refund_request_type 枚举值
| 字段 | 描述 |
|---|---|
fraud | 退款请求源于欺诈行为。 |
operational_flaw | 退款请求源于内部错误。 |
analysis_result 枚举值
| 字段 | 描述 |
|---|---|
totally_accepted | 退款请求已完全接受。 |
partially_accepted | 退款请求已部分接受。 |
rejected | 退款请求已被拒绝。 |
reject_reason 枚举值
| 字段 | 描述 |
|---|---|
no_balance | 账户余额不足以进行退款。 |
account_closure | 账户已关闭,因此无法进行退款。 |
other | 其他原因。 |
refund_request_direction 枚举值
| 字段 | 描述 |
|---|---|
outgoing | 参与者是退款请求的发起方。 |
incoming | 参与者是退款请求的目标方。 |