package com.jeesharp.business.modules.pay.api;

import com.jeesharp.business.modules.pay.subsidy.dto.PaySubsidyCancelRequestDTO;
import com.jeesharp.business.modules.pay.subsidy.dto.PaySubsidyCreateRequestDTO;
import com.jeesharp.business.modules.pay.subsidy.dto.PaySubsidyResultDTO;
import com.jeesharp.business.modules.pay.subsidy.dto.PaySubsidyReturnRequestDTO;

/**
 * 微信电商收付通补差跨模块 API。
 *
 * @author jeesharp
 * @since 2026-06-12
 */
public interface PaySubsidyChannelApi {

    PaySubsidyResultDTO createSubsidy(PaySubsidyCreateRequestDTO request);

    PaySubsidyResultDTO querySubsidy(String platformTenantId, String subMchId, String transactionId);

    PaySubsidyResultDTO returnSubsidy(PaySubsidyReturnRequestDTO request);

    PaySubsidyResultDTO cancelSubsidy(PaySubsidyCancelRequestDTO request);
}
