class SuningPay::Service
Constants
- CURRENCY_CNY
- PAYTYPE_IM
Public Class Methods
post_cancel(contract_no, tunnel_data = '', options = {})
click to toggle source
4.解约请求接口
# File lib/suning_pay/service.rb, line 53 def self.post_cancel(contract_no, tunnel_data = '', options = {}) input_hash = {:contractNo => contract_no, :tunnelData => Base64.urlsafe_encode64(tunnel_data)} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('cancel', post_params) msg end
post_pay(contract_no, out_order_no, order_type, order_amount, order_time, saler_merchant_no, goods_type, goods_name, pay_timeout, remark, tunnel_data = '', options = {:version => '2.0'})
click to toggle source
5.支付订单请求(默认使用2.0版本)
# File lib/suning_pay/service.rb, line 63 def self.post_pay(contract_no, out_order_no, order_type, order_amount, order_time, saler_merchant_no, goods_type, goods_name, pay_timeout, remark, tunnel_data = '', options = {:version => '2.0'}) input_hash = {:contractNo => contract_no, :outOrderNo => out_order_no, :orderType => order_type, :orderAmount => order_amount, :orderTime => order_time, :currency => CURRENCY_CNY, :salerMerchantNo => saler_merchant_no, :goodsType => goods_type, :goodsName => Base64.urlsafe_encode64(goods_name), :payTimeout => pay_timeout, :remark => Base64.urlsafe_encode64(remark), :tunnelData => Base64.urlsafe_encode64(tunnel_data)} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('pay', post_params) msg end
post_query_channel(product_code, options = {})
click to toggle source
7.支持银行查询接口
# File lib/suning_pay/service.rb, line 95 def self.post_query_channel(product_code, options = {}) input_hash = {:productCode => product_code} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('queryChannel', post_params) msg end
post_query_merchant_order(out_order_no, order_time, options = {:version => '1.2'})
click to toggle source
6.支付订单查询接口
# File lib/suning_pay/service.rb, line 84 def self.post_query_merchant_order(out_order_no, order_time, options = {:version => '1.2'}) input_hash = {:outOrderNo => out_order_no, :orderTime => order_time} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('queryMerchantOrder.do', post_params, SuningPay::API_CODE_Q_PAY) msg end
post_send_msg(bank_code, card_type, card_info, tunnel_data = '', options = {})
click to toggle source
1.签约请求_发送短信接口
# File lib/suning_pay/service.rb, line 8 def self.post_send_msg(bank_code, card_type, card_info, tunnel_data = '', options = {}) #加密cardinfo suning_pub_key = SuningPay.api_suning_public_key encr_msg = SuningPay::RSA.encrypt_msg(suning_pub_key, card_info) input_hash = {:bankCode => bank_code, :cardType => card_type, :cardInfo => encr_msg, :tunnelData => Base64.urlsafe_encode64(tunnel_data)} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('sendMsg', post_params) msg end
post_sign(bank_code, card_type, card_info, tunnel_data = '', options = {})
click to toggle source
3.签约请求接口(易付宝不发短信)
# File lib/suning_pay/service.rb, line 36 def self.post_sign(bank_code, card_type, card_info, tunnel_data = '', options = {}) #加密cardinfo suning_pub_key = SuningPay.api_suning_public_key encr_msg = SuningPay::RSA.encrypt_msg(suning_pub_key, card_info) input_hash = {:bankCode => bank_code, :cardType => card_type, :cardInfo => encr_msg, :tunnelData => Base64.urlsafe_encode64(tunnel_data)} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('sign', post_params) msg end
post_validate_sign(smg_code, serial_no, tunnel_data = '', options = {})
click to toggle source
2.签约请求_验证短信接口
# File lib/suning_pay/service.rb, line 25 def self.post_validate_sign(smg_code, serial_no, tunnel_data = '', options = {}) input_hash = {:smgCode => smg_code, :serialNo => serial_no, :tunnelData => Base64.urlsafe_encode64(tunnel_data)} post_params = SuningPay.client_options.merge(options).merge(input_hash) #调用查询接口 msg = SuningPay::Util.send_post('validateSign', post_params) msg end