ibilling.client
Class CustomerAccount

java.lang.Object
  extended by ibilling.client.ClientObject
      extended by ibilling.client.CustomerAccount
All Implemented Interfaces:
java.io.Serializable

public class CustomerAccount
extends ClientObject

Represents a party (person or organization) making/responsible for invoicing, payments, plans in the system.

Since:
1.0
See Also:
Serialized Form

Field Summary
private  java.util.List<AssetTransaction> assetTransactions
          List of AssetTransctions associated with this CustomerAccount.
private  java.lang.Integer balance
          Current balance on the account.
private  java.lang.String beneficiaryInfo
          Buyer's information (if somebody else is responsible for payments).
private  java.util.Date birthDate
          If person - date of birth, not used otherwise.
private  java.lang.String cellPhone
          Cell phone number.
private  java.lang.String city
          City of the address.
private  java.lang.String countryType
          Billing country
private  java.lang.String customerAccountGroupCode
          Predefined classification code for this account (to simplify searching/reporting).
private  java.lang.String email
          Contact e-mail.
private  java.lang.String firstName
          If person - first name, not used otherwise.
private  java.lang.String homePhone
          Home phone number.
private  java.lang.Boolean isActive
          If false, account has no active payment option or payment plans.
private  java.lang.Boolean isVerified
          Not Used.
private  java.lang.String lastName
          If person - last name, if organization - organization's name.
private  java.util.Date lastUpdateDate
          Last time the account was updated.
private  java.lang.String middleName
          If person - middle name, not used otherwise.
private  java.lang.String notes
          Any notes associated with the account.
private  java.util.List<PaymentOption> paymentOptions
          List of payment options associated with this CustomerAccount.
private  java.util.List<PaymentPlan> paymentPlans
          List of PaymentPlans associated with this CustomerAccount.
private  java.util.List<RevenueTransaction> revenueTransactions
          List of RevenueTransactions associated with this CustomerAccount.
private static long serialVersionUID
          The Constant serialVersionUID.
private  java.lang.String state
          State of the address.
private  java.lang.String street1
          Street1 of the address.
private  java.lang.String street2
          Street2 of the address.
private  java.lang.String suffix
          If person - suffix, not used otherwise.
private  java.lang.String title
          If person - title, not used otherwise.
private  java.lang.String type
          Type of the account.
private  java.lang.String workPhone
          Work phone number/contact number if organization.
private  java.lang.String zipCode
          Zip code of the address.
 
Constructor Summary
CustomerAccount()
          Instantiates a new customer account.
CustomerAccount(java.lang.String code, java.util.Date createDate, java.lang.String firstName, java.lang.String lastName, java.lang.String middleName, java.lang.String title, java.lang.String suffix, java.lang.String type, java.lang.Boolean isActive, java.lang.String homePhone, java.lang.String workPhone, java.lang.String cellPhone, java.lang.String email, java.lang.String street1, java.lang.String street2, java.lang.String city, java.lang.String state, java.lang.String zipCode, java.lang.Integer balance, java.lang.String beneficiaryInfo, java.lang.Integer merchantAccountCode, java.lang.String customerAccountGroupCode, java.lang.Boolean isVerified, java.lang.String notes, java.util.Date lastUpdateDate, java.util.Date birthDate, java.lang.Long id)
          Instantiates a new customer account.
 
