Scenario 9: Cold Fusion

From Intrannuity

Jump to: navigation, search

Download Source File

<!---// Create Session Object --->
	<cfset session = CreateObject( 'component', 'Session' )>
	<!---// Login --->
	<cfset session.login(2000, "password", "http://server.ibillingclient.org/ibilling/xmlhttps")>
	<!---// Find customer account --->
	<cfset customerAccount  = session.loadCustomerAccount("cf.ca-2")>
	<!---// Create invoice1 --->
	<cfset invoice1  = customerAccount.createRevenueTransaction()>
	<!---// code is optinal; if you specify the value, make sure the code is unique --->
	<cfset invoice1.setCode("cf.rt-9-1")>
	<!---// all amounts are in cents --->
	<cfset invoice1.setAmount(2000)>
	<!---// Item Codes must be setup in portal prior to being used --->
	<cfset invoice1.setItemCode("T-Shirt")>
	<!---// Type of transaction --->
	<cfset invoice1.setAccountActivityType(session.AccountActivityType().Invoice())>
	<!---// Create payment1 --->
	<cfset payment1  = customerAccount.createAssetTransaction()>
	<!---// code is optinal; if you specify the value, make sure the code is unique --->
	<cfset payment1.setCode("cf.at-9-1")>
	<!---// all amounts are in cents --->
	<cfset payment1.setAmount(2000)>
	<cfset payment1.setTransactionType(session.AssetTransactionType().Visa())>
	<cfset payment1.setAccountActivityType(session.AccountActivityType().Payment())>
	<!---// Credit card number to charge --->
	<cfset payment1.setAccountNumber("4111111111111111")>
	<!---// Credit card expiration date --->
	<cfset payment1.setAccessory("1209")>
	<!---// Add processing specific info (for better qualification rates) --->
	<cfset captureInfo1  = payment1.getCaptureInfo()>
	<cfset captureInfo1.setHolderName("John Smith")>
	<cfset captureInfo1.setCity("Columbus")>
	<cfset captureInfo1.setState("CA")>
	<cfset captureInfo1.setStreet("233 12th Street")>
	<cfset captureInfo1.setZipCode("31909")>
	<cfset captureInfo1.setPhone("2129856472")>
	<cfset captureInfo1.setEmail("test@yahoo.com")>
	<cfset captureInfo1.setCvv2("999")>
	<!---// Create invoice2 --->
	<cfset invoice2  = customerAccount.createRevenueTransaction()>
	<!---// code is optinal; if you specify the value, make sure the code is unique --->
	<cfset invoice2.setCode("cf.rt-9-2")>
	<!---// all amounts are in cents --->
	<cfset invoice2.setAmount(1500)>
	<!---// Item Codes must be setup in portal prior to being used --->
	<cfset invoice2.setItemCode("T-Shirt")>
	<!---// Type of transaction --->
	<cfset invoice2.setAccountActivityType(session.AccountActivityType().Invoice())>
	<!---// Create payment2 --->
	<cfset payment2  = customerAccount.createAssetTransaction()>
	<!---// code is optinal; if you specify the value, make sure the code is unique --->
	<cfset payment2.setCode("cf.at-9-2")>
	<!---// /all amounts are in cents --->
	<cfset payment2.setAmount(1500)>
	<cfset payment2.setTransactionType(session.AssetTransactionType().Visa())>
	<cfset payment2.setAccountActivityType(session.AccountActivityType().Payment())>
	<!---// Credit card number to charge --->
	<cfset payment2.setAccountNumber("4111111111111111")>
	<!---// Credit card expiration date --->
	<cfset payment2.setAccessory("1209")>
	<!---// Add processing specific info (for better qualification rates) --->
	<cfset captureInfo2  = payment2.getCaptureInfo()>
	<cfset captureInfo2.setHolderName("John Smith")>
	<cfset captureInfo2.setCity("Columbus")>
	<cfset captureInfo2.setState("CA")>
	<cfset captureInfo2.setStreet("233 12th Street")>
	<cfset captureInfo2.setZipCode("31909")>
	<cfset captureInfo2.setPhone("2129856472")>
	<cfset captureInfo2.setEmail("test@yahoo.com")>
	<cfset captureInfo2.setCvv2("999")>
	<!---// Mark object for persistence --->
	<cfset session.save(customerAccount)>
	<!---// Synchronize changes with the server --->
	<cftry>
		<cfset session.synchronize()>
		<cfcatch type="Exception">
			<cfoutput>
			#cfcatch.message#
			</cfoutput>
		</cfcatch>
	</cftry>
	<!---// Logout --->
	<cfset session.logout()>

Download Source File

Personal tools