puzhibing
2024-02-05 640ff18d2d7f4be02ddb7f8f75e899f05545eb98
cloud-server-management/src/main/java/com/dsh/course/util/midtrans/PaymentNotice.java
New file
@@ -0,0 +1,104 @@
package com.dsh.course.util.midtrans;
import lombok.Data;
@Data
public class PaymentNotice {
    /**
     * 交易时间
     */
    private String transaction_time;
    /**
     * 交易状态
     * capture   ✅   交易成功,卡内余额获取成功。
     * 如果您不采取任何行动,交易将在当天或次日或您与合作银行约定的结算时间内成功结算。然后交易状态变为 结算。
     * 假设付款成功是安全的。
     * settlement   ✅   交易结算成功。资金已记入您的账户。
     * pending   🕒   交易已创建并等待客户在直接借记、银行转账、电子货币等支付提供商处付款。对于卡支付方式:等待客户完成(和发卡机构验证)3DS/OTP 流程。
     * deny   ❌   用于支付的凭据被支付提供商或 Midtrans 欺诈检测系统 (FDS) 拒绝。
     * 要了解拒绝交易的原因和详细信息,请参阅status_message响应中的 。
     * cancel   ❌   交易被取消。可以由商家触发。您可以在以下情况下
     * 触发取消
     * 状态: 1. 如果您在捕获状态后取消交易。
     * 2. 如果您在Challenge状态后拒绝交易。如果您未能在一天内
     * 回复具有挑战状态的交易,则 Midtrans 将自动取消该交易。
     * expire   ❌   由于付款延迟,交易无法处理。
     * refund   ↩️   交易被标记为退款。退款状态可由商户触发。
     * partial_refund   ↩️   交易标记为部分退款(如果您选择的退款金额小于支付金额)。退款状态可由商户触发。
     * authorize   🕒   只有当您使用卡交易的预授权功能时才特别可用(默认情况下您不会拥有的高级功能,因此在大多数情况下可以安全地忽略)。交易成功,卡内余额预留(授权)成功。您可以稍后执行 API“捕获”将其更改为capture,或者如果不采取任何操作将自动释放。根据您的业务用例,您可以假定authorize状态为成功交易。
     */
    private String transaction_status;
    /**
     * 交易id
     */
    private String transaction_id;
    /**
     * 状态说明
     */
    private String status_message;
    /**
     * 状态code
     */
    private String status_code;
    /**
     * 签名
     */
    private String signature_key;
    /**
     * 支付类型
     */
    private String payment_type;
    /**
     * 商户订单id
     */
    private String order_id;
    /**
     * 商户id
     */
    private String merchant_id;
    /**
     * 支付卡号
     */
    private String masked_card;
    /**
     * 支付金额
     */
    private String gross_amount;
    /**
     * 欺诈状况
     * accept   ✅   交易可以安全进行。它不被视为欺诈。
     * deny   ❌   交易被视为欺诈。它被 Midtrans FDS 拒绝。FDS拒绝交易通常不会导致transaction_status:pending,capture,settlement。
     * challenge   ⚠️   交易被标记为潜在欺诈,但无法准确确定。
     * 您可以从 MAP 帐户或使用Approve Transaction API或Deny Transaction API接受或拒绝交易。如果不采取任何行动,交易将被自动拒绝。
     */
    private String fraud_status;
    /**
     * eci
     */
    private String eci;
    /**
     *
     */
    private String currency;
    /**
     *
     */
    private String channel_response_message;
    /**
     *
     */
    private String channel_response_code;
    /**
     * card_type
     */
    private String card_type;
    /**
     *
     */
    private String bank;
    /**
     *
     */
    private String approval_code;
}