Method Summary
 void addAssetTransaction(AssetTransaction assetTransaction)
          Adds the asset transaction.
 void addPaymentOption(PaymentOption paymentOption)
          Adds the payment option.
 void addPaymentPlan(PaymentPlan paymentPlan)
          Adds the payment plan.
 void addRevenueTransaction(RevenueTransaction revenueTransaction)
          Adds the revenue transaction.
 void clear()
          Clears all associated collections of objects: PaymentOptions, RevenueTransactions, CaptureInfo, AssetTransactions and PaymentPlans.
 AssetTransaction createAllowance(java.lang.String code, java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode)
          createAllowance method.
 AssetTransaction createAllowanceRefund(java.lang.String code, java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String accountNumber, java.lang.String accessory)
          createAllowanceRefund method.
 AssetTransaction createAssetTransaction()
          createAssetTransaction method.
 AssetTransaction createAssetTransaction(boolean addToCustomerAccount)
          createAssetTransaction method.
 AssetTransaction createAssetTransactionExtended(java.lang.String accountActivityType, java.lang.String code, java.lang.Integer amount, java.lang.String accountNumber, java.lang.String accessory)
          createAssetTransaction method.
 PaymentOption createBankAccount(java.lang.String code, java.lang.String holderName, java.lang.String bankNumber, java.lang.String routingNumber, boolean isSaving)
          createBankAccount method.
 PaymentOption createBankAccountExtended(java.lang.String code, java.lang.String holderName, java.lang.String bankNumber, java.lang.String routingNumber, java.lang.String street1, java.lang.String street2, java.lang.String city, java.lang.String state, java.lang.String zipCode, boolean isSaving)
          createBankAccount method.
 AssetTransaction createCashPayment(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String code)
          createCashPayment method.
 AssetTransaction createCashRefund(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String accountNumber, java.lang.String accessory, java.lang.String code)
          createCashRefund method.
 AssetTransaction createCheckPayment(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String checkNumber, java.lang.String code)
          createCheckPayment method.
 RevenueTransaction createCredit()
          createCredit method.
 PaymentOption createCreditCard(java.lang.String code, java.lang.String holderName, java.lang.String creditCardNumber, java.lang.String expirationDate, java.lang.String type)
          createCreditCard method.
 PaymentOption createCreditCardExtended(java.lang.String code, java.lang.String holderName, java.lang.String creditCardNumber, java.lang.String expirationDate, java.lang.String type, java.lang.String street1, java.lang.String street2, java.lang.String city, java.lang.String state, java.lang.String zipCode)
          createCreditCard method.
 AssetTransaction createCreditCardPayment(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String creditCardNumber, java.lang.String expirationDate, java.lang.String transactionType, java.lang.String holderName, java.lang.String city, java.lang.String state, java.lang.String street1, java.lang.String street2, java.lang.String zipCode, java.lang.String phone, java.lang.String email, java.lang.String cvv2, java.lang.String code)
          createCreditCardPayment method.
 AssetTransaction createCreditCardRefund(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.lang.String creditCardNumber, java.lang.String expirationDate, java.lang.String transactionType, java.lang.String holderName, java.lang.String city, java.lang.String state, java.lang.String street1, java.lang.String street2, java.lang.String zipCode, java.lang.String phone, java.lang.String email, java.lang.String cvv2, java.lang.String code)
          createCredit�ardRefund method.
 RevenueTransaction createCreditExtended(java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.util.Date dueDate, java.lang.Integer taxAmount, java.lang.String itemCode, java.lang.String code)
          Creates the credit extended.
 RevenueTransaction createInvoice(java.lang.String type, java.lang.Integer amount, java.lang.String note, java.lang.String creatorCode, java.lang.String sellerCode, java.lang.String shiftCode, java.lang.String terminalCode, java.util.Date dueDate, java.lang.Integer taxAmount, java.lang.String itemCode, PaymentOption paymentOption)
          createInvoice method.
 PaymentOption createPaymentOption()
          Creates PaymentOption and associates it with this CustomerAccount.
 PaymentOption createPaymentOption(boolean addToCustomerAccount)
          Creates PaymentOption.
 PaymentOption createPaymentOptionExtended(java.lang.String street1, java.lang.String street2, java.lang.String city, java.lang.String state, java.lang.String zipCode)
          createPaymentOption method.
 PaymentPlan createPaymentPlan()
          createPaymentPlan method.
 PaymentPlan createPaymentPlan(boolean addToCustomerAccount)
          createPaymentPlan method.
 PaymentPlan createPaymentPlanBasic(java.lang.String code, java.lang.Integer amount, java.lang.String billingCycleCode, java.util.Date firstBillingDate, java.lang.Integer length, java.lang.String type)
          createPaymentPlan method.
 PaymentPlan createPaymentPlanExtended(java.lang.String code, java.lang.String sellerCode, java.lang.Integer amount, java.lang.String groupCode1, java.lang.String groupCode2, java.lang.String groupCode3, java.lang.String groupCode4, java.lang.String groupCode5, java.lang.String groupCode6, java.lang.String groupCode7, java.lang.String groupCode8, java.lang.String itemCode, java.lang.String taxCode, PaymentOption paymentOption, java.lang.Integer length, java.lang.String billingCycleCode, java.util.Date firstBillingDate, java.lang.String type)
          createPaymentPlan method.
 AssetTransaction createRefund()
          Creates the refund.
 RevenueTransaction createRevenueTransaction()
          createRevenueTransaction method.
 RevenueTransaction createRevenueTransaction(boolean addToCustomerAccount)
          createRevenueTransaction method.
 RevenueTransaction createRevenueTransactionExtended(java.lang.String accountActivityType, java.lang.String code, java.lang.Integer amount, java.lang.Integer taxAmount, java.lang.Boolean isComplimantary)
          createRevenueTransaction method.
 java.util.List<AssetTransaction> getAssetTransactions()
          Gets the asset transactions.
 java.lang.Integer getBalance()
          Gets the balance.
 java.lang.String getBeneficiaryInfo()
          Gets the beneficiary info.
 java.util.Date getBirthDate()
          Gets the birth date.
 java.lang.String getCellPhone()
          Gets the cell phone.
 java.lang.String getCity()
          Gets the city.
 java.lang.String getCountryType()
          Gets the country type.
 java.lang.String getCustomerAccountGroupCode()
          Gets the customer account group code.
 java.lang.String getEmail()
          Gets the email.
 java.lang.String getFirstName()
          Gets the first name.
 java.lang.String getHomePhone()
          Gets the home phone.
 java.lang.Boolean getIsActive()
          Gets the is active.
 java.lang.Boolean getIsVerified()
          Gets the is verified.
 java.lang.String getLastName()
          Gets the last name.
 java.util.Date getLastUpdateDate()
          Gets the last update date.
 java.lang.String getMiddleName()
          Gets the middle name.
 java.lang.String getName()
          Gets the name.
 java.lang.String getNotes()
          Gets the notes.
 java.util.List<PaymentOption> getPaymentOptions()
          Gets the payment options.
 java.util.List<PaymentPlan> getPaymentPlans()
          Gets the payment plans.
 java.util.List<RevenueTransaction> getRevenueTransactions()
          Gets the revenue transactions.
 java.lang.String getState()
          Gets the state.
 java.lang.String getStreet1()
          Gets the street1.
 java.lang.String getStreet2()
          Gets the street2.
 java.lang.String getSuffix()
          Gets the suffix.
 java.lang.String getTitle()
          Gets the title.
 java.lang.String getType()
          Gets the type.
 java.lang.String getWorkPhone()
          Gets the work phone.
 java.lang.String getZipCode()
          Gets the zip code.
 void removeAssetTransaction(AssetTransaction assetTransaction)
          Removes the asset transaction.
 void removePaymentOption(PaymentOption paymentOption)
          Removes the payment option.
 void removePaymentPlan(PaymentPlan paymentPlan)
          Removes the payment plan.
 void removeRevenueTransaction(RevenueTransaction revenueTransaction)
          Removes the revenue transaction.
 RevenueTransaction reverseInvoice(RevenueTransaction revenueTransaction)
          voidInvoice method.
 RevenueTransaction reverseInvoiceExtended(RevenueTransaction revenueTransaction, java.lang.String code, java.lang.String note)
          voidInvoice method.
 AssetTransaction reversePayment(AssetTransaction assetTransaction)
          voidPayment method.
 AssetTransaction reversePaymentExtended(AssetTransaction assetTransaction, java.lang.String code, java.lang.String note)
          Reverse payment extended.
