Module: GpWebpay::WebServices

Extended by:
ActiveSupport::Concern
Defined in:
lib/gp_webpay/web_services.rb,
lib/gp_webpay/web_services/response.rb,
lib/gp_webpay/web_services/template.rb

Defined Under Namespace

Classes: Response, Template

Instance Method Summary collapse

Instance Method Details

#bank_idObject



63
64
65
# File 'lib/gp_webpay/web_services.rb', line 63

def bank_id
  "0100"
end

#capture_flagObject



67
68
69
# File 'lib/gp_webpay/web_services.rb', line 67

def capture_flag
  1
end

#message_id(type = "") ⇒ Object



59
60
61
# File 'lib/gp_webpay/web_services.rb', line 59

def message_id(type = "")
  "#{order_number}0100#{config.merchant_number}#{type}#{Time.now.to_i}"
end

#send_request(request_xml) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/gp_webpay/web_services.rb', line 11

def send_request(request_xml)
  GpWebpay.logger.debug "WS Raw request: #{request_xml}" if GpWebpay.config.debug
  request = Curl::Easy.new(config.web_services_url)
  request.headers["Content-Type"] = "text/xml;charset=UTF-8"
  request.http_post(request_xml)
  request
end

#ws_echoObject

Expected output <soapenv:Envelope xmlns:soapenv=“schemas.xmlsoap.org/soap/envelope/”>

<soapenv:Body>
  <ns2:echoResponse xmlns:ns2="http://gpe.cz/pay/pay-ws/core" xmlns="http://gpe.cz/pay/pay-ws/core/type"/>
</soapenv:Body>

</soapenv:Envelope>



27
28
29
# File 'lib/gp_webpay/web_services.rb', line 27

def ws_echo
  get_params_from(send_request(template.echo).body_str)
end

#ws_get_master_payment_statusObject



52
53
54
55
56
57
# File 'lib/gp_webpay/web_services.rb', line 52

def ws_get_master_payment_status
  attributes = request_attributes("getMasterPaymentStatus")
  raw_response = send_request(template.get_master_payment_status(attributes)).body_str
  GpWebpay.logger.debug "WS Raw response: #{raw_response}" if GpWebpay.config.debug
  get_params_from(raw_response)
end

#ws_get_payment_detailObject



38
39
40
41
42
43
# File 'lib/gp_webpay/web_services.rb', line 38

def ws_get_payment_detail
  attributes = request_attributes("getPaymentDetail")
  raw_response = send_request(template.get_payment_detail(attributes)).body_str
  GpWebpay.logger.debug "WS Raw response: #{raw_response}" if GpWebpay.config.debug
  get_params_from(raw_response)
end

#ws_get_payment_statusObject



45
46
47
48
49
50
# File 'lib/gp_webpay/web_services.rb', line 45

def ws_get_payment_status
  attributes = request_attributes("getPaymentStatus")
  raw_response = send_request(template.get_payment_status(attributes)).body_str
  GpWebpay.logger.debug "WS Raw response: #{raw_response}" if GpWebpay.config.debug
  get_params_from(raw_response)
end

#ws_process_regular_subscription_paymentObject



31
32
33
34
35
36
# File 'lib/gp_webpay/web_services.rb', line 31

def ws_process_regular_subscription_payment
  attributes = request_attributes("processRegularSubscriptionPayment")
  raw_response = send_request(template.process_regular_subscription_payment(attributes)).body_str
  GpWebpay.logger.debug "WS Raw response: #{raw_response}" if GpWebpay.config.debug
  get_params_from(raw_response)
end