Scenario 9: CFScript

From Intrannuity

Jump to: navigation, search

Download Source File

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

Download Source File

Personal tools