module JytPay::Api::QuickPay
Constants
- QUICK_PAY_TRAN_CODE
Public Instance Methods
quick_pay(flow_id, money, bank_business_name, card_id, true_name, identity_id, phone)
click to toggle source
单笔同步代付
@param flow_id [ String ] 订单号 @param money [ Float ] 代付金额(精确到2位) @param bank_business_name [ String ] 银行卡的中文名(在银行卡认证后有返回) @param card_id [ String ] 银行卡号 @param true_name [ String ] 真实姓名 @param identity_id [ String ] 身份证 @param phone [ String ] 银行卡预留手机号
@return [ Hash ] 结果集
* :result [String] 是否成功,`F`, `S`, `P` * :msg [String] 结果说明 * :ret_code [String] 结果 CODE * :flow_id [String] 订单号 * :request_body [String] 请求报文 * :response_body [String] 响应报文
# File lib/jyt_pay/api/quick_pay.rb, line 27 def quick_pay(flow_id, money, bank_business_name, card_id, true_name, identity_id, phone) params = { mer_viral_acct: "", agrt_no: "", bank_name: bank_business_name, account_no: card_id, account_name: true_name, account_type: "00", #对私 branch_bank_province: "", branch_bank_city: "", branch_bank_name: "", tran_amt: money, #两位小数 currency: "CNY", bsn_code: "11203", #14900其他费用 cert_type: "01", cert_no: identity_id, mobile: phone, remark: "", reserve: "", } xml_str = JytPay::Xml.generate(@merchant_id, QUICK_PAY_TRAN_CODE, params, flow_id) response = Http.post(@merchant_id, @uris[:pay], QUICK_PAY_TRAN_CODE, xml_str, @rsa_private_key, @rsa_jyt_public_key) res = { result: 'P', # 默认 pending msg: response[:head][:resp_desc], ret_code: response[:head][:resp_code], flow_id: flow_id, vendor_order_id: nil, # jyt 不会返回他们的订单号 request_body: xml_str, response_body: response[:xml_str], } res[:result] = Http::RetCode.pay_result(response[:head][:resp_code], response[:body][:tran_state]) res end