Scenario 4: Ruby

From Intrannuity

Revision as of 20:27, 5 June 2008 by Nchandy (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

Download Source File

#Set up clients' settings
	config = Map.new
	config.put(SessionConnection::PROCESSOR_HOST, "http://server.ibillingclient.org/ibilling/xmlhttps")
	config.put("debug", true)
	#Login
	session = Session::login(2000, "welcome", config)
	#Create customer account
	customerAccount = session.createCustomerAccount()
	#code is optinal; if you specify the value, make sure the code is unique
	customerAccount.code = "rb.ca-4"
	customerAccount.merchantAccountCode = 2001
	customerAccount.firstName = "Mary"
	customerAccount.lastName = "Doe"
	customerAccount.type = CustomerAccountType::Female
	customerAccount.homePhone = "5469856876"
	customerAccount.email = "test@google.com"
	customerAccount.street1 = "203 16th Street"
	customerAccount.city = "Honolulu"
	customerAccount.state = "CA"
	customerAccount.zipCode = "30904"
	#Create payment plan
	paymentPlan = customerAccount.createPaymentPlan()
	#code is optinal; if you specify the value, make sure the code is unique
	paymentPlan.code = "rb.pp-4"
	#all amounts are in cents
	paymentPlan.amount = 3000
	#Item Codes must be setup in portal prior to being used
	paymentPlan.itemCode = "Membership"
	paymentPlan.type = PaymentPlanType::Complimentary
	#Billing Cycle codes must be setup in portal prior to being used
	paymentPlan.billingCycleCode = "M03"
	#Specify desired billing date; if nothing specified, next billing date of the selected cycle assumed.
	# paymentPlan.firstBillingDate = <Date>
	#Mark object for persistence
	session.save(customerAccount)
	#Synchronize changes with the server
	begin
		session.synchronize()
	rescue Exception => ex
		#Be sure to properly handle exception, this is just a sample solution
		puts(ex.message)
		return 
	end
	#Logout
	session.logout()


Download Source File