module Bestpay::Notify::Web

Constants

NOTIFY_KEYS

Public Class Methods

successful?(params,key) click to toggle source
# File lib/bestpay/notify.rb, line 16
def self.successful?(params,key)
  valid?(params, key) and (params['RETNCODE'] || params[:RETNCODE]) == '0000'
end
valid?(params,key) click to toggle source
# File lib/bestpay/notify.rb, line 5
def self.valid?(params,key)
  params = Utils.stringify_hash(params).merge('KEY' => key)

  #这个协议真是傻的没边了。
  params['ORDERID'] = params.delete('ORDERSEQ')
  params['PAYMENT'] = params.delete('ORDERAMOUNT')
  params['PAYDATE'] = params.delete('TRANDATE')

  Utils.build_mac(params,NOTIFY_KEYS) == params['SIGN']
end