Class Bill
- All Implemented Interfaces:
Serializable
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateAndSetCreditorReference(String rawReference) Creates and sets a ISO11649 creditor reference from a raw string by prefixing the String with "RF" and the modulo 97 checksum.voidcreateAndSetQRReference(String rawReference) Creates and sets a QR reference from a raw string by appending the checksum digit and prepending zeros to make it the correct length.booleanGets the creditor's account number.Get the alternative schemes.Gets the payment amountGets the payment amount as aDoubleinstanceGets the additional bill information.Gets the creditor address.Gets the payment currency.Gets the debtor's address.Gets the bill format.Gets the payment referenceGets the type of payment reference.Gets the additional unstructured message.Gets the version of the QR bill standard.inthashCode()voidsetAccount(String account) Sets the creditor's account number.voidsetAlternativeSchemes(AlternativeScheme[] alternativeSchemes) Sets the alternative scheme parameters.voidsetAmount(BigDecimal amount) Sets the payment amount.voidsetAmountFromDouble(Double amount) Sets the payment amount from aDoublesolid-line-with_scissorsvoidsetBillInformation(String billInformation) Sets the additional bill informationvoidsetCreditor(Address creditor) Sets the creditor address.voidsetCurrency(String currency) Sets the payment currency.voidSets the debtor's address.voidsetFormat(BillFormat format) Sets the bill format.voidsetReference(String reference) Sets the payment reference.voidsetReferenceType(String referenceType) Sets the type of payment reference.voidsetUnstructuredMessage(String unstructuredMessage) Sets the additional unstructured message.voidsetVersion(Bill.Version version) Sets the version of the QR bill standard.toString()voidUpdates the reference type by deriving it from the payment reference.
-
Field Details
-
REFERENCE_TYPE_NO_REF
Reference type: without reference.- See Also:
-
REFERENCE_TYPE_QR_REF
Reference type: QR reference.- See Also:
-
REFERENCE_TYPE_CRED_REF
Reference type: creditor reference (ISO 11649)- See Also:
-
-
Constructor Details
-
Bill
public Bill()
-
-
Method Details
-
getVersion
Gets the version of the QR bill standard.- Returns:
- the version
-
setVersion
Sets the version of the QR bill standard.- Parameters:
version- the version
-
getAmount
Gets the payment amount- Returns:
- the amount
-
getAmountAsDouble
Gets the payment amount as aDoubleinstance- Returns:
- the amount
-
setAmount
Sets the payment amount.Valid values are between 0.01 and 999,999,999.99
- Parameters:
amount- the amount
-
setAmountFromDouble
Sets the payment amount from aDoublesolid-line-with_scissorsThe value is saved with a scale of 2.
- Parameters:
amount- the amount
-
getCurrency
Gets the payment currency.- Returns:
- the currency
-
setCurrency
Sets the payment currency.Valid values are "CHF" and "EUR".
- Parameters:
currency- the currency
-
getAccount
Gets the creditor's account number.- Returns:
- the account number
-
setAccount
Sets the creditor's account number.Account numbers must be valid IBANs of a bank of Switzerland or Liechtenstein. Spaces are allowed in the account number.
- Parameters:
account- the account number
-
getCreditor
Gets the creditor address.- Returns:
- the creditor address
-
setCreditor
Sets the creditor address.- Parameters:
creditor- the creditor address.
-
getReferenceType
Gets the type of payment reference.The reference type is automatically set when a payment reference is set.
- Returns:
- one of the constants REFERENCE_TYPE_xxx.
- See Also:
-
setReferenceType
Sets the type of payment reference.Usually there is no need to set the reference type as it is automatically set when a payment reference is set..
- Parameters:
referenceType- one of the constantsREFERENCE_TYPE_xx- See Also:
-
updateReferenceType
public void updateReferenceType()Updates the reference type by deriving it from the payment reference. -
getReference
Gets the payment reference- Returns:
- the reference
-
setReference
Sets the payment reference.The reference is mandatory for QR IBANs, i.e. IBANs in the range CHxx30000xxxxxx through CHxx31999xxxxx. QR IBANs require a valid QR reference (numeric reference corresponding to the ISR reference format).
For non-QR IBANs, the reference is optional. If it is provided, it must be valid creditor reference according to ISO 11649 ("RFxxxx").
Both types of references may contain spaces for formatting.
- Parameters:
reference- the payment reference number- See Also:
-
createAndSetCreditorReference
Creates and sets a ISO11649 creditor reference from a raw string by prefixing the String with "RF" and the modulo 97 checksum.Whitespace is removed from the reference
- Parameters:
rawReference- The raw string- Throws:
IllegalArgumentException- ifrawReferencecontains invalid characters
-
createAndSetQRReference
Creates and sets a QR reference from a raw string by appending the checksum digit and prepending zeros to make it the correct length.As the QR reference is numeric, the raw string must consist of digits and whitespace only. Whitespace is removed from the reference.
- Parameters:
rawReference- The raw string- Throws:
IllegalArgumentException- ifrawReferencecontains invalid characters
-
getDebtor
Gets the debtor's address.- Returns:
- the debtor address
-
setDebtor
Sets the debtor's address.The debtor is optional. If it is omitted, both setting this field to
nullor setting an address with allnullor empty values is ok.- Parameters:
debtor- the debtor address
-
getUnstructuredMessage
Gets the additional unstructured message.- Returns:
- the unstructured message
-
setUnstructuredMessage
Sets the additional unstructured message.- Parameters:
unstructuredMessage- the unstructured message
-
getBillInformation
Gets the additional bill information.- Returns:
- bill information
-
setBillInformation
Sets the additional bill information- Parameters:
billInformation- bill information
-
getAlternativeSchemes
Get the alternative schemes.A maximum of two schemes are allowed.
- Returns:
- alternative schemes
-
setAlternativeSchemes
Sets the alternative scheme parameters.A maximum of two schemes with parameters are allowed.
- Parameters:
alternativeSchemes- alternative payment scheme information
-
getFormat
Gets the bill format.- Returns:
- bill format
-
setFormat
Sets the bill format.- Parameters:
format- bill format
-
equals
-
hashCode
public int hashCode() -
toString
-