Class: Assist::PaymentInterface
- Inherits:
-
Object
- Object
- Assist::PaymentInterface
- Includes:
- CheckvalueGenerator, ParamsHelper
- Defined in:
- lib/assist/payment_interface.rb
Constant Summary collapse
- SERVICE_PATH =
"/pay/order.cfm".freeze
- PERMITTED_EXTRA_PARAMS =
%w( OrderCurrency Language OrderComment Lastname Firstname Middlename Email Address HomePhone WorkPhone MobilePhone Fax Country State City Zip MobileDevice Delay URL_RETURN URL_RETURN_OK URL_RETURN_NO CardPayment YMPayment WMPayment QIWIPayment QIWIMtsPayment QIWIMegafonPayment QIWIBeelinePayment QIWITele2Payment ).map(&normalize_block).freeze
- PAYMENT_METHODS_MAPPING =
{card: :cardpayment, ym: :ympayment, wm: :wmpayment, qiwi: :qiwipayment}.freeze
- QIWI_METHODS_MAPPING =
{ mts: :qiwimtspayment, megafon: :qiwimegafonpayment, beeline: :qiwibeelinepayment, tele2: :qiwitele2payment }.freeze
Constants included from CheckvalueGenerator
CheckvalueGenerator::PARAM_NAMES
Instance Method Summary collapse
-
#initialize(order_number, order_amount, extra_params = {}) ⇒ PaymentInterface
constructor
A new instance of PaymentInterface.
- #url ⇒ Object
Methods included from ParamsHelper
Constructor Details
#initialize(order_number, order_amount, extra_params = {}) ⇒ PaymentInterface
Returns a new instance of PaymentInterface.
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/assist/payment_interface.rb', line 28 def initialize(order_number, order_amount, extra_params = {}) extra_params = normalize_keys(extra_params) extra_params.keep_if { |key| PERMITTED_EXTRA_PARAMS.include?(key) } params.merge!(extra_params) params.merge!(ordernumber: order_number, orderamount: order_amount) return unless Assist.config.checkvalue? params[:checkvalue] = generate_checkvalue(params) end |
Instance Method Details
#url ⇒ Object
39 40 41 42 43 |
# File 'lib/assist/payment_interface.rb', line 39 def url uri = URI(Assist.config.endpoint + SERVICE_PATH) uri.query = URI.encode_www_form(params) uri.to_s end |