(package private)  void setBalance(java.lang.Integer balance)
          Set a value to balance.
 void setBeneficiaryInfo(java.lang.String beneficiaryInfo)
          Set a value to beneficiaryInfo.
 void setBirthDate(java.util.Date birthDate)
          Set a value to birthDate.
 void setCellPhone(java.lang.String cellPhone)
          Set a value to cellPhone.
 void setCity(java.lang.String city)
          Set a value to city.
 void setCountryType(java.lang.String countryType)
          Sets the country type.
 void setCustomerAccountGroupCode(java.lang.String customerAccountGroupCode)
          Set a value to merchantAccountCode.
 void setEmail(java.lang.String email)
          Set a value to email.
 void setFirstName(java.lang.String firstName)
          Sets the first name.
 void setHomePhone(java.lang.String homePhone)
          Set a value to homePhone.
 void setIsActive(java.lang.Boolean isActive)
          Set a value to isActive.
(package private)  void setIsVerified(java.lang.Boolean isVerified)
           
 void setLastName(java.lang.String lastName)
          Sets the last name.
(package private)  void setLastUpdateDate(java.util.Date lastUpdateDate)
           
 void setMerchantAccountCode(java.lang.Integer merchantAccountCode)
          Set a value to merchantAccountCode.
 void setMiddleName(java.lang.String middleName)
          Sets the middle name.
 void setNotes(java.lang.String notes)
          Set a value to notes.
 void setState(java.lang.String state)
          Set a value to state.
 void setStreet1(java.lang.String street1)
          Set a value to street1.
 void setStreet2(java.lang.String street2)
          Sets the street2.
 void setSuffix(java.lang.String suffix)
          Sets the suffix.
 void setTitle(java.lang.String title)
          Sets the title.
 void setType(java.lang.String type)
          Set a value to type.
 void setWorkPhone(java.lang.String workPhone)
          Set a value to workPhone.
 void setZipCode(java.lang.String zipCode)
          Set a value to zipCode.
 java.lang.String type()
          Returns the type of the object instance using library's terminology In most cases it will match ClassName, but when a single class may represent multiple conceptual objects, the value will differ.
private  void validateFirstBillingDate(java.util.Date firstBillingDate, java.lang.String billingCycleCode, java.lang.String code)
          Validate first billing date.
 
Methods inherited from class ibilling.client.ClientObject
getClientProperty, getCode, getCreateDate, getId, getMerchantAccountCode, getRefId, hasClientProperty, setClientProperty, setCode, setCreateDate, setId, setRefId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
The Constant serialVersionUID.

See Also:
Constant Field Values

firstName

private java.lang.String firstName
If person - first name, not used otherwise.


lastName

private java.lang.String lastName
If person - last name, if organization - organization's name.


middleName

private java.lang.String middleName
If person - middle name, not used otherwise.


title

private java.lang.String title
If person - title, not used otherwise.


suffix

private java.lang.String suffix
If person - suffix, not used otherwise.


type

private java.lang.String type
Type of the account.


isActive

private java.lang.Boolean isActive
If false, account has no active payment option or payment plans.


homePhone

private java.lang.String homePhone
Home phone number.


workPhone

private java.lang.String workPhone
Work phone number/contact number if organization.


cellPhone

private java.lang.String cellPhone
Cell phone number.


email

private java.lang.String email
Contact e-mail.


street1

private java.lang.String street1
Street1 of the address.


street2

private java.lang.String street2
Street2 of the address.


city

private java.lang.String city
City of the address.


