CyberSource has a SOAP API. They don't officially support Ruby, but I don't see why it shouldn't work. Ruby has built-in support for SOAP. I knew absolutely nothing about SOAP or WSDL an hour ago, so I'm still trying to figure out how this works. SOAP is a protocol for calling web services and getting the responses from them. WSDL files describe the available web services. It looks like CyberSource publishes a new WSDL file for every API version that it supports. The latest at the moment seems to be 1.38. You can see a list of their WSDL files here. Let's try something:
require "soap/wsdlDriver"
wsdl_file = "https://ics2ws.ic3.com/commerce/1.x/" +
"transactionProcessor/CyberSourceTransaction_1.38.wsdl"
# Create a driver from the definition provided in wsdl_file.
driver = SOAP::WSDLDriverFactory.new(wsdl_file).create_rpc_driver
# See what's available in this driver.
puts driver.methods.sort.join("\n")
This prints out a long list of method names available on the driver that is created from the WSDL file. AFAICT, the only method you're supposed to call is runTransaction. I don't know how to call it yet.
0 comments:
Post a Comment