// Code generated by go-swagger; DO NOT EDIT.

// All Code Copyright(c) 2018-2020 by Taxnexus, Inc.
// All rights reserved worldwide.
// Proprietary product; unlicensed use is not allowed

package blaze_models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"strconv"

	"github.com/go-openapi/errors"
	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// TransactionsResponse transactions response
//
// swagger:model TransactionsResponse
type TransactionsResponse struct {

	// limit
	Limit float64 `json:"limit,omitempty"`

	// skip
	Skip float64 `json:"skip,omitempty"`

	// total
	Total float64 `json:"total,omitempty"`

	// values
	Values []*TransactionsResponseValuesItems0 `json:"values"`
}

// Validate validates this transactions response
func (m *TransactionsResponse) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateValues(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponse) validateValues(formats strfmt.Registry) error {

	if swag.IsZero(m.Values) { // not required
		return nil
	}

	for i := 0; i < len(m.Values); i++ {
		if swag.IsZero(m.Values[i]) { // not required
			continue
		}

		if m.Values[i] != nil {
			if err := m.Values[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("values" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponse) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponse) UnmarshalBinary(b []byte) error {
	var res TransactionsResponse
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0 transactions response values items0
//
// swagger:model TransactionsResponseValuesItems0
type TransactionsResponseValuesItems0 struct {

	// active
	Active bool `json:"active,omitempty"`

	// assigned employee Id
	AssignedEmployeeID string `json:"assignedEmployeeId,omitempty"`

	// cart
	Cart *TransactionsResponseValuesItems0Cart `json:"cart,omitempty"`

	// checkin time
	CheckinTime int64 `json:"checkinTime,omitempty"`

	// checkout type
	CheckoutType string `json:"checkoutType,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// completed time
	CompletedTime int64 `json:"completedTime,omitempty"`

	// consumer cart Id
	ConsumerCartID string `json:"consumerCartId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// created by Id
	CreatedByID string `json:"createdById,omitempty"`

	// delete note
	DeleteNote *TransactionsResponseValuesItems0DeleteNote `json:"deleteNote,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// delivery address
	DeliveryAddress *TransactionsResponseValuesItems0DeliveryAddress `json:"deliveryAddress,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// end route date
	EndRouteDate float64 `json:"endRouteDate,omitempty"`

	// end route location
	EndRouteLocation []float64 `json:"endRouteLocation"`

	// end time
	EndTime int64 `json:"endTime,omitempty"`

	// eta
	Eta float64 `json:"eta,omitempty"`

	// fulfillment step
	FulfillmentStep string `json:"fulfillmentStep,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// loc
	Loc []float64 `json:"loc"`

	// locked
	Locked bool `json:"locked,omitempty"`

	// member
	Member *TransactionsResponseValuesItems0Member `json:"member,omitempty"`

	// member Id
	MemberID string `json:"memberId,omitempty"`

	// member signature
	MemberSignature *TransactionsResponseValuesItems0MemberSignature `json:"memberSignature,omitempty"`

	// memo
	Memo string `json:"memo,omitempty"`

	// metrc Id
	MetrcID int64 `json:"metrcId,omitempty"`

	// metrc sale time
	MetrcSaleTime string `json:"metrcSaleTime,omitempty"`

	// mileage
	Mileage float64 `json:"mileage,omitempty"`

	// mileage calculated
	MileageCalculated bool `json:"mileageCalculated,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// note
	Note *TransactionsResponseValuesItems0Note `json:"note,omitempty"`

	// override inventory Id
	OverrideInventoryID string `json:"overrideInventoryId,omitempty"`

	// paid
	Paid bool `json:"paid,omitempty"`

	// paid time
	PaidTime int64 `json:"paidTime,omitempty"`

	// parentitem number
	ParentitemNumber string `json:"parentitemNumber,omitempty"`

	// payment card payments
	PaymentCardPayments []*TransactionsResponseValuesItems0PaymentCardPaymentsItems0 `json:"paymentCardPayments"`

	// points earned
	PointsEarned float64 `json:"pointsEarned,omitempty"`

	// priority
	Priority float64 `json:"priority,omitempty"`

	// processed time
	ProcessedTime int64 `json:"processedTime,omitempty"`

	// queue type
	QueueType string `json:"queueType,omitempty"`

	// routing
	Routing bool `json:"routing,omitempty"`

	// seller
	Seller *TransactionsResponseValuesItems0Seller `json:"seller,omitempty"`

	// seller Id
	SellerID string `json:"sellerId,omitempty"`

	// seller terminal Id
	SellerTerminalID string `json:"sellerTerminalId,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// source
	Source string `json:"source,omitempty"`

	// start route date
	StartRouteDate float64 `json:"startRouteDate,omitempty"`

	// start route location
	StartRouteLocation []float64 `json:"startRouteLocation"`

	// start time
	StartTime int64 `json:"startTime,omitempty"`

	// status
	Status string `json:"status,omitempty"`

	// terminal Id
	TerminalID string `json:"terminalId,omitempty"`

	// time zone
	TimeZone string `json:"timeZone,omitempty"`

	// trace message
	TraceMessage string `json:"traceMessage,omitempty"`

	// trace submit status
	TraceSubmitStatus string `json:"traceSubmitStatus,omitempty"`

	// tracking status
	TrackingStatus string `json:"trackingStatus,omitempty"`

	// trans no
	TransNo string `json:"transNo,omitempty"`

	// trans type
	TransType string `json:"transType,omitempty"`

	// transfer shop Id
	TransferShopID string `json:"transferShopId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0
func (m *TransactionsResponseValuesItems0) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateCart(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateDeleteNote(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateDeliveryAddress(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateMember(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateMemberSignature(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateNote(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validatePaymentCardPayments(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateSeller(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0) validateCart(formats strfmt.Registry) error {

	if swag.IsZero(m.Cart) { // not required
		return nil
	}

	if m.Cart != nil {
		if err := m.Cart.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateDeleteNote(formats strfmt.Registry) error {

	if swag.IsZero(m.DeleteNote) { // not required
		return nil
	}

	if m.DeleteNote != nil {
		if err := m.DeleteNote.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("deleteNote")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateDeliveryAddress(formats strfmt.Registry) error {

	if swag.IsZero(m.DeliveryAddress) { // not required
		return nil
	}

	if m.DeliveryAddress != nil {
		if err := m.DeliveryAddress.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("deliveryAddress")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateMember(formats strfmt.Registry) error {

	if swag.IsZero(m.Member) { // not required
		return nil
	}

	if m.Member != nil {
		if err := m.Member.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("member")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateMemberSignature(formats strfmt.Registry) error {

	if swag.IsZero(m.MemberSignature) { // not required
		return nil
	}

	if m.MemberSignature != nil {
		if err := m.MemberSignature.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("memberSignature")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateNote(formats strfmt.Registry) error {

	if swag.IsZero(m.Note) { // not required
		return nil
	}

	if m.Note != nil {
		if err := m.Note.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("note")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validatePaymentCardPayments(formats strfmt.Registry) error {

	if swag.IsZero(m.PaymentCardPayments) { // not required
		return nil
	}

	for i := 0; i < len(m.PaymentCardPayments); i++ {
		if swag.IsZero(m.PaymentCardPayments[i]) { // not required
			continue
		}

		if m.PaymentCardPayments[i] != nil {
			if err := m.PaymentCardPayments[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("paymentCardPayments" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0) validateSeller(formats strfmt.Registry) error {

	if swag.IsZero(m.Seller) { // not required
		return nil
	}

	if m.Seller != nil {
		if err := m.Seller.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("seller")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0Cart transactions response values items0 cart
//
// swagger:model TransactionsResponseValuesItems0Cart
type TransactionsResponseValuesItems0Cart struct {

	// adjustment amount
	AdjustmentAmount float64 `json:"adjustmentAmount,omitempty"`

	// after tax discount
	AfterTaxDiscount float64 `json:"afterTaxDiscount,omitempty"`

	// applied after tax discount
	AppliedAfterTaxDiscount float64 `json:"appliedAfterTaxDiscount,omitempty"`

	// balance due
	BalanceDue float64 `json:"balanceDue,omitempty"`

	// calc cart discount
	CalcCartDiscount float64 `json:"calcCartDiscount,omitempty"`

	// cash received
	CashReceived float64 `json:"cashReceived,omitempty"`

	// change due
	ChangeDue float64 `json:"changeDue,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// consumer type
	ConsumerType string `json:"consumerType,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// credit card fee
	CreditCardFee float64 `json:"creditCardFee,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// delivery discount
	DeliveryDiscount float64 `json:"deliveryDiscount,omitempty"`

	// delivery discount type
	DeliveryDiscountType string `json:"deliveryDiscountType,omitempty"`

	// delivery fee
	DeliveryFee float64 `json:"deliveryFee,omitempty"`

	// delivery promotion Id
	DeliveryPromotionID string `json:"deliveryPromotionId,omitempty"`

	// discount
	Discount float64 `json:"discount,omitempty"`

	// discount type
	DiscountType string `json:"discountType,omitempty"`

	// enable credit card fee
	EnableCreditCardFee bool `json:"enableCreditCardFee,omitempty"`

	// enable delivery fee
	EnableDeliveryFee bool `json:"enableDeliveryFee,omitempty"`

	// final refund amt
	FinalRefundAmt float64 `json:"finalRefundAmt,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// items
	Items []*TransactionsResponseValuesItems0CartItemsItems0 `json:"items"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// payment option
	PaymentOption string `json:"paymentOption,omitempty"`

	// payment type
	PaymentType string `json:"paymentType,omitempty"`

	// point spent
	PointSpent float64 `json:"pointSpent,omitempty"`

	// promo code
	PromoCode string `json:"promoCode,omitempty"`

	// promotion req logs
	PromotionReqLogs []*TransactionsResponseValuesItems0CartPromotionReqLogsItems0 `json:"promotionReqLogs"`

	// promotion reqs
	PromotionReqs []*TransactionsResponseValuesItems0CartPromotionReqsItems0 `json:"promotionReqs"`

	// refund amount
	RefundAmount float64 `json:"refundAmount,omitempty"`

	// refund option
	RefundOption string `json:"refundOption,omitempty"`

	// refund order item requests
	RefundOrderItemRequests []*TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0 `json:"refundOrderItemRequests"`

	// request refund amt
	RequestRefundAmt float64 `json:"requestRefundAmt,omitempty"`

	// round amt
	RoundAmt float64 `json:"roundAmt,omitempty"`

	// storage location
	StorageLocation string `json:"storageLocation,omitempty"`

	// sub total
	SubTotal float64 `json:"subTotal,omitempty"`

	// sub total discount
	SubTotalDiscount float64 `json:"subTotalDiscount,omitempty"`

	// tax
	Tax float64 `json:"tax,omitempty"`

	// tax result
	TaxResult *TransactionsResponseValuesItems0CartTaxResult `json:"taxResult,omitempty"`

	// tax table
	TaxTable *TransactionsResponseValuesItems0CartTaxTable `json:"taxTable,omitempty"`

	// total
	Total float64 `json:"total,omitempty"`

	// total a l excise tax
	TotalALExciseTax float64 `json:"totalALExciseTax,omitempty"`

	// total calc tax
	TotalCalcTax float64 `json:"totalCalcTax,omitempty"`

	// total discount
	TotalDiscount float64 `json:"totalDiscount,omitempty"`

	// total excise tax
	TotalExciseTax float64 `json:"totalExciseTax,omitempty"`

	// total pre calc tax
	TotalPreCalcTax float64 `json:"totalPreCalcTax,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart
func (m *TransactionsResponseValuesItems0Cart) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateItems(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validatePromotionReqLogs(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validatePromotionReqs(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateRefundOrderItemRequests(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateTaxResult(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateTaxTable(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validateItems(formats strfmt.Registry) error {

	if swag.IsZero(m.Items) { // not required
		return nil
	}

	for i := 0; i < len(m.Items); i++ {
		if swag.IsZero(m.Items[i]) { // not required
			continue
		}

		if m.Items[i] != nil {
			if err := m.Items[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("cart" + "." + "items" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validatePromotionReqLogs(formats strfmt.Registry) error {

	if swag.IsZero(m.PromotionReqLogs) { // not required
		return nil
	}

	for i := 0; i < len(m.PromotionReqLogs); i++ {
		if swag.IsZero(m.PromotionReqLogs[i]) { // not required
			continue
		}

		if m.PromotionReqLogs[i] != nil {
			if err := m.PromotionReqLogs[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("cart" + "." + "promotionReqLogs" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validatePromotionReqs(formats strfmt.Registry) error {

	if swag.IsZero(m.PromotionReqs) { // not required
		return nil
	}

	for i := 0; i < len(m.PromotionReqs); i++ {
		if swag.IsZero(m.PromotionReqs[i]) { // not required
			continue
		}

		if m.PromotionReqs[i] != nil {
			if err := m.PromotionReqs[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("cart" + "." + "promotionReqs" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validateRefundOrderItemRequests(formats strfmt.Registry) error {

	if swag.IsZero(m.RefundOrderItemRequests) { // not required
		return nil
	}

	for i := 0; i < len(m.RefundOrderItemRequests); i++ {
		if swag.IsZero(m.RefundOrderItemRequests[i]) { // not required
			continue
		}

		if m.RefundOrderItemRequests[i] != nil {
			if err := m.RefundOrderItemRequests[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("cart" + "." + "refundOrderItemRequests" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validateTaxResult(formats strfmt.Registry) error {

	if swag.IsZero(m.TaxResult) { // not required
		return nil
	}

	if m.TaxResult != nil {
		if err := m.TaxResult.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxResult")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0Cart) validateTaxTable(formats strfmt.Registry) error {

	if swag.IsZero(m.TaxTable) { // not required
		return nil
	}

	if m.TaxTable != nil {
		if err := m.TaxTable.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxTable")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Cart) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Cart) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0Cart
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0 transactions response values items0 cart items items0
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0
type TransactionsResponseValuesItems0CartItemsItems0 struct {

	// available discount qty
	AvailableDiscountQty float64 `json:"availableDiscountQty,omitempty"`

	// batch Id
	BatchID string `json:"batchId,omitempty"`

	// batch sku
	BatchSku float64 `json:"batchSku,omitempty"`

	// calc cultivation tax
	CalcCultivationTax float64 `json:"calcCultivationTax,omitempty"`

	// calc discount
	CalcDiscount float64 `json:"calcDiscount,omitempty"`

	// calc pre tax
	CalcPreTax float64 `json:"calcPreTax,omitempty"`

	// calc tax
	CalcTax float64 `json:"calcTax,omitempty"`

	// cogs
	Cogs float64 `json:"cogs,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// cost
	Cost float64 `json:"cost,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// discount
	Discount float64 `json:"discount,omitempty"`

	// discount type
	DiscountType string `json:"discountType,omitempty"`

	// discounted qty
	DiscountedQty float64 `json:"discountedQty,omitempty"`

	// exchange amount
	ExchangeAmount float64 `json:"exchangeAmount,omitempty"`

	// exchange qty
	ExchangeQty float64 `json:"exchangeQty,omitempty"`

	// excise tax
	ExciseTax float64 `json:"exciseTax,omitempty"`

	// final price
	FinalPrice float64 `json:"finalPrice,omitempty"`

	// finalized
	Finalized bool `json:"finalized,omitempty"`

	// fulfilled
	Fulfilled bool `json:"fulfilled,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// ignore mix match
	IgnoreMixMatch bool `json:"ignoreMixMatch,omitempty"`

	// mix matched
	MixMatched bool `json:"mixMatched,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// order item Id
	OrderItemID string `json:"orderItemId,omitempty"`

	// orig quantity
	OrigQuantity float64 `json:"origQuantity,omitempty"`

	// override price
	OverridePrice float64 `json:"overridePrice,omitempty"`

	// per unit refund amt
	PerUnitRefundAmt float64 `json:"perUnitRefundAmt,omitempty"`

	// prepackage
	Prepackage string `json:"prepackage,omitempty"`

	// prepackage Id
	PrepackageID string `json:"prepackageId,omitempty"`

	// prepackage item Id
	PrepackageItemID string `json:"prepackageItemId,omitempty"`

	// prepackage product item
	PrepackageProductItem string `json:"prepackageProductItem,omitempty"`

	// prepared qty
	PreparedQty float64 `json:"preparedQty,omitempty"`

	// product
	Product float64 `json:"product,omitempty"`

	// product Id
	ProductID string `json:"productId,omitempty"`

	// promotion reqs
	PromotionReqs []*TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0 `json:"promotionReqs"`

	// quantity
	Quantity float64 `json:"quantity,omitempty"`

	// quantity logs
	QuantityLogs []*TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0 `json:"quantityLogs"`

	// status
	Status string `json:"status,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax result
	TaxResult *TransactionsResponseValuesItems0CartItemsItems0TaxResult `json:"taxResult,omitempty"`

	// tax table
	TaxTable *TransactionsResponseValuesItems0CartItemsItems0TaxTable `json:"taxTable,omitempty"`

	// tax type
	TaxType string `json:"taxType,omitempty"`

	// total refund amount
	TotalRefundAmount float64 `json:"totalRefundAmount,omitempty"`

	// total refund qty
	TotalRefundQty float64 `json:"totalRefundQty,omitempty"`

	// txn line ID
	TxnLineID float64 `json:"txnLineID,omitempty"`

	// unit price
	UnitPrice float64 `json:"unitPrice,omitempty"`

	// unit qty
	UnitQty float64 `json:"unitQty,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// use unit qty
	UseUnitQty bool `json:"useUnitQty,omitempty"`

	// weight key
	WeightKey string `json:"weightKey,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0
func (m *TransactionsResponseValuesItems0CartItemsItems0) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validatePromotionReqs(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateQuantityLogs(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateTaxResult(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateTaxTable(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0) validatePromotionReqs(formats strfmt.Registry) error {

	if swag.IsZero(m.PromotionReqs) { // not required
		return nil
	}

	for i := 0; i < len(m.PromotionReqs); i++ {
		if swag.IsZero(m.PromotionReqs[i]) { // not required
			continue
		}

		if m.PromotionReqs[i] != nil {
			if err := m.PromotionReqs[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("promotionReqs" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0) validateQuantityLogs(formats strfmt.Registry) error {

	if swag.IsZero(m.QuantityLogs) { // not required
		return nil
	}

	for i := 0; i < len(m.QuantityLogs); i++ {
		if swag.IsZero(m.QuantityLogs[i]) { // not required
			continue
		}

		if m.QuantityLogs[i] != nil {
			if err := m.QuantityLogs[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("quantityLogs" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0) validateTaxResult(formats strfmt.Registry) error {

	if swag.IsZero(m.TaxResult) { // not required
		return nil
	}

	if m.TaxResult != nil {
		if err := m.TaxResult.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxResult")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0) validateTaxTable(formats strfmt.Registry) error {

	if swag.IsZero(m.TaxTable) { // not required
		return nil
	}

	if m.TaxTable != nil {
		if err := m.TaxTable.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxTable")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0 transactions response values items0 cart items items0 promotion reqs items0
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0
type TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0 struct {

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// promotion Id
	PromotionID string `json:"promotionId,omitempty"`

	// reward Id
	RewardID string `json:"rewardId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 promotion reqs items0
func (m *TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0PromotionReqsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0 transactions response values items0 cart items items0 quantity logs items0
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0
type TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0 struct {

	// batch Id
	BatchID string `json:"batchId,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// inventory Id
	InventoryID string `json:"inventoryId,omitempty"`

	// prepackage item Id
	PrepackageItemID string `json:"prepackageItemId,omitempty"`

	// quantity
	Quantity float64 `json:"quantity,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 quantity logs items0
func (m *TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0QuantityLogsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxResult transactions response values items0 cart items items0 tax result
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxResult
type TransactionsResponseValuesItems0CartItemsItems0TaxResult struct {

	// created
	Created int64 `json:"created,omitempty"`

	// cultivation tax result
	CultivationTaxResult *TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult `json:"cultivationTaxResult,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// total a l excise tax
	TotalALExciseTax float64 `json:"totalALExciseTax,omitempty"`

	// total a l post excise tax
	TotalALPostExciseTax float64 `json:"totalALPostExciseTax,omitempty"`

	// total city pre tax
	TotalCityPreTax float64 `json:"totalCityPreTax,omitempty"`

	// total city tax
	TotalCityTax float64 `json:"totalCityTax,omitempty"`

	// total county pre tax
	TotalCountyPreTax float64 `json:"totalCountyPreTax,omitempty"`

	// total county tax
	TotalCountyTax float64 `json:"totalCountyTax,omitempty"`

	// total excise tax
	TotalExciseTax float64 `json:"totalExciseTax,omitempty"`

	// total fed pre tax
	TotalFedPreTax float64 `json:"totalFedPreTax,omitempty"`

	// total fed tax
	TotalFedTax float64 `json:"totalFedTax,omitempty"`

	// total n a l pre excise tax
	TotalNALPreExciseTax float64 `json:"totalNALPreExciseTax,omitempty"`

	// total post calc tax
	TotalPostCalcTax float64 `json:"totalPostCalcTax,omitempty"`

	// total pre calc tax
	TotalPreCalcTax float64 `json:"totalPreCalcTax,omitempty"`

	// total state pre tax
	TotalStatePreTax float64 `json:"totalStatePreTax,omitempty"`

	// total state tax
	TotalStateTax float64 `json:"totalStateTax,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax result
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResult) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateCultivationTaxResult(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResult) validateCultivationTaxResult(formats strfmt.Registry) error {

	if swag.IsZero(m.CultivationTaxResult) { // not required
		return nil
	}

	if m.CultivationTaxResult != nil {
		if err := m.CultivationTaxResult.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxResult" + "." + "cultivationTaxResult")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResult) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResult) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxResult
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult transactions response values items0 cart items items0 tax result cultivation tax result
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult
type TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult struct {

	// flower tax oz
	FlowerTaxOz float64 `json:"flowerTaxOz,omitempty"`

	// leaf tax oz
	LeafTaxOz float64 `json:"leafTaxOz,omitempty"`

	// total cultivation tax
	TotalCultivationTax float64 `json:"totalCultivationTax,omitempty"`

	// total flower oz
	TotalFlowerOz float64 `json:"totalFlowerOz,omitempty"`

	// total flower tax
	TotalFlowerTax float64 `json:"totalFlowerTax,omitempty"`

	// total leaf oz
	TotalLeafOz float64 `json:"totalLeafOz,omitempty"`

	// total leaf tax
	TotalLeafTax float64 `json:"totalLeafTax,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax result cultivation tax result
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxResultCultivationTaxResult
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxTable transactions response values items0 cart items items0 tax table
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxTable
type TransactionsResponseValuesItems0CartItemsItems0TaxTable struct {

	// active
	Active bool `json:"active,omitempty"`

	// city tax
	CityTax *TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax `json:"cityTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// consumer type
	ConsumerType string `json:"consumerType,omitempty"`

	// county tax
	CountyTax *TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax `json:"countyTax,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// federal tax
	FederalTax *TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax `json:"federalTax,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// state tax
	StateTax *TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax `json:"stateTax,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax type
	TaxType string `json:"taxType,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax table
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateCityTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateCountyTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateFederalTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateStateTax(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) validateCityTax(formats strfmt.Registry) error {

	if swag.IsZero(m.CityTax) { // not required
		return nil
	}

	if m.CityTax != nil {
		if err := m.CityTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxTable" + "." + "cityTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) validateCountyTax(formats strfmt.Registry) error {

	if swag.IsZero(m.CountyTax) { // not required
		return nil
	}

	if m.CountyTax != nil {
		if err := m.CountyTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxTable" + "." + "countyTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) validateFederalTax(formats strfmt.Registry) error {

	if swag.IsZero(m.FederalTax) { // not required
		return nil
	}

	if m.FederalTax != nil {
		if err := m.FederalTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxTable" + "." + "federalTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) validateStateTax(formats strfmt.Registry) error {

	if swag.IsZero(m.StateTax) { // not required
		return nil
	}

	if m.StateTax != nil {
		if err := m.StateTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("taxTable" + "." + "stateTax")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTable) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxTable
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax transactions response values items0 cart items items0 tax table city tax
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax
type TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax table city tax
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxTableCityTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax transactions response values items0 cart items items0 tax table county tax
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax
type TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax table county tax
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxTableCountyTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax transactions response values items0 cart items items0 tax table federal tax
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax
type TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax table federal tax
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxTableFederalTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax transactions response values items0 cart items items0 tax table state tax
//
// swagger:model TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax
type TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart items items0 tax table state tax
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartItemsItems0TaxTableStateTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartPromotionReqLogsItems0 transactions response values items0 cart promotion req logs items0
//
// swagger:model TransactionsResponseValuesItems0CartPromotionReqLogsItems0
type TransactionsResponseValuesItems0CartPromotionReqLogsItems0 struct {

	// amount
	Amount float64 `json:"amount,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// promotion Id
	PromotionID string `json:"promotionId,omitempty"`

	// promotion type
	PromotionType string `json:"promotionType,omitempty"`

	// reward Id
	RewardID string `json:"rewardId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart promotion req logs items0
func (m *TransactionsResponseValuesItems0CartPromotionReqLogsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartPromotionReqLogsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartPromotionReqLogsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartPromotionReqLogsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartPromotionReqsItems0 transactions response values items0 cart promotion reqs items0
//
// swagger:model TransactionsResponseValuesItems0CartPromotionReqsItems0
type TransactionsResponseValuesItems0CartPromotionReqsItems0 struct {

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// promotion Id
	PromotionID string `json:"promotionId,omitempty"`

	// reward Id
	RewardID string `json:"rewardId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart promotion reqs items0
func (m *TransactionsResponseValuesItems0CartPromotionReqsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartPromotionReqsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartPromotionReqsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartPromotionReqsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0 transactions response values items0 cart refund order item requests items0
//
// swagger:model TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0
type TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0 struct {

	// order item Id
	OrderItemID string `json:"orderItemId,omitempty"`

	// quantity
	Quantity float64 `json:"quantity,omitempty"`

	// refund amt
	RefundAmt float64 `json:"refundAmt,omitempty"`
}

// Validate validates this transactions response values items0 cart refund order item requests items0
func (m *TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartRefundOrderItemRequestsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxResult transactions response values items0 cart tax result
//
// swagger:model TransactionsResponseValuesItems0CartTaxResult
type TransactionsResponseValuesItems0CartTaxResult struct {

	// created
	Created int64 `json:"created,omitempty"`

	// cultivation tax result
	CultivationTaxResult *TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult `json:"cultivationTaxResult,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// total a l excise tax
	TotalALExciseTax float64 `json:"totalALExciseTax,omitempty"`

	// total a l post excise tax
	TotalALPostExciseTax float64 `json:"totalALPostExciseTax,omitempty"`

	// total city pre tax
	TotalCityPreTax float64 `json:"totalCityPreTax,omitempty"`

	// total city tax
	TotalCityTax float64 `json:"totalCityTax,omitempty"`

	// total county pre tax
	TotalCountyPreTax float64 `json:"totalCountyPreTax,omitempty"`

	// total county tax
	TotalCountyTax float64 `json:"totalCountyTax,omitempty"`

	// total excise tax
	TotalExciseTax float64 `json:"totalExciseTax,omitempty"`

	// total fed pre tax
	TotalFedPreTax float64 `json:"totalFedPreTax,omitempty"`

	// total fed tax
	TotalFedTax float64 `json:"totalFedTax,omitempty"`

	// total n a l pre excise tax
	TotalNALPreExciseTax float64 `json:"totalNALPreExciseTax,omitempty"`

	// total post calc tax
	TotalPostCalcTax float64 `json:"totalPostCalcTax,omitempty"`

	// total pre calc tax
	TotalPreCalcTax float64 `json:"totalPreCalcTax,omitempty"`

	// total state pre tax
	TotalStatePreTax float64 `json:"totalStatePreTax,omitempty"`

	// total state tax
	TotalStateTax float64 `json:"totalStateTax,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax result
func (m *TransactionsResponseValuesItems0CartTaxResult) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateCultivationTaxResult(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0CartTaxResult) validateCultivationTaxResult(formats strfmt.Registry) error {

	if swag.IsZero(m.CultivationTaxResult) { // not required
		return nil
	}

	if m.CultivationTaxResult != nil {
		if err := m.CultivationTaxResult.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxResult" + "." + "cultivationTaxResult")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxResult) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxResult) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxResult
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult transactions response values items0 cart tax result cultivation tax result
//
// swagger:model TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult
type TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult struct {

	// flower tax oz
	FlowerTaxOz float64 `json:"flowerTaxOz,omitempty"`

	// leaf tax oz
	LeafTaxOz float64 `json:"leafTaxOz,omitempty"`

	// total cultivation tax
	TotalCultivationTax float64 `json:"totalCultivationTax,omitempty"`

	// total flower oz
	TotalFlowerOz float64 `json:"totalFlowerOz,omitempty"`

	// total flower tax
	TotalFlowerTax float64 `json:"totalFlowerTax,omitempty"`

	// total leaf oz
	TotalLeafOz float64 `json:"totalLeafOz,omitempty"`

	// total leaf tax
	TotalLeafTax float64 `json:"totalLeafTax,omitempty"`
}

// Validate validates this transactions response values items0 cart tax result cultivation tax result
func (m *TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxResultCultivationTaxResult
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxTable transactions response values items0 cart tax table
//
// swagger:model TransactionsResponseValuesItems0CartTaxTable
type TransactionsResponseValuesItems0CartTaxTable struct {

	// active
	Active bool `json:"active,omitempty"`

	// city tax
	CityTax *TransactionsResponseValuesItems0CartTaxTableCityTax `json:"cityTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// consumer type
	ConsumerType string `json:"consumerType,omitempty"`

	// county tax
	CountyTax *TransactionsResponseValuesItems0CartTaxTableCountyTax `json:"countyTax,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// federal tax
	FederalTax *TransactionsResponseValuesItems0CartTaxTableFederalTax `json:"federalTax,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// state tax
	StateTax *TransactionsResponseValuesItems0CartTaxTableStateTax `json:"stateTax,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax type
	TaxType string `json:"taxType,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax table
func (m *TransactionsResponseValuesItems0CartTaxTable) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateCityTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateCountyTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateFederalTax(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateStateTax(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0CartTaxTable) validateCityTax(formats strfmt.Registry) error {

	if swag.IsZero(m.CityTax) { // not required
		return nil
	}

	if m.CityTax != nil {
		if err := m.CityTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxTable" + "." + "cityTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartTaxTable) validateCountyTax(formats strfmt.Registry) error {

	if swag.IsZero(m.CountyTax) { // not required
		return nil
	}

	if m.CountyTax != nil {
		if err := m.CountyTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxTable" + "." + "countyTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartTaxTable) validateFederalTax(formats strfmt.Registry) error {

	if swag.IsZero(m.FederalTax) { // not required
		return nil
	}

	if m.FederalTax != nil {
		if err := m.FederalTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxTable" + "." + "federalTax")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0CartTaxTable) validateStateTax(formats strfmt.Registry) error {

	if swag.IsZero(m.StateTax) { // not required
		return nil
	}

	if m.StateTax != nil {
		if err := m.StateTax.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("cart" + "." + "taxTable" + "." + "stateTax")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTable) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTable) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxTable
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxTableCityTax transactions response values items0 cart tax table city tax
//
// swagger:model TransactionsResponseValuesItems0CartTaxTableCityTax
type TransactionsResponseValuesItems0CartTaxTableCityTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax table city tax
func (m *TransactionsResponseValuesItems0CartTaxTableCityTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableCityTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableCityTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxTableCityTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxTableCountyTax transactions response values items0 cart tax table county tax
//
// swagger:model TransactionsResponseValuesItems0CartTaxTableCountyTax
type TransactionsResponseValuesItems0CartTaxTableCountyTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax table county tax
func (m *TransactionsResponseValuesItems0CartTaxTableCountyTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableCountyTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableCountyTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxTableCountyTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxTableFederalTax transactions response values items0 cart tax table federal tax
//
// swagger:model TransactionsResponseValuesItems0CartTaxTableFederalTax
type TransactionsResponseValuesItems0CartTaxTableFederalTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax table federal tax
func (m *TransactionsResponseValuesItems0CartTaxTableFederalTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableFederalTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableFederalTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxTableFederalTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0CartTaxTableStateTax transactions response values items0 cart tax table state tax
//
// swagger:model TransactionsResponseValuesItems0CartTaxTableStateTax
type TransactionsResponseValuesItems0CartTaxTableStateTax struct {

	// active
	Active bool `json:"active,omitempty"`

	// active excise tax
	ActiveExciseTax bool `json:"activeExciseTax,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// compound
	Compound bool `json:"compound,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// tax order
	TaxOrder string `json:"taxOrder,omitempty"`

	// tax rate
	TaxRate float64 `json:"taxRate,omitempty"`

	// territory
	Territory string `json:"territory,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 cart tax table state tax
func (m *TransactionsResponseValuesItems0CartTaxTableStateTax) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableStateTax) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0CartTaxTableStateTax) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0CartTaxTableStateTax
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0DeleteNote transactions response values items0 delete note
//
// swagger:model TransactionsResponseValuesItems0DeleteNote
type TransactionsResponseValuesItems0DeleteNote struct {

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// enable on fleet
	EnableOnFleet bool `json:"enableOnFleet,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// message
	Message string `json:"message,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// writer Id
	WriterID string `json:"writerId,omitempty"`

	// writer name
	WriterName string `json:"writerName,omitempty"`
}

// Validate validates this transactions response values items0 delete note
func (m *TransactionsResponseValuesItems0DeleteNote) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0DeleteNote) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0DeleteNote) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0DeleteNote
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0DeliveryAddress transactions response values items0 delivery address
//
// swagger:model TransactionsResponseValuesItems0DeliveryAddress
type TransactionsResponseValuesItems0DeliveryAddress struct {

	// address
	Address string `json:"address,omitempty"`

	// address line1
	AddressLine1 string `json:"addressLine1,omitempty"`

	// city
	City string `json:"city,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// country
	Country string `json:"country,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// state
	State string `json:"state,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// zip code
	ZipCode string `json:"zipCode,omitempty"`
}

// Validate validates this transactions response values items0 delivery address
func (m *TransactionsResponseValuesItems0DeliveryAddress) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0DeliveryAddress) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0DeliveryAddress) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0DeliveryAddress
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0Member transactions response values items0 member
//
// swagger:model TransactionsResponseValuesItems0Member
type TransactionsResponseValuesItems0Member struct {

	// address
	Address *TransactionsResponseValuesItems0MemberAddress `json:"address,omitempty"`

	// agreement expired
	AgreementExpired bool `json:"agreementExpired,omitempty"`

	// anonymous
	Anonymous bool `json:"anonymous,omitempty"`

	// ban patient
	BanPatient bool `json:"banPatient,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// consumer type
	ConsumerType string `json:"consumerType,omitempty"`

	// consumer user Id
	ConsumerUserID string `json:"consumerUserId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// dl expired
	DlExpired bool `json:"dlExpired,omitempty"`

	// dob
	Dob float64 `json:"dob,omitempty"`

	// email
	Email string `json:"email,omitempty"`

	// email opt in
	EmailOptIn bool `json:"emailOptIn,omitempty"`

	// email verified
	EmailVerified bool `json:"emailVerified,omitempty"`

	// enable loyalty
	EnableLoyalty bool `json:"enableLoyalty,omitempty"`

	// enabled care giver
	EnabledCareGiver bool `json:"enabledCareGiver,omitempty"`

	// first name
	FirstName string `json:"firstName,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// identifications
	Identifications []*TransactionsResponseValuesItems0MemberIdentificationsItems0 `json:"identifications"`

	// import Id
	ImportID string `json:"importId,omitempty"`

	// last name
	LastName string `json:"lastName,omitempty"`

	// last visit date
	LastVisitDate float64 `json:"lastVisitDate,omitempty"`

	// lifetime points
	LifetimePoints float64 `json:"lifetimePoints,omitempty"`

	// loyalty points
	LoyaltyPoints float64 `json:"loyaltyPoints,omitempty"`

	// marketing source
	MarketingSource string `json:"marketingSource,omitempty"`

	// medical
	Medical bool `json:"medical,omitempty"`

	// member group
	MemberGroup *TransactionsResponseValuesItems0MemberMemberGroup `json:"memberGroup,omitempty"`

	// member group Id
	MemberGroupID string `json:"memberGroupId,omitempty"`

	// middle name
	MiddleName string `json:"middleName,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// primary phone
	PrimaryPhone string `json:"primaryPhone,omitempty"`

	// qb mapping
	QbMapping string `json:"qbMapping,omitempty"`

	// recommendation expired
	RecommendationExpired bool `json:"recommendationExpired,omitempty"`

	// recommendation expiry left
	RecommendationExpiryLeft float64 `json:"recommendationExpiryLeft,omitempty"`

	// recommendations
	Recommendations []*TransactionsResponseValuesItems0MemberRecommendationsItems0 `json:"recommendations"`

	// region Id
	RegionID string `json:"regionId,omitempty"`

	// search text
	SearchText string `json:"searchText,omitempty"`

	// sex
	Sex float64 `json:"sex,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// start date
	StartDate float64 `json:"startDate,omitempty"`

	// status
	Status string `json:"status,omitempty"`

	// text opt in
	TextOptIn bool `json:"textOptIn,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 member
func (m *TransactionsResponseValuesItems0Member) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateAddress(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateIdentifications(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateMemberGroup(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateRecommendations(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0Member) validateAddress(formats strfmt.Registry) error {

	if swag.IsZero(m.Address) { // not required
		return nil
	}

	if m.Address != nil {
		if err := m.Address.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("member" + "." + "address")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0Member) validateIdentifications(formats strfmt.Registry) error {

	if swag.IsZero(m.Identifications) { // not required
		return nil
	}

	for i := 0; i < len(m.Identifications); i++ {
		if swag.IsZero(m.Identifications[i]) { // not required
			continue
		}

		if m.Identifications[i] != nil {
			if err := m.Identifications[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("member" + "." + "identifications" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0Member) validateMemberGroup(formats strfmt.Registry) error {

	if swag.IsZero(m.MemberGroup) { // not required
		return nil
	}

	if m.MemberGroup != nil {
		if err := m.MemberGroup.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("member" + "." + "memberGroup")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0Member) validateRecommendations(formats strfmt.Registry) error {

	if swag.IsZero(m.Recommendations) { // not required
		return nil
	}

	for i := 0; i < len(m.Recommendations); i++ {
		if swag.IsZero(m.Recommendations[i]) { // not required
			continue
		}

		if m.Recommendations[i] != nil {
			if err := m.Recommendations[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("member" + "." + "recommendations" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Member) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Member) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0Member
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberAddress transactions response values items0 member address
//
// swagger:model TransactionsResponseValuesItems0MemberAddress
type TransactionsResponseValuesItems0MemberAddress struct {

	// address
	Address string `json:"address,omitempty"`

	// address line1
	AddressLine1 string `json:"addressLine1,omitempty"`

	// city
	City string `json:"city,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// country
	Country string `json:"country,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// state
	State string `json:"state,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// zip code
	ZipCode string `json:"zipCode,omitempty"`
}

// Validate validates this transactions response values items0 member address
func (m *TransactionsResponseValuesItems0MemberAddress) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberAddress) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberAddress) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberAddress
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberIdentificationsItems0 transactions response values items0 member identifications items0
//
// swagger:model TransactionsResponseValuesItems0MemberIdentificationsItems0
type TransactionsResponseValuesItems0MemberIdentificationsItems0 struct {

	// assets
	Assets []*TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0 `json:"assets"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// expiration date
	ExpirationDate float64 `json:"expirationDate,omitempty"`

	// front photo
	FrontPhoto *TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto `json:"frontPhoto,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// license number
	LicenseNumber string `json:"licenseNumber,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// state
	State string `json:"state,omitempty"`

	// type
	Type string `json:"type,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// verified
	Verified bool `json:"verified,omitempty"`
}

// Validate validates this transactions response values items0 member identifications items0
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateAssets(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateFrontPhoto(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0) validateAssets(formats strfmt.Registry) error {

	if swag.IsZero(m.Assets) { // not required
		return nil
	}

	for i := 0; i < len(m.Assets); i++ {
		if swag.IsZero(m.Assets[i]) { // not required
			continue
		}

		if m.Assets[i] != nil {
			if err := m.Assets[i].Validate(formats); err != nil {
				if ve, ok := err.(*errors.Validation); ok {
					return ve.ValidateName("assets" + "." + strconv.Itoa(i))
				}
				return err
			}
		}

	}

	return nil
}

func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0) validateFrontPhoto(formats strfmt.Registry) error {

	if swag.IsZero(m.FrontPhoto) { // not required
		return nil
	}

	if m.FrontPhoto != nil {
		if err := m.FrontPhoto.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("frontPhoto")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberIdentificationsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0 transactions response values items0 member identifications items0 assets items0
//
// swagger:model TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0
type TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0 struct {

	// active
	Active bool `json:"active,omitempty"`

	// asset type
	AssetType string `json:"assetType,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// key
	Key string `json:"key,omitempty"`

	// large URL
	LargeURL string `json:"largeURL,omitempty"`

	// large x2 URL
	LargeX2URL string `json:"largeX2URL,omitempty"`

	// medium URL
	MediumURL string `json:"mediumURL,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// orig URL
	OrigURL string `json:"origURL,omitempty"`

	// priority
	Priority float64 `json:"priority,omitempty"`

	// public URL
	PublicURL string `json:"publicURL,omitempty"`

	// secured
	Secured bool `json:"secured,omitempty"`

	// thumb URL
	ThumbURL string `json:"thumbURL,omitempty"`

	// type
	Type string `json:"type,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 member identifications items0 assets items0
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberIdentificationsItems0AssetsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto transactions response values items0 member identifications items0 front photo
//
// swagger:model TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto
type TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto struct {

	// active
	Active bool `json:"active,omitempty"`

	// asset type
	AssetType string `json:"assetType,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// key
	Key string `json:"key,omitempty"`

	// large URL
	LargeURL string `json:"largeURL,omitempty"`

	// large x2 URL
	LargeX2URL string `json:"largeX2URL,omitempty"`

	// medium URL
	MediumURL string `json:"mediumURL,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// orig URL
	OrigURL string `json:"origURL,omitempty"`

	// priority
	Priority float64 `json:"priority,omitempty"`

	// public URL
	PublicURL string `json:"publicURL,omitempty"`

	// secured
	Secured bool `json:"secured,omitempty"`

	// thumb URL
	ThumbURL string `json:"thumbURL,omitempty"`

	// type
	Type string `json:"type,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 member identifications items0 front photo
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberIdentificationsItems0FrontPhoto
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberMemberGroup transactions response values items0 member member group
//
// swagger:model TransactionsResponseValuesItems0MemberMemberGroup
type TransactionsResponseValuesItems0MemberMemberGroup struct {

	// active
	Active bool `json:"active,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// default group
	DefaultGroup bool `json:"defaultGroup,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// discount
	Discount float64 `json:"discount,omitempty"`

	// discount type
	DiscountType string `json:"discountType,omitempty"`

	// enable promotion
	EnablePromotion bool `json:"enablePromotion,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// member count
	MemberCount float64 `json:"memberCount,omitempty"`

	// member count email opt in
	MemberCountEmailOptIn float64 `json:"memberCountEmailOptIn,omitempty"`

	// member count text opt in
	MemberCountTextOptIn float64 `json:"memberCountTextOptIn,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// promotion Id
	PromotionID string `json:"promotionId,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 member member group
func (m *TransactionsResponseValuesItems0MemberMemberGroup) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberMemberGroup) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberMemberGroup) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberMemberGroup
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberRecommendationsItems0 transactions response values items0 member recommendations items0
//
// swagger:model TransactionsResponseValuesItems0MemberRecommendationsItems0
type TransactionsResponseValuesItems0MemberRecommendationsItems0 struct {

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// verify method
	VerifyMethod string `json:"verifyMethod,omitempty"`
}

// Validate validates this transactions response values items0 member recommendations items0
func (m *TransactionsResponseValuesItems0MemberRecommendationsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberRecommendationsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberRecommendationsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberRecommendationsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0MemberSignature transactions response values items0 member signature
//
// swagger:model TransactionsResponseValuesItems0MemberSignature
type TransactionsResponseValuesItems0MemberSignature struct {

	// active
	Active bool `json:"active,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// key
	Key string `json:"key,omitempty"`

	// large URL
	LargeURL string `json:"largeURL,omitempty"`

	// medium URL
	MediumURL string `json:"mediumURL,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// priority
	Priority float64 `json:"priority,omitempty"`

	// public URL
	PublicURL string `json:"publicURL,omitempty"`

	// secured
	Secured bool `json:"secured,omitempty"`

	// thumb URL
	ThumbURL string `json:"thumbURL,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 member signature
func (m *TransactionsResponseValuesItems0MemberSignature) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberSignature) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0MemberSignature) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0MemberSignature
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0Note transactions response values items0 note
//
// swagger:model TransactionsResponseValuesItems0Note
type TransactionsResponseValuesItems0Note struct {

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// enable on fleet
	EnableOnFleet bool `json:"enableOnFleet,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// message
	Message string `json:"message,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// writer Id
	WriterID string `json:"writerId,omitempty"`

	// writer name
	WriterName string `json:"writerName,omitempty"`
}

// Validate validates this transactions response values items0 note
func (m *TransactionsResponseValuesItems0Note) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Note) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Note) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0Note
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0PaymentCardPaymentsItems0 transactions response values items0 payment card payments items0
//
// swagger:model TransactionsResponseValuesItems0PaymentCardPaymentsItems0
type TransactionsResponseValuesItems0PaymentCardPaymentsItems0 struct {

	// amount
	Amount float64 `json:"amount,omitempty"`

	// balance
	Balance float64 `json:"balance,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// payment card number
	PaymentCardNumber string `json:"paymentCardNumber,omitempty"`

	// processed time
	ProcessedTime int64 `json:"processedTime,omitempty"`

	// status
	Status string `json:"status,omitempty"`

	// status message
	StatusMessage string `json:"statusMessage,omitempty"`

	// type
	Type string `json:"type,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 payment card payments items0
func (m *TransactionsResponseValuesItems0PaymentCardPaymentsItems0) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0PaymentCardPaymentsItems0) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0PaymentCardPaymentsItems0) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0PaymentCardPaymentsItems0
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0Seller transactions response values items0 seller
//
// swagger:model TransactionsResponseValuesItems0Seller
type TransactionsResponseValuesItems0Seller struct {

	// address
	Address *TransactionsResponseValuesItems0SellerAddress `json:"address,omitempty"`

	// assigned
	Assigned bool `json:"assigned,omitempty"`

	// assigned employee
	AssignedEmployee string `json:"assignedEmployee,omitempty"`

	// assigned terminal Id
	AssignedTerminalID string `json:"assignedTerminalId,omitempty"`

	// can apply custom discount
	CanApplyCustomDiscount bool `json:"canApplyCustomDiscount,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// create onfleet task
	CreateOnfleetTask bool `json:"createOnfleetTask,omitempty"`

	// create tookan task
	CreateTookanTask bool `json:"createTookanTask,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// delivery date
	DeliveryDate float64 `json:"deliveryDate,omitempty"`

	// disabled
	Disabled bool `json:"disabled,omitempty"`

	// dl expiration date
	DlExpirationDate string `json:"dlExpirationDate,omitempty"`

	// drivers license
	DriversLicense string `json:"driversLicense,omitempty"`

	// email
	Email string `json:"email,omitempty"`

	// error refund time
	ErrorRefundTime int64 `json:"errorRefundTime,omitempty"`

	// error time
	ErrorTime int64 `json:"errorTime,omitempty"`

	// first name
	FirstName string `json:"firstName,omitempty"`

	// fulfilling fulfillment
	FulfillingFulfillment bool `json:"fulfillingFulfillment,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// insurance company name
	InsuranceCompanyName string `json:"insuranceCompanyName,omitempty"`

	// insurance expire date
	InsuranceExpireDate float64 `json:"insuranceExpireDate,omitempty"`

	// last name
	LastName string `json:"lastName,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// on fleet task Id
	OnFleetTaskID string `json:"onFleetTaskId,omitempty"`

	// on fleet task status
	OnFleetTaskStatus string `json:"onFleetTaskStatus,omitempty"`

	// order tags
	OrderTags []string `json:"orderTags"`

	// packed by
	PackedBy string `json:"packedBy,omitempty"`

	// packed date
	PackedDate float64 `json:"packedDate,omitempty"`

	// password
	Password string `json:"password,omitempty"`

	// paying with payment card
	PayingWithPaymentCard bool `json:"payingWithPaymentCard,omitempty"`

	// phone number
	PhoneNumber string `json:"phoneNumber,omitempty"`

	// pick up date
	PickUpDate float64 `json:"pickUpDate,omitempty"`

	// pin
	Pin string `json:"pin,omitempty"`

	// prepared by
	PreparedBy string `json:"preparedBy,omitempty"`

	// prepared date
	PreparedDate float64 `json:"preparedDate,omitempty"`

	// preparing fulfillment
	PreparingFulfillment bool `json:"preparingFulfillment,omitempty"`

	// qb desktop journal entry ref
	QbDesktopJournalEntryRef string `json:"qbDesktopJournalEntryRef,omitempty"`

	// qb desktop refund receipt
	QbDesktopRefundReceipt string `json:"qbDesktopRefundReceipt,omitempty"`

	// qb desktop sales ref
	QbDesktopSalesRef string `json:"qbDesktopSalesRef,omitempty"`

	// qb errored
	QbErrored bool `json:"qbErrored,omitempty"`

	// qb journal entry ref
	QbJournalEntryRef string `json:"qbJournalEntryRef,omitempty"`

	// qb refund errored
	QbRefundErrored bool `json:"qbRefundErrored,omitempty"`

	// qb refund receipt
	QbRefundReceipt string `json:"qbRefundReceipt,omitempty"`

	// qb sales receipt ref
	QbSalesReceiptRef string `json:"qbSalesReceiptRef,omitempty"`

	// recent location
	RecentLocation *TransactionsResponseValuesItems0SellerRecentLocation `json:"recentLocation,omitempty"`

	// refund payment options
	RefundPaymentOptions []string `json:"refundPaymentOptions"`

	// refund version
	RefundVersion string `json:"refundVersion,omitempty"`

	// registration expire date
	RegistrationExpireDate float64 `json:"registrationExpireDate,omitempty"`

	// role Id
	RoleID string `json:"roleId,omitempty"`

	// shops
	Shops []string `json:"shops"`

	// short Id
	ShortID string `json:"shortId,omitempty"`

	// state
	State float64 `json:"state,omitempty"`

	// time card Id
	TimeCardID string `json:"timeCardId,omitempty"`

	// tookan task Id
	TookanTaskID string `json:"tookanTaskId,omitempty"`

	// transaction refund status
	TransactionRefundStatus string `json:"transactionRefundStatus,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// vehicle license plate
	VehicleLicensePlate string `json:"vehicleLicensePlate,omitempty"`

	// vehicle make
	VehicleMake string `json:"vehicleMake,omitempty"`

	// vehicle model
	VehicleModel string `json:"vehicleModel,omitempty"`

	// vehicle pin
	VehiclePin string `json:"vehiclePin,omitempty"`

	// vin no
	VinNo string `json:"vinNo,omitempty"`
}

// Validate validates this transactions response values items0 seller
func (m *TransactionsResponseValuesItems0Seller) Validate(formats strfmt.Registry) error {
	var res []error

	if err := m.validateAddress(formats); err != nil {
		res = append(res, err)
	}

	if err := m.validateRecentLocation(formats); err != nil {
		res = append(res, err)
	}

	if len(res) > 0 {
		return errors.CompositeValidationError(res...)
	}
	return nil
}

func (m *TransactionsResponseValuesItems0Seller) validateAddress(formats strfmt.Registry) error {

	if swag.IsZero(m.Address) { // not required
		return nil
	}

	if m.Address != nil {
		if err := m.Address.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("seller" + "." + "address")
			}
			return err
		}
	}

	return nil
}

func (m *TransactionsResponseValuesItems0Seller) validateRecentLocation(formats strfmt.Registry) error {

	if swag.IsZero(m.RecentLocation) { // not required
		return nil
	}

	if m.RecentLocation != nil {
		if err := m.RecentLocation.Validate(formats); err != nil {
			if ve, ok := err.(*errors.Validation); ok {
				return ve.ValidateName("seller" + "." + "recentLocation")
			}
			return err
		}
	}

	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Seller) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0Seller) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0Seller
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0SellerAddress transactions response values items0 seller address
//
// swagger:model TransactionsResponseValuesItems0SellerAddress
type TransactionsResponseValuesItems0SellerAddress struct {

	// address
	Address string `json:"address,omitempty"`

	// address line1
	AddressLine1 string `json:"addressLine1,omitempty"`

	// city
	City string `json:"city,omitempty"`

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// country
	Country string `json:"country,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// state
	State string `json:"state,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`

	// zip code
	ZipCode string `json:"zipCode,omitempty"`
}

// Validate validates this transactions response values items0 seller address
func (m *TransactionsResponseValuesItems0SellerAddress) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0SellerAddress) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0SellerAddress) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0SellerAddress
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}

// TransactionsResponseValuesItems0SellerRecentLocation transactions response values items0 seller recent location
//
// swagger:model TransactionsResponseValuesItems0SellerRecentLocation
type TransactionsResponseValuesItems0SellerRecentLocation struct {

	// company Id
	CompanyID string `json:"companyId,omitempty"`

	// created
	Created int64 `json:"created,omitempty"`

	// deleted
	Deleted bool `json:"deleted,omitempty"`

	// device Id
	DeviceID string `json:"deviceId,omitempty"`

	// dirty
	Dirty bool `json:"dirty,omitempty"`

	// employee Id
	EmployeeID string `json:"employeeId,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// loc
	Loc []float64 `json:"loc"`

	// modified
	Modified int64 `json:"modified,omitempty"`

	// name
	Name string `json:"name,omitempty"`

	// shop Id
	ShopID string `json:"shopId,omitempty"`

	// terminal Id
	TerminalID string `json:"terminalId,omitempty"`

	// time card Id
	TimeCardID string `json:"timeCardId,omitempty"`

	// updated
	Updated bool `json:"updated,omitempty"`
}

// Validate validates this transactions response values items0 seller recent location
func (m *TransactionsResponseValuesItems0SellerRecentLocation) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0SellerRecentLocation) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TransactionsResponseValuesItems0SellerRecentLocation) UnmarshalBinary(b []byte) error {
	var res TransactionsResponseValuesItems0SellerRecentLocation
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
