package com.sonic.lion.domain.input;

import lombok.Data;

/**
 * @Author code
 * @Description TODO
 * @Date 2024/9/19 14:38
 * @Version 1.0
 */
@Data
public class AirwallexCreatePaymentsInput {

    /**
     * 受益人ID
     */
    private String beneficiary_id;

    /**
     * 您可以使用的自由文本字段;可以填充付款可能需要的任何其他标识符
     */
    private String client_data;

    /**
     * 表示是否 PAYER / BENEFICIARY 将要承担支付费用，并影响受益人实际收到的金额
     */
    private String fee_paid_by = "BENEFICIARY";

    /**
     * 一组键值对，用于将您自己的数据与付款一起存储
     */
    private Object metadata;

    /**
     * 付款人
     */
    @Deprecated
    private Object payer;

    /**
     * 付款人ID 和付款人二选一
     */
    private String payer_id;

    /**
     * 付款金额
     */
    private String payment_amount;

    /**
     * 付款货币，即收款人收到的货币（3 个字母的 ISO-4217 代码）
     */
    private String payment_currency;

    /**
     * 付款日期
     */
    private String payment_date;

    /**
     * 付款方式，即 SWIFT、LOCAL
     */
    private String payment_method = "LOCAL";

    /**
     * 提供 valid quote_id 以在报价 client_rate 中提供的位置执行转换
     */
    private String quote_id;

    /**
     * 付款指示的原因
     * 应为以下值之一：audio_visual_services, bill_payment, business_expenses, construction, donation_charitable_contribution, education_training, family_support, freight,
     * goods_purchased, investment_capital, investment_proceeds, living_expenses, loan_credit_repayment, medical_services, pension, personal_remittance, professional_business_services,
     * real_estate, taxes, technical_services, transfer_to_own_account, travel, wages_salary, other_services
     */
    private String  reason;

    /**
     * 用户指定的参考，将在与收款人银行的付款交易中向收款人显示
     */
    private String reference;

    /**
     * UUID
     */
    private String request_id;

    /**
     * 源金额
     */
    private String source_amount;

    /**
     * 源货币，即付款人用于付款的货币（3 个字母的 ISO-4217 代码）
     */
    private String source_currency;

    /**
     * （仅适用于 SWIFT 付款），指定谁应承担 SWIFT 费用，（ SHARED 默认）或 PAYER
     */
    private String swift_charge_option;

}
