subscription/includes/interfaces/interface-yoone-payment-gat...

101 lines
1.8 KiB
PHP

<?php
/**
* 支付网关接口
*
* 定义支付网关必须实现的方法
*/
if (!defined('ABSPATH')) {
exit;
}
/**
* 支付网关接口
*/
interface Interface_Yoone_Payment_Gateway {
/**
* 处理支付
*/
public function process_payment($order_id);
/**
* 处理订阅支付
*/
public function process_subscription_payment($subscription_id, $amount);
/**
* 创建支付令牌
*/
public function create_payment_token($payment_data);
/**
* 删除支付令牌
*/
public function delete_payment_token($token_id);
/**
* 验证支付令牌
*/
public function validate_payment_token($token_id);
/**
* 处理退款
*/
public function process_refund($order_id, $amount = null, $reason = '');
/**
* 预授权
*/
public function process_preauth($order_id, $amount);
/**
* 完成预授权
*/
public function complete_preauth($transaction_id, $amount);
/**
* 获取支付方式标题
*/
public function get_title();
/**
* 获取支付方式描述
*/
public function get_description();
/**
* 检查是否支持功能
*/
public function supports($feature);
/**
* 检查是否可用
*/
public function is_available();
/**
* 获取支付字段
*/
public function payment_fields();
/**
* 验证支付字段
*/
public function validate_fields();
/**
* 处理管理选项
*/
public function process_admin_options();
/**
* 获取网关设置
*/
public function get_option($key, $empty_value = null);
/**
* 设置网关选项
*/
public function update_option($key, $value);
}