state

private java.lang.String state
State of the address.


zipCode

private java.lang.String zipCode
Zip code of the address.


countryType

private java.lang.String countryType
Billing country


balance

private java.lang.Integer balance
Current balance on the account.


beneficiaryInfo

private java.lang.String beneficiaryInfo
Buyer's information (if somebody else is responsible for payments). Contains full name and contact info


customerAccountGroupCode

private java.lang.String customerAccountGroupCode
Predefined classification code for this account (to simplify searching/reporting).


isVerified

private java.lang.Boolean isVerified
Not Used. Reserved for future use.


notes

private java.lang.String notes
Any notes associated with the account.


lastUpdateDate

private java.util.Date lastUpdateDate
Last time the account was updated.


birthDate

private java.util.Date birthDate
If person - date of birth, not used otherwise.


paymentOptions

private java.util.List<PaymentOption> paymentOptions
List of payment options associated with this CustomerAccount.


revenueTransactions

private java.util.List<RevenueTransaction> revenueTransactions
List of RevenueTransactions associated with this CustomerAccount.


assetTransactions

private java.util.List<AssetTransaction> assetTransactions
List of AssetTransctions associated with this CustomerAccount.


paymentPlans

private java.util.List<PaymentPlan> paymentPlans
List of PaymentPlans associated with this CustomerAccount.

Constructor Detail

CustomerAccount

CustomerAccount()
Instantiates a new customer account.


CustomerAccount

CustomerAccount(java.lang.String code,
                java.util.Date createDate,
                java.lang.String firstName,
                java.lang.String lastName,
                java.lang.String middleName,
                java.lang.String title,
                java.lang.String suffix,
                java.lang.String type,
                java.lang.Boolean isActive,
                java.lang.String homePhone,
                java.lang.String workPhone,
                java.lang.String cellPhone,
                java.lang.String email,
                java.lang.String street1,
                java.lang.String street2,
                java.lang.String city,
                java.lang.String state,
                java.lang.String zipCode,
                java.lang.Integer balance,
                java.lang.String beneficiaryInfo,
                java.lang.Integer merchantAccountCode,
                java.lang.String customerAccountGroupCode,
                java.lang.Boolean isVerified,
                java.lang.String notes,
                java.util.Date lastUpdateDate,
                java.util.Date birthDate,
                java.lang.Long id)
Instantiates a new customer account.

Parameters:
code - the code
createDate - the create date
firstName - the first name
lastName - the last name
middleName - the middle name
title - the title
suffix - the suffix
type - the type
isActive - the is active
homePhone - the home phone
workPhone - the work phone
cellPhone - the cell phone
email - the email
street1 - the street1
street2 - the street2
city - the city
state - the state
zipCode - the zip code
balance - the balance
beneficiaryInfo - the beneficiary info
merchantAccountCode - the merchant account code
customerAccountGroupCode - the customer account group code
isVerified - the is verified
notes - the notes
lastUpdateDate - the last update date
birthDate - the birth date
id - the id
Method Detail

setMerchantAccountCode

public void setMerchantAccountCode(java.lang.Integer merchantAccountCode)
Description copied from class: ClientObject
Set a value to merchantAccountCode.

Overrides:
setMerchantAccountCode in class ClientObject
Parameters:
merchantAccountCode - the merchant account code

getType

public java.lang.String getType()
Gets the type.

Returns:
Returns the type

setType

public void setType(java.lang.String type)
Set a value to type.

Parameters:
type - the type

getIsActive

public java.lang.Boolean getIsActive()
Gets the is active.

Returns:
Returns the isActive

setIsActive

public void setIsActive(java.lang.Boolean isActive)
Set a value to isActive.

Parameters:
isActive - the is active

getHomePhone

public java.lang.String getHomePhone()
Gets the home phone.

Returns:
Returns the homePhone

setHomePhone

public void setHomePhone(java.lang.String homePhone)
Set a value to homePhone.

Parameters:
homePhone - the home phone

getWorkPhone

public java.lang.String getWorkPhone()
Gets the work phone.

Returns:
Returns the workPhone

setWorkPhone

public void setWorkPhone(java.lang.String workPhone)
Set a value to workPhone.

Parameters:
workPhone - the work phone

getCellPhone

public java.lang.String getCellPhone()
Gets the cell phone.

Returns:
Returns the cellPhone

setCellPhone

public void setCellPhone(java.lang.String cellPhone)
Set a value to cellPhone.

Parameters:
cellPhone - the cell phone

getEmail

public java.lang.String getEmail()
Gets the email.

Returns:
Returns the email

setEmail

public void setEmail(java.lang.String email)
Set a value to email.

Parameters:
email - the email

getStreet1

public java.lang.String getStreet1()
Gets the street1.

Returns:
Returns the street

setStreet1

public void setStreet1(java.lang.String street1)
Set a value to street1.

Parameters:
street1 - the street1

getCity

public java.lang.String getCity()
Gets the city.

Returns:
Returns the city

setCity

public void setCity(java.lang.String city)
Set a value to city.

Parameters:
city - the city

getState

public java.lang.String getState()
Gets the state.

Returns:
Returns the state

setState

