func (o *Total) UnsetCanonicalDescription() {
	o.CanonicalDescription.Unset()
}
UnsetCanonicalDescription ensures that no value is present for CanonicalDescription, not even an explicit nil
package plaid
import (
	"encoding/json"
)
type Total struct {
	CanonicalDescription NullableString `json:"canonical_description,omitempty"`
	Description NullableString `json:"description,omitempty"`
	CurrentPay *Pay `json:"current_pay,omitempty"`
	YtdPay *Pay `json:"ytd_pay,omitempty"`
	AdditionalProperties map[string]interface{}
}
type _Total Total
func NewTotal() *Total {
	this := Total{}
	return &this
}
func NewTotalWithDefaults() *Total {
	this := Total{}
	return &this
}
func (o *Total) GetCanonicalDescription() string {
	if o == nil || o.CanonicalDescription.Get() == nil {
		var ret string
		return ret
	}
	return *o.CanonicalDescription.Get()
}
func (o *Total) GetCanonicalDescriptionOk() (*string, bool) {
	if o == nil  {
		return nil, false
	}
	return o.CanonicalDescription.Get(), o.CanonicalDescription.IsSet()
}
func (o *Total) HasCanonicalDescription() bool {
	if o != nil && o.CanonicalDescription.IsSet() {
		return true
	}
	return false
}
func (o *Total) SetCanonicalDescription(v string) {
	o.CanonicalDescription.Set(&v)
}
func (o *Total) SetCanonicalDescriptionNil() {
	o.CanonicalDescription.Set(nil)
}