公司业务需求,做支付接口。
paypal
def paypal_url(return_url,cancel_url)
values = {
:business => 'saller_1248169040_biz@163.com',
:cmd => '_cart',
:upload => 1,
:return => return_url,
:invoice => id,
:receiver_email => user.email,
:cancel_return => cancel_url
}
values.merge!({
"amount_1" => money,
"item_name_1" => "despoit",
"item_number_1" => id,
"quantity_1" => 1
})
"https://www.sandbox.paypal.com/cgi-bin/webscr?" + values.to_query
end
支付宝
def alipay_url(r,n)
paygetway = 'https://www.alipay.com/cooperate/gateway.do?'
service = 'create_direct_pay_by_user'
sign_type = 'MD5'
out_trade_no = order_no
input_charset = 'gb2312'
#partnerId
partner = ''
#private key
key = ''
total_fee = money.to_s
payment_type = '1'
notify_url = n
return_url = r
parameter = {
"service" => service,
"out_trade_no" => out_trade_no,
"_input_charset" => input_charset,
"partner" => partner,
"total_fee" => total_fee,
"payment_type" => payment_type,
"body" => "#{bollar}Bollar",
#email
"seller_email" => "",
"subject" => "#{bollar}Bollar",
"return_url" => return_url,
"notify_url" => notify_url
}
values1 = parameter.keys.sort
values2 = {}
values1.each do |va|
values2[va] = parameter[va]
end
result_url = "&sign="+MD5.hexdigest(CGI.unescape(values2.to_query)+key) + "&sign_type=#{sign_type}"
paygetway + values2.to_query+result_url
end
在传入两个地址url 直接调用