class WorldnetTps::Gateway

Constants

PRODUCTION_ENVS

Attributes

currency[R]
environment[R]
gateway[R]
shared_secret[R]
terminal_id[R]

Public Class Methods

new(attributes) click to toggle source
# File lib/worldnet_tps/gateway.rb, line 14
def initialize(attributes)
  @gateway = attributes.fetch(:gateway)
  @environment = attributes.fetch(:environment)
  @terminal_id = attributes.fetch(:terminal_id)
  @shared_secret = attributes.fetch(:shared_secret)
  @currency = attributes.fetch(:currency)
end

Public Instance Methods

endpoint() click to toggle source
# File lib/worldnet_tps/gateway.rb, line 50
def endpoint
  @endpoint ||= begin
    domain = case gateway.to_s.downcase
      when 'cashflows'
        'cashflows.worldnettps.com'
      else
        'payments.worldnettps.com'
    end
    domain = "test#{domain}" if is_test?
    "https://#{domain}"
  end
end
is_live?() click to toggle source
# File lib/worldnet_tps/gateway.rb, line 26
def is_live?
  PRODUCTION_ENVS.include? self.environment
end
is_test?() click to toggle source
# File lib/worldnet_tps/gateway.rb, line 22
def is_test?
  !is_live?
end
payment(attributes = {}) click to toggle source
# File lib/worldnet_tps/gateway.rb, line 46
def payment(attributes = {})
  Request::Payment.new(self, attributes)
end
refund(attributes = {}) click to toggle source
# File lib/worldnet_tps/gateway.rb, line 42
def refund(attributes = {})
  Request::Refund.new(self, attributes)
end
secure_card_registration(attributes = {}) click to toggle source
# File lib/worldnet_tps/gateway.rb, line 38
def secure_card_registration(attributes = {})
  Request::SecureCard::Registration.new(self, attributes)
end
secure_card_removal(merchant_ref, card_reference) click to toggle source
# File lib/worldnet_tps/gateway.rb, line 30
def secure_card_removal(merchant_ref, card_reference)
  Request::SecureCard::Removal.new(self, merchant_ref, card_reference)
end
ws_url() click to toggle source

todo: validate agains xsd

# File lib/worldnet_tps/gateway.rb, line 66
def ws_url
  "#{self.endpoint}/merchant/xmlpayment"
end