public void setState(java.lang.String state)
Set a value to state.

Parameters:
state - the state

getZipCode

public java.lang.String getZipCode()
Gets the zip code.

Returns:
Returns the zipCode

setZipCode

public void setZipCode(java.lang.String zipCode)
Set a value to zipCode.

Parameters:
zipCode - the zip code

getBalance

public java.lang.Integer getBalance()
Gets the balance.

Returns:
Returns the balance

setBalance

void setBalance(java.lang.Integer balance)
Set a value to balance.

Parameters:
balance - the balance

getBeneficiaryInfo

public java.lang.String getBeneficiaryInfo()
Gets the beneficiary info.

Returns:
Returns the beneficiaryInfo

setBeneficiaryInfo

public void setBeneficiaryInfo(java.lang.String beneficiaryInfo)
Set a value to beneficiaryInfo.

Parameters:
beneficiaryInfo - the beneficiary info

getCustomerAccountGroupCode

public java.lang.String getCustomerAccountGroupCode()
Gets the customer account group code.

Returns:
Returns the customerAccountGroupCode

setCustomerAccountGroupCode

public void setCustomerAccountGroupCode(java.lang.String customerAccountGroupCode)
Set a value to merchantAccountCode.

Parameters:
customerAccountGroupCode - The customerAccountGroupCode to set.

getNotes

public java.lang.String getNotes()
Gets the notes.

Returns:
Returns the notes

setNotes

public void setNotes(java.lang.String notes)
Set a value to notes.

Parameters:
notes - The notes to set.

getBirthDate

public java.util.Date getBirthDate()
Gets the birth date.

Returns:
Returns the birthDate

setBirthDate

public void setBirthDate(java.util.Date birthDate)
Set a value to birthDate.

Parameters:
birthDate - The birthDate to set.

getIsVerified

public java.lang.Boolean getIsVerified()
Gets the is verified.

Returns:
Returns the isAccountVerified

getLastUpdateDate

public java.util.Date getLastUpdateDate()
Gets the last update date.

Returns:
Returns the lastUpdateDate

getPaymentOptions

public java.util.List<PaymentOption> getPaymentOptions()
Gets the payment options.

Returns:
the payment options

addPaymentOption

public void addPaymentOption(PaymentOption paymentOption)
Adds the payment option.

Parameters:
paymentOption - the payment option

removePaymentOption

public void removePaymentOption(PaymentOption paymentOption)
Removes the payment option.

Parameters:
paymentOption - the payment option

getRevenueTransactions

public java.util.List<RevenueTransaction> getRevenueTransactions()
Gets the revenue transactions.

Returns:
the revenue transactions

addRevenueTransaction

public void addRevenueTransaction(RevenueTransaction revenueTransaction)
Adds the revenue transaction.

Parameters:
revenueTransaction - the revenue transaction

removeRevenueTransaction

public void removeRevenueTransaction(RevenueTransaction revenueTransaction)
Removes the revenue transaction.

Parameters:
revenueTransaction - the revenue transaction

getAssetTransactions

public java.util.List<AssetTransaction> getAssetTransactions()
Gets the asset transactions.

Returns:
the asset transactions

addAssetTransaction

public void addAssetTransaction(AssetTransaction assetTransaction)
Adds the asset transaction.

Parameters:
assetTransaction - the asset transaction

removeAssetTransaction

public void removeAssetTransaction(AssetTransaction assetTransaction)
Removes the asset transaction.

Parameters:
assetTransaction - the asset transaction

getPaymentPlans

public java.util.List<PaymentPlan> getPaymentPlans()
Gets the payment plans.

Returns:
the payment plans

addPaymentPlan

public void addPaymentPlan(PaymentPlan paymentPlan)
Adds the payment plan.

Parameters:
paymentPlan - the payment plan

removePaymentPlan

public void removePaymentPlan(PaymentPlan paymentPlan)
Removes the payment plan.

Parameters:
paymentPlan - the payment plan

clear

public void clear()
Clears all associated collections of objects: PaymentOptions, RevenueTransactions, CaptureInfo, AssetTransactions and PaymentPlans.


createPaymentOption

public PaymentOption createPaymentOption()
Creates PaymentOption and associates it with this CustomerAccount.

Returns:
the payment option

createPaymentOption

public PaymentOption createPaymentOption(boolean addToCustomerAccount)
Creates PaymentOption.

Parameters:
addToCustomerAccount - if true, adds payment option to the CustomerAccount; if false, explicit call to add is required
Returns:
the payment option

createCreditCard

public PaymentOption createCreditCard(java.lang.String code,
                                      java.lang.String holderName,
                                      java.lang.String creditCardNumber,
                                      java.lang.String expirationDate,
                                      java.lang.String type)
createCreditCard method.

Parameters:
code - the code
holderName - the holder name
creditCardNumber - the credit card number
expirationDate - the expiration date
type - the type
Returns:
the payment option

createBankAccount

public PaymentOption createBankAccount(java.lang.String code,
                                       java.lang.String holderName,
                                       java.lang.String bankNumber,
                                       java.lang.String routingNumber,
                                       boolean isSaving)
createBankAccount method.

Parameters:
code - the code
holderName - the holder name
bankNumber - the bank number
routingNumber - the routing number
isSaving - the is saving
Returns:
the payment option

createPaymentOptionExtended

public PaymentOption createPaymentOptionExtended(java.lang.String street1,
                                                 java.lang.String street2,
                                                 java.lang.String city,
                                                 java.lang.String state,
                                                 java.lang.String zipCode)
createPaymentOption method.

Parameters:
street1 - the street1
street2 - the street2
city - the city
state - the state
zipCode - the zip code
Returns:
the payment option

createCreditCardExtended

public PaymentOption createCreditCardExtended(java.lang.String code,
                                              java.lang.String holderName,
                                              java.lang.String creditCardNumber,
                                              java.lang.String expirationDate,
                                              java.lang.String type,
                                              java.lang.String street1,
                                              java.lang.String street2,
                                              java.lang.String city,
                                              java.lang.String state,
                                              java.lang.String zipCode)
createCreditCard method.

Parameters:
code - the code
holderName - the holder name
creditCardNumber - the credit card number
expirationDate - the expiration date
type - the type
street1 - the street1
street2 - the street2
city - the city
state - the state
zipCode - the zip code
Returns:
the payment option

createBankAccountExtended

public PaymentOption createBankAccountExtended(java.lang.String code,
                                               java.lang.String holderName,
                                               java.lang.String bankNumber,
                                               java.lang.String routingNumber,
                                               java.lang.String street1,
                                               java.lang.String street2,
                                               java.lang.String city,
                                               java.lang.String state,
                                               java.lang.String zipCode,
                                               boolean isSaving)
createBankAccount method.

Parameters:
code - the code
holderName - the holder name
bankNumber - the bank number
routingNumber - the routing number
street1 - the street1
street2 - the street2
city - the city
state - the state
zipCode - the zip code
isSaving - the is saving
Returns:
the payment option

createPaymentPlan

public PaymentPlan createPaymentPlan(boolean addToCustomerAccount)
createPaymentPlan method.

Parameters:
addToCustomerAccount - the add to customer account
Returns:
the payment plan

createPaymentPlan

public PaymentPlan createPaymentPlan()
createPaymentPlan method.

Returns:
the payment plan

createPaymentPlanBasic

public PaymentPlan createPaymentPlanBasic(java.lang.String code,
                                          java.lang.Integer amount,
                                          java.lang.String billingCycleCode,
                                          java.util.Date firstBillingDate,
                                          java.lang.Integer length,
                                          java.lang.String type)
                                   throws ClientException
createPaymentPlan method.

Parameters:
code - the code
amount - the amount
billingCycleCode - the billing cycle code
firstBillingDate - the first billing date
length - the length
type - the type
Returns:
the payment plan
Throws:
ClientException - the client exception

createPaymentPlanExtended

public PaymentPlan createPaymentPlanExtended(java.lang.String code,
                                             java.lang.String sellerCode,
                                             java.lang.Integer amount,
                                             java.lang.String groupCode1,
                                             java.lang.String groupCode2,
                                             java.lang.String groupCode3,
                                             java.lang.String groupCode4,
                                             java.lang.String groupCode5,
                                             java.lang.String groupCode6,
                                             java.lang.String groupCode7,
                                             java.lang.String groupCode8,
                                             java.lang.String itemCode,
                                             java.lang.String taxCode,
                                             PaymentOption paymentOption,
                                             java.lang.Integer length,
                                             java.lang.String billingCycleCode,
                                             java.util.Date firstBillingDate,
                                             java.lang.String type)
                                      throws ClientException
createPaymentPlan method.

Parameters:
code - the code
sellerCode - the seller code
amount - the amount
groupCode1 - the group code1
groupCode2 - the group code2
groupCode3 - the group code3
groupCode4 - the group code4
groupCode5 - the group code5
groupCode6 - the group code6
groupCode7 - the group code7
groupCode8 - the group code8
itemCode - the item code
taxCode - the tax code
paymentOption - the payment option
length - the length
billingCycleCode - the billing cycle code
firstBillingDate - the first billing date
type - the type
Returns:
the payment plan
Throws:
ClientException - the client exception

createInvoice

public RevenueTransaction createInvoice(java.lang.String type,
                                        java.lang.Integer amount,
                                        java.lang.String note,
                                        java.lang.String creatorCode,
                                        java.lang.String sellerCode,
                                        java.lang.String shiftCode,
                                        java.lang.String terminalCode,
                                        java.util.Date dueDate,
                                        java.lang.Integer taxAmount,
                                        java.lang.String itemCode,
                                        PaymentOption paymentOption)
createInvoice method.

Parameters:
type - the type
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
dueDate - the due date
taxAmount - the tax amount
itemCode - the item code
paymentOption - the payment option
Returns:
the revenue transaction

createCredit

public RevenueTransaction createCredit()
createCredit method.

Returns:
the revenue transaction

createCreditExtended

public RevenueTransaction createCreditExtended(java.lang.Integer amount,
                                               java.lang.String note,
                                               java.lang.String creatorCode,
                                               java.lang.String sellerCode,
                                               java.lang.String shiftCode,
                                               java.lang.String terminalCode,
                                               java.util.Date dueDate,
                                               java.lang.Integer taxAmount,
                                               java.lang.String itemCode,
                                               java.lang.String code)
Creates the credit extended.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
dueDate - the due date
taxAmount - the tax amount
itemCode - the item code
Returns:
the revenue transaction

reverseInvoice

public RevenueTransaction reverseInvoice(RevenueTransaction revenueTransaction)
                                  throws ClientException
voidInvoice method.

Parameters:
revenueTransaction - the revenue transaction
Returns:
the revenue transaction
Throws:
ClientException - the client exception

reverseInvoiceExtended

public RevenueTransaction reverseInvoiceExtended(RevenueTransaction revenueTransaction,
                                                 java.lang.String code,
                                                 java.lang.String note)
                                          throws ClientException
voidInvoice method.

Parameters:
revenueTransaction - the revenue transaction
code - the code
note - the note
Returns:
the revenue transaction
Throws:
ClientException - the client exception

reversePayment

public AssetTransaction reversePayment(AssetTransaction assetTransaction)
                                throws ClientException
voidPayment method.

Parameters:
assetTransaction - the asset transaction
Returns:
the asset transaction
Throws:
ClientException - the client exception

reversePaymentExtended

public AssetTransaction reversePaymentExtended(AssetTransaction assetTransaction,
                                               java.lang.String code,
                                               java.lang.String note)
                                        throws ClientException
Reverse payment extended.

Parameters:
assetTransaction - the asset transaction
code - the code
note - the note
Returns:
the asset transaction
Throws:
ClientException - the client exception

createCashPayment

public AssetTransaction createCashPayment(java.lang.Integer amount,
                                          java.lang.String note,
                                          java.lang.String creatorCode,
                                          java.lang.String sellerCode,
                                          java.lang.String shiftCode,
                                          java.lang.String terminalCode,
                                          java.lang.String code)
createCashPayment method.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
code - the code
Returns:
the asset transaction

createCheckPayment

public AssetTransaction createCheckPayment(java.lang.Integer amount,
                                           java.lang.String note,
                                           java.lang.String creatorCode,
                                           java.lang.String sellerCode,
                                           java.lang.String shiftCode,
                                           java.lang.String terminalCode,
                                           java.lang.String checkNumber,
                                           java.lang.String code)
createCheckPayment method.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
checkNumber - the check number
code - the code
Returns:
the asset transaction

createCreditCardPayment

public AssetTransaction createCreditCardPayment(java.lang.Integer amount,
                                                java.lang.String note,
                                                java.lang.String creatorCode,
                                                java.lang.String sellerCode,
                                                java.lang.String shiftCode,
                                                java.lang.String terminalCode,
                                                java.lang.String creditCardNumber,
                                                java.lang.String expirationDate,
                                                java.lang.String transactionType,
                                                java.lang.String holderName,
                                                java.lang.String city,
                                                java.lang.String state,
                                                java.lang.String street1,
                                                java.lang.String street2,
                                                java.lang.String zipCode,
                                                java.lang.String phone,
                                                java.lang.String email,
                                                java.lang.String cvv2,
                                                java.lang.String code)
createCreditCardPayment method.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
creditCardNumber - the credit card number
expirationDate - the expiration date
transactionType - the transaction type
holderName - the holder name
city - the city
state - the state
street1 - the street1
street2 - the street2
zipCode - the zip code
phone - the phone
email - the email
cvv2 - the cvv2
code - the code
Returns:
the asset transaction

createCashRefund

public AssetTransaction createCashRefund(java.lang.Integer amount,
                                         java.lang.String note,
                                         java.lang.String creatorCode,
                                         java.lang.String sellerCode,
                                         java.lang.String shiftCode,
                                         java.lang.String terminalCode,
                                         java.lang.String accountNumber,
                                         java.lang.String accessory,
                                         java.lang.String code)
createCashRefund method.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
accountNumber - the account number
accessory - the accessory
code - the code
Returns:
the asset transaction

createRefund

public AssetTransaction createRefund()
Creates the refund.

Returns:
the asset transaction

createCreditCardRefund

public AssetTransaction createCreditCardRefund(java.lang.Integer amount,
                                               java.lang.String note,
                                               java.lang.String creatorCode,
                                               java.lang.String sellerCode,
                                               java.lang.String shiftCode,
                                               java.lang.String terminalCode,
                                               java.lang.String creditCardNumber,
                                               java.lang.String expirationDate,
                                               java.lang.String transactionType,
                                               java.lang.String holderName,
                                               java.lang.String city,
                                               java.lang.String state,
                                               java.lang.String street1,
                                               java.lang.String street2,
                                               java.lang.String zipCode,
                                               java.lang.String phone,
                                               java.lang.String email,
                                               java.lang.String cvv2,
                                               java.lang.String code)
createCredit�ardRefund method.

Parameters:
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
creditCardNumber - the credit card number
expirationDate - the expiration date
transactionType - the transaction type
holderName - the holder name
city - the city
state - the state
street1 - the street1
street2 - the street2
zipCode - the zip code
phone - the phone
email - the email
cvv2 - the cvv2
code - the code
Returns:
the asset transaction

createRevenueTransaction

public RevenueTransaction createRevenueTransaction(boolean addToCustomerAccount)
createRevenueTransaction method.

Parameters:
addToCustomerAccount - the add to customer account
Returns:
the revenue transaction

createRevenueTransaction

public RevenueTransaction createRevenueTransaction()
createRevenueTransaction method.

Returns:
the revenue transaction

createRevenueTransactionExtended

public RevenueTransaction createRevenueTransactionExtended(java.lang.String accountActivityType,
                                                           java.lang.String code,
                                                           java.lang.Integer amount,
                                                           java.lang.Integer taxAmount,
                                                           java.lang.Boolean isComplimantary)
createRevenueTransaction method.

Parameters:
accountActivityType - the account activity type
code - the code
amount - the amount
taxAmount - the tax amount
isComplimantary - the is complimantary
Returns:
the revenue transaction

createAssetTransaction

public AssetTransaction createAssetTransaction(boolean addToCustomerAccount)
createAssetTransaction method.

Parameters:
addToCustomerAccount - the add to customer account
Returns:
the asset transaction

createAssetTransaction

public AssetTransaction createAssetTransaction()
createAssetTransaction method.

Returns:
the asset transaction

createAssetTransactionExtended

public AssetTransaction createAssetTransactionExtended(java.lang.String accountActivityType,
                                                       java.lang.String code,
                                                       java.lang.Integer amount,
                                                       java.lang.String accountNumber,
                                                       java.lang.String accessory)
createAssetTransaction method.

Parameters:
accountActivityType - the account activity type
code - the code
amount - the amount
accountNumber - the account number
accessory - the accessory
Returns:
the asset transaction

createAllowance

public AssetTransaction createAllowance(java.lang.String code,
                                        java.lang.Integer amount,
                                        java.lang.String note,
                                        java.lang.String creatorCode,
                                        java.lang.String sellerCode,
                                        java.lang.String shiftCode,
                                        java.lang.String terminalCode)
createAllowance method.

Parameters:
code - TODO
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
Returns:
the asset transaction

createAllowanceRefund

public AssetTransaction createAllowanceRefund(java.lang.String code,
                                              java.lang.Integer amount,
                                              java.lang.String note,
                                              java.lang.String creatorCode,
                                              java.lang.String sellerCode,
                                              java.lang.String shiftCode,
                                              java.lang.String terminalCode,
                                              java.lang.String accountNumber,
                                              java.lang.String accessory)
createAllowanceRefund method.

Parameters:
code - TODO
amount - the amount
note - the note
creatorCode - the creator code
sellerCode - the seller code
shiftCode - the shift code
terminalCode - the terminal code
accountNumber - the account number
accessory - the accessory
Returns:
the asset transaction

getCountryType

public java.lang.String getCountryType()
Gets the country type.

Returns:
the country type

setCountryType

public void setCountryType(java.lang.String countryType)
Sets the country type.

Parameters:
countryType - the new country type

type

public java.lang.String type()
Description copied from class: ClientObject
Returns the type of the object instance using library's terminology In most cases it will match ClassName, but when a single class may represent multiple conceptual objects, the value will differ.

Specified by:
type in class ClientObject
Returns:
the type of the client object

validateFirstBillingDate

private void validateFirstBillingDate(java.util.Date firstBillingDate,
                                      java.lang.String billingCycleCode,
                                      java.lang.String code)
                               throws ClientException
Validate first billing date.

Parameters:
firstBillingDate - the first billing date
billingCycleCode - the billing cycle code
code - the code
Throws:
ClientException - the client exception

getFirstName

public java.lang.String getFirstName()
Gets the first name.

Returns:
the first name

setFirstName

public void setFirstName(java.lang.String firstName)
Sets the first name.

Parameters:
firstName - the new first name

getLastName

public java.lang.String getLastName()
Gets the last name.

Returns:
the last name

setLastName

public void setLastName(java.lang.String lastName)
Sets the last name.

Parameters:
lastName - the new last name

getMiddleName

public java.lang.String getMiddleName()
Gets the middle name.

Returns:
the middle name

setMiddleName

public void setMiddleName(java.lang.String middleName)
Sets the middle name.

Parameters:
middleName - the new middle name

getTitle

public java.lang.String getTitle()
Gets the title.

Returns:
the title

setTitle

public void setTitle(java.lang.String title)
Sets the title.

Parameters:
title - the new title

getSuffix

public java.lang.String getSuffix()
Gets the suffix.

Returns:
the suffix

setSuffix

public void setSuffix(java.lang.String suffix)
Sets the suffix.

Parameters:
suffix - the new suffix

getName

public java.lang.String getName()
Gets the name.

Returns:
the name

getStreet2

public java.lang.String getStreet2()
Gets the street2.

Returns:
the street2

setStreet2

public void setStreet2(java.lang.String street2)
Sets the street2.

Parameters:
street2 - the new street2

setIsVerified

void setIsVerified(java.lang.Boolean isVerified)

setLastUpdateDate

void setLastUpdateDate(java.util.Date lastUpdateDate)