quote

package
v3.45.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 6, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BillingAddress

type BillingAddress struct {
	FirstName        string                `json:"first_name"`
	LastName         string                `json:"last_name"`
	Email            string                `json:"email"`
	Company          string                `json:"company"`
	Phone            string                `json:"phone"`
	Line1            string                `json:"line1"`
	Line2            string                `json:"line2"`
	Line3            string                `json:"line3"`
	City             string                `json:"city"`
	StateCode        string                `json:"state_code"`
	State            string                `json:"state"`
	Country          string                `json:"country"`
	Zip              string                `json:"zip"`
	ValidationStatus enum.ValidationStatus `json:"validation_status"`
	Object           string                `json:"object"`
}

type ConvertRequestParams

type ConvertRequestParams struct {
	Subscription          *ConvertSubscriptionParams `json:"subscription,omitempty"`
	InvoiceDate           *int64                     `json:"invoice_date,omitempty"`
	InvoiceImmediately    *bool                      `json:"invoice_immediately,omitempty"`
	CreatePendingInvoices *bool                      `json:"create_pending_invoices,omitempty"`
	FirstInvoicePending   *bool                      `json:"first_invoice_pending,omitempty"`
}

type ConvertSubscriptionParams

type ConvertSubscriptionParams struct {
	Id                string              `json:"id,omitempty"`
	AutoCollection    enum.AutoCollection `json:"auto_collection,omitempty"`
	PoNumber          string              `json:"po_number,omitempty"`
	AutoCloseInvoices *bool               `json:"auto_close_invoices,omitempty"`
}

type CreateForChargeItemsAndChargesBillingAddressParams added in v3.33.0

type CreateForChargeItemsAndChargesBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateForChargeItemsAndChargesChargeParams

type CreateForChargeItemsAndChargesChargeParams struct {
	Amount                 *int64               `json:"amount,omitempty"`
	AmountInDecimal        string               `json:"amount_in_decimal,omitempty"`
	Description            string               `json:"description,omitempty"`
	AvalaraSaleType        enum.AvalaraSaleType `json:"avalara_sale_type,omitempty"`
	AvalaraTransactionType *int32               `json:"avalara_transaction_type,omitempty"`
	AvalaraServiceType     *int32               `json:"avalara_service_type,omitempty"`
	ServicePeriod          *int32               `json:"service_period,omitempty"`
}

type CreateForChargeItemsAndChargesDiscountParams

type CreateForChargeItemsAndChargesDiscountParams struct {
	Percentage  *float64     `json:"percentage,omitempty"`
	Quantity    *int32       `json:"quantity,omitempty"`
	Amount      *int64       `json:"amount,omitempty"`
	ApplyOn     enum.ApplyOn `json:"apply_on"`
	ItemPriceId string       `json:"item_price_id,omitempty"`
}

type CreateForChargeItemsAndChargesItemPriceParams

type CreateForChargeItemsAndChargesItemPriceParams struct {
	ItemPriceId        string `json:"item_price_id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	ServicePeriodDays  *int32 `json:"service_period_days,omitempty"`
}

type CreateForChargeItemsAndChargesItemTierParams

type CreateForChargeItemsAndChargesItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
}

type CreateForChargeItemsAndChargesRequestParams

type CreateForChargeItemsAndChargesRequestParams struct {
	Name               string                                                   `json:"name,omitempty"`
	CustomerId         string                                                   `json:"customer_id"`
	PoNumber           string                                                   `json:"po_number,omitempty"`
	Notes              string                                                   `json:"notes,omitempty"`
	ExpiresAt          *int64                                                   `json:"expires_at,omitempty"`
	CurrencyCode       string                                                   `json:"currency_code,omitempty"`
	ItemPrices         []*CreateForChargeItemsAndChargesItemPriceParams         `json:"item_prices,omitempty"`
	ItemTiers          []*CreateForChargeItemsAndChargesItemTierParams          `json:"item_tiers,omitempty"`
	Charges            []*CreateForChargeItemsAndChargesChargeParams            `json:"charges,omitempty"`
	Coupon             string                                                   `json:"coupon,omitempty"`
	CouponIds          []string                                                 `json:"coupon_ids,omitempty"`
	BillingAddress     *CreateForChargeItemsAndChargesBillingAddressParams      `json:"billing_address,omitempty"`
	ShippingAddress    *CreateForChargeItemsAndChargesShippingAddressParams     `json:"shipping_address,omitempty"`
	Discounts          []*CreateForChargeItemsAndChargesDiscountParams          `json:"discounts,omitempty"`
	TaxProvidersFields []*CreateForChargeItemsAndChargesTaxProvidersFieldParams `json:"tax_providers_fields,omitempty"`
}

type CreateForChargeItemsAndChargesShippingAddressParams

type CreateForChargeItemsAndChargesShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateForChargeItemsAndChargesTaxProvidersFieldParams added in v3.18.0

type CreateForChargeItemsAndChargesTaxProvidersFieldParams struct {
	ProviderName string `json:"provider_name,omitempty"`
	FieldId      string `json:"field_id,omitempty"`
	FieldValue   string `json:"field_value,omitempty"`
}

type CreateForOnetimeChargesAddonParams

type CreateForOnetimeChargesAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	ServicePeriod      *int32 `json:"service_period,omitempty"`
}

type CreateForOnetimeChargesChargeParams

type CreateForOnetimeChargesChargeParams struct {
	Amount                 *int64               `json:"amount,omitempty"`
	AmountInDecimal        string               `json:"amount_in_decimal,omitempty"`
	Description            string               `json:"description,omitempty"`
	AvalaraSaleType        enum.AvalaraSaleType `json:"avalara_sale_type,omitempty"`
	AvalaraTransactionType *int32               `json:"avalara_transaction_type,omitempty"`
	AvalaraServiceType     *int32               `json:"avalara_service_type,omitempty"`
	ServicePeriod          *int32               `json:"service_period,omitempty"`
}

type CreateForOnetimeChargesRequestParams

type CreateForOnetimeChargesRequestParams struct {
	Name               string                                            `json:"name,omitempty"`
	CustomerId         string                                            `json:"customer_id"`
	PoNumber           string                                            `json:"po_number,omitempty"`
	Notes              string                                            `json:"notes,omitempty"`
	ExpiresAt          *int64                                            `json:"expires_at,omitempty"`
	CurrencyCode       string                                            `json:"currency_code,omitempty"`
	Addons             []*CreateForOnetimeChargesAddonParams             `json:"addons,omitempty"`
	Charges            []*CreateForOnetimeChargesChargeParams            `json:"charges,omitempty"`
	Coupon             string                                            `json:"coupon,omitempty"`
	CouponIds          []string                                          `json:"coupon_ids,omitempty"`
	ShippingAddress    *CreateForOnetimeChargesShippingAddressParams     `json:"shipping_address,omitempty"`
	TaxProvidersFields []*CreateForOnetimeChargesTaxProvidersFieldParams `json:"tax_providers_fields,omitempty"`
}

type CreateForOnetimeChargesShippingAddressParams

type CreateForOnetimeChargesShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateForOnetimeChargesTaxProvidersFieldParams added in v3.18.0

type CreateForOnetimeChargesTaxProvidersFieldParams struct {
	ProviderName string `json:"provider_name,omitempty"`
	FieldId      string `json:"field_id,omitempty"`
	FieldValue   string `json:"field_value,omitempty"`
}

type CreateSubForCustomerQuoteAddonParams

type CreateSubForCustomerQuoteAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32 `json:"billing_cycles,omitempty"`
	TrialEnd           *int64 `json:"trial_end,omitempty"`
}

type CreateSubForCustomerQuoteContractTermParams

type CreateSubForCustomerQuoteContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type CreateSubForCustomerQuoteEventBasedAddonParams

type CreateSubForCustomerQuoteEventBasedAddonParams struct {
	Id                  string        `json:"id,omitempty"`
	Quantity            *int32        `json:"quantity,omitempty"`
	UnitPrice           *int64        `json:"unit_price,omitempty"`
	QuantityInDecimal   string        `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal  string        `json:"unit_price_in_decimal,omitempty"`
	ServicePeriodInDays *int32        `json:"service_period_in_days,omitempty"`
	OnEvent             enum.OnEvent  `json:"on_event,omitempty"`
	ChargeOnce          *bool         `json:"charge_once,omitempty"`
	ChargeOn            enum.ChargeOn `json:"charge_on,omitempty"`
}

type CreateSubForCustomerQuoteRequestParams

type CreateSubForCustomerQuoteRequestParams struct {
	Name                    string                                            `json:"name,omitempty"`
	Notes                   string                                            `json:"notes,omitempty"`
	ExpiresAt               *int64                                            `json:"expires_at,omitempty"`
	Subscription            *CreateSubForCustomerQuoteSubscriptionParams      `json:"subscription,omitempty"`
	BillingCycles           *int32                                            `json:"billing_cycles,omitempty"`
	Addons                  []*CreateSubForCustomerQuoteAddonParams           `json:"addons,omitempty"`
	EventBasedAddons        []*CreateSubForCustomerQuoteEventBasedAddonParams `json:"event_based_addons,omitempty"`
	MandatoryAddonsToRemove []string                                          `json:"mandatory_addons_to_remove,omitempty"`
	TermsToCharge           *int32                                            `json:"terms_to_charge,omitempty"`
	BillingAlignmentMode    enum.BillingAlignmentMode                         `json:"billing_alignment_mode,omitempty"`
	ShippingAddress         *CreateSubForCustomerQuoteShippingAddressParams   `json:"shipping_address,omitempty"`
	ContractTerm            *CreateSubForCustomerQuoteContractTermParams      `json:"contract_term,omitempty"`
	CouponIds               []string                                          `json:"coupon_ids,omitempty"`
}

type CreateSubForCustomerQuoteShippingAddressParams

type CreateSubForCustomerQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateSubForCustomerQuoteSubscriptionParams

type CreateSubForCustomerQuoteSubscriptionParams struct {
	Id                                string                    `json:"id,omitempty"`
	PoNumber                          string                    `json:"po_number,omitempty"`
	PlanId                            string                    `json:"plan_id"`
	PlanQuantity                      *int32                    `json:"plan_quantity,omitempty"`
	PlanQuantityInDecimal             string                    `json:"plan_quantity_in_decimal,omitempty"`
	PlanUnitPrice                     *int64                    `json:"plan_unit_price,omitempty"`
	PlanUnitPriceInDecimal            string                    `json:"plan_unit_price_in_decimal,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type CreateSubItemsForCustomerQuoteBillingAddressParams added in v3.33.0

type CreateSubItemsForCustomerQuoteBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateSubItemsForCustomerQuoteContractTermParams

type CreateSubItemsForCustomerQuoteContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type CreateSubItemsForCustomerQuoteCouponParams added in v3.33.0

type CreateSubItemsForCustomerQuoteCouponParams struct {
	Id        string `json:"id,omitempty"`
	StartDate *int64 `json:"start_date,omitempty"`
	EndDate   *int64 `json:"end_date,omitempty"`
}

type CreateSubItemsForCustomerQuoteDiscountParams

type CreateSubItemsForCustomerQuoteDiscountParams struct {
	ApplyOn       enum.ApplyOn      `json:"apply_on,omitempty"`
	DurationType  enum.DurationType `json:"duration_type"`
	Percentage    *float64          `json:"percentage,omitempty"`
	Amount        *int64            `json:"amount,omitempty"`
	Period        *int32            `json:"period,omitempty"`
	PeriodUnit    enum.PeriodUnit   `json:"period_unit,omitempty"`
	IncludedInMrr *bool             `json:"included_in_mrr,omitempty"`
	ItemPriceId   string            `json:"item_price_id,omitempty"`
	Quantity      *int32            `json:"quantity,omitempty"`
	StartDate     *int64            `json:"start_date,omitempty"`
	EndDate       *int64            `json:"end_date,omitempty"`
}

type CreateSubItemsForCustomerQuoteItemTierParams

type CreateSubItemsForCustomerQuoteItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
	RampTierId            string           `json:"ramp_tier_id,omitempty"`
}

type CreateSubItemsForCustomerQuoteRequestParams

type CreateSubItemsForCustomerQuoteRequestParams struct {
	Name                   string                                                  `json:"name,omitempty"`
	Notes                  string                                                  `json:"notes,omitempty"`
	ExpiresAt              *int64                                                  `json:"expires_at,omitempty"`
	Subscription           *CreateSubItemsForCustomerQuoteSubscriptionParams       `json:"subscription,omitempty"`
	BillingCycles          *int32                                                  `json:"billing_cycles,omitempty"`
	SubscriptionItems      []*CreateSubItemsForCustomerQuoteSubscriptionItemParams `json:"subscription_items,omitempty"`
	Discounts              []*CreateSubItemsForCustomerQuoteDiscountParams         `json:"discounts,omitempty"`
	MandatoryItemsToRemove []string                                                `json:"mandatory_items_to_remove,omitempty"`
	ItemTiers              []*CreateSubItemsForCustomerQuoteItemTierParams         `json:"item_tiers,omitempty"`
	TermsToCharge          *int32                                                  `json:"terms_to_charge,omitempty"`
	BillingAlignmentMode   enum.BillingAlignmentMode                               `json:"billing_alignment_mode,omitempty"`
	ShippingAddress        *CreateSubItemsForCustomerQuoteShippingAddressParams    `json:"shipping_address,omitempty"`
	ContractTerm           *CreateSubItemsForCustomerQuoteContractTermParams       `json:"contract_term,omitempty"`
	CouponIds              []string                                                `json:"coupon_ids,omitempty"`
	BillingStartOption     enum.BillingStartOption                                 `json:"billing_start_option,omitempty"`
	BillingAddress         *CreateSubItemsForCustomerQuoteBillingAddressParams     `json:"billing_address,omitempty"`
	NetTermDays            *int32                                                  `json:"net_term_days,omitempty"`
	Coupons                []*CreateSubItemsForCustomerQuoteCouponParams           `json:"coupons,omitempty"`
}

type CreateSubItemsForCustomerQuoteShippingAddressParams

type CreateSubItemsForCustomerQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type CreateSubItemsForCustomerQuoteSubscriptionItemParams

type CreateSubItemsForCustomerQuoteSubscriptionItemParams struct {
	ItemPriceId        string              `json:"item_price_id"`
	Quantity           *int32              `json:"quantity,omitempty"`
	QuantityInDecimal  string              `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64              `json:"unit_price,omitempty"`
	UnitPriceInDecimal string              `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32              `json:"billing_cycles,omitempty"`
	TrialEnd           *int64              `json:"trial_end,omitempty"`
	ServicePeriodDays  *int32              `json:"service_period_days,omitempty"`
	ChargeOnEvent      enum.ChargeOnEvent  `json:"charge_on_event,omitempty"`
	ChargeOnce         *bool               `json:"charge_once,omitempty"`
	ItemType           enum.ItemType       `json:"item_type,omitempty"`
	ChargeOnOption     enum.ChargeOnOption `json:"charge_on_option,omitempty"`
	StartDate          *int64              `json:"start_date,omitempty"`
	EndDate            *int64              `json:"end_date,omitempty"`
	RampTierId         string              `json:"ramp_tier_id,omitempty"`
}

type CreateSubItemsForCustomerQuoteSubscriptionParams

type CreateSubItemsForCustomerQuoteSubscriptionParams struct {
	Id                                string                    `json:"id,omitempty"`
	PoNumber                          string                    `json:"po_number,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type DeleteRequestParams

type DeleteRequestParams struct {
	Comment string `json:"comment,omitempty"`
}

type Discount

type Discount struct {
	Amount        int64                          `json:"amount"`
	Description   string                         `json:"description"`
	LineItemId    string                         `json:"line_item_id"`
	EntityType    quoteEnum.DiscountEntityType   `json:"entity_type"`
	DiscountType  quoteEnum.DiscountDiscountType `json:"discount_type"`
	EntityId      string                         `json:"entity_id"`
	CouponSetCode string                         `json:"coupon_set_code"`
	Object        string                         `json:"object"`
}

type EditCreateSubCustomerQuoteForItemsBillingAddressParams added in v3.33.0

type EditCreateSubCustomerQuoteForItemsBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsContractTermParams

type EditCreateSubCustomerQuoteForItemsContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsCouponParams added in v3.33.0

type EditCreateSubCustomerQuoteForItemsCouponParams struct {
	Id        string `json:"id,omitempty"`
	StartDate *int64 `json:"start_date,omitempty"`
	EndDate   *int64 `json:"end_date,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsDiscountParams

type EditCreateSubCustomerQuoteForItemsDiscountParams struct {
	ApplyOn       enum.ApplyOn      `json:"apply_on,omitempty"`
	DurationType  enum.DurationType `json:"duration_type"`
	Percentage    *float64          `json:"percentage,omitempty"`
	Amount        *int64            `json:"amount,omitempty"`
	Period        *int32            `json:"period,omitempty"`
	PeriodUnit    enum.PeriodUnit   `json:"period_unit,omitempty"`
	IncludedInMrr *bool             `json:"included_in_mrr,omitempty"`
	ItemPriceId   string            `json:"item_price_id,omitempty"`
	Quantity      *int32            `json:"quantity,omitempty"`
	StartDate     *int64            `json:"start_date,omitempty"`
	EndDate       *int64            `json:"end_date,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsItemTierParams

type EditCreateSubCustomerQuoteForItemsItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
	RampTierId            string           `json:"ramp_tier_id,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsRequestParams

type EditCreateSubCustomerQuoteForItemsRequestParams struct {
	Notes                  string                                                      `json:"notes,omitempty"`
	ExpiresAt              *int64                                                      `json:"expires_at,omitempty"`
	Subscription           *EditCreateSubCustomerQuoteForItemsSubscriptionParams       `json:"subscription,omitempty"`
	BillingCycles          *int32                                                      `json:"billing_cycles,omitempty"`
	SubscriptionItems      []*EditCreateSubCustomerQuoteForItemsSubscriptionItemParams `json:"subscription_items,omitempty"`
	Discounts              []*EditCreateSubCustomerQuoteForItemsDiscountParams         `json:"discounts,omitempty"`
	MandatoryItemsToRemove []string                                                    `json:"mandatory_items_to_remove,omitempty"`
	ItemTiers              []*EditCreateSubCustomerQuoteForItemsItemTierParams         `json:"item_tiers,omitempty"`
	TermsToCharge          *int32                                                      `json:"terms_to_charge,omitempty"`
	BillingAlignmentMode   enum.BillingAlignmentMode                                   `json:"billing_alignment_mode,omitempty"`
	ShippingAddress        *EditCreateSubCustomerQuoteForItemsShippingAddressParams    `json:"shipping_address,omitempty"`
	ContractTerm           *EditCreateSubCustomerQuoteForItemsContractTermParams       `json:"contract_term,omitempty"`
	CouponIds              []string                                                    `json:"coupon_ids,omitempty"`
	BillingStartOption     enum.BillingStartOption                                     `json:"billing_start_option,omitempty"`
	BillingAddress         *EditCreateSubCustomerQuoteForItemsBillingAddressParams     `json:"billing_address,omitempty"`
	NetTermDays            *int32                                                      `json:"net_term_days,omitempty"`
	Coupons                []*EditCreateSubCustomerQuoteForItemsCouponParams           `json:"coupons,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsShippingAddressParams

type EditCreateSubCustomerQuoteForItemsShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsSubscriptionItemParams

type EditCreateSubCustomerQuoteForItemsSubscriptionItemParams struct {
	ItemPriceId        string              `json:"item_price_id"`
	Quantity           *int32              `json:"quantity,omitempty"`
	QuantityInDecimal  string              `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64              `json:"unit_price,omitempty"`
	UnitPriceInDecimal string              `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32              `json:"billing_cycles,omitempty"`
	TrialEnd           *int64              `json:"trial_end,omitempty"`
	ServicePeriodDays  *int32              `json:"service_period_days,omitempty"`
	ChargeOnEvent      enum.ChargeOnEvent  `json:"charge_on_event,omitempty"`
	ChargeOnce         *bool               `json:"charge_once,omitempty"`
	ItemType           enum.ItemType       `json:"item_type,omitempty"`
	ChargeOnOption     enum.ChargeOnOption `json:"charge_on_option,omitempty"`
	StartDate          *int64              `json:"start_date,omitempty"`
	EndDate            *int64              `json:"end_date,omitempty"`
	RampTierId         string              `json:"ramp_tier_id,omitempty"`
}

type EditCreateSubCustomerQuoteForItemsSubscriptionParams

type EditCreateSubCustomerQuoteForItemsSubscriptionParams struct {
	Id                                string                    `json:"id,omitempty"`
	PoNumber                          string                    `json:"po_number,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type EditCreateSubForCustomerQuoteAddonParams

type EditCreateSubForCustomerQuoteAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32 `json:"billing_cycles,omitempty"`
	TrialEnd           *int64 `json:"trial_end,omitempty"`
}

type EditCreateSubForCustomerQuoteContractTermParams

type EditCreateSubForCustomerQuoteContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type EditCreateSubForCustomerQuoteEventBasedAddonParams

type EditCreateSubForCustomerQuoteEventBasedAddonParams struct {
	Id                  string        `json:"id,omitempty"`
	Quantity            *int32        `json:"quantity,omitempty"`
	UnitPrice           *int64        `json:"unit_price,omitempty"`
	QuantityInDecimal   string        `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal  string        `json:"unit_price_in_decimal,omitempty"`
	ServicePeriodInDays *int32        `json:"service_period_in_days,omitempty"`
	OnEvent             enum.OnEvent  `json:"on_event,omitempty"`
	ChargeOnce          *bool         `json:"charge_once,omitempty"`
	ChargeOn            enum.ChargeOn `json:"charge_on,omitempty"`
}

type EditCreateSubForCustomerQuoteRequestParams

type EditCreateSubForCustomerQuoteRequestParams struct {
	Notes                   string                                                `json:"notes,omitempty"`
	ExpiresAt               *int64                                                `json:"expires_at,omitempty"`
	Subscription            *EditCreateSubForCustomerQuoteSubscriptionParams      `json:"subscription,omitempty"`
	BillingCycles           *int32                                                `json:"billing_cycles,omitempty"`
	Addons                  []*EditCreateSubForCustomerQuoteAddonParams           `json:"addons,omitempty"`
	EventBasedAddons        []*EditCreateSubForCustomerQuoteEventBasedAddonParams `json:"event_based_addons,omitempty"`
	MandatoryAddonsToRemove []string                                              `json:"mandatory_addons_to_remove,omitempty"`
	TermsToCharge           *int32                                                `json:"terms_to_charge,omitempty"`
	BillingAlignmentMode    enum.BillingAlignmentMode                             `json:"billing_alignment_mode,omitempty"`
	ShippingAddress         *EditCreateSubForCustomerQuoteShippingAddressParams   `json:"shipping_address,omitempty"`
	ContractTerm            *EditCreateSubForCustomerQuoteContractTermParams      `json:"contract_term,omitempty"`
	CouponIds               []string                                              `json:"coupon_ids,omitempty"`
}

type EditCreateSubForCustomerQuoteShippingAddressParams

type EditCreateSubForCustomerQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditCreateSubForCustomerQuoteSubscriptionParams

type EditCreateSubForCustomerQuoteSubscriptionParams struct {
	Id                                string                    `json:"id,omitempty"`
	PoNumber                          string                    `json:"po_number,omitempty"`
	PlanId                            string                    `json:"plan_id"`
	PlanQuantity                      *int32                    `json:"plan_quantity,omitempty"`
	PlanQuantityInDecimal             string                    `json:"plan_quantity_in_decimal,omitempty"`
	PlanUnitPrice                     *int64                    `json:"plan_unit_price,omitempty"`
	PlanUnitPriceInDecimal            string                    `json:"plan_unit_price_in_decimal,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type EditForChargeItemsAndChargesBillingAddressParams added in v3.33.0

type EditForChargeItemsAndChargesBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditForChargeItemsAndChargesChargeParams

type EditForChargeItemsAndChargesChargeParams struct {
	Amount                 *int64               `json:"amount,omitempty"`
	AmountInDecimal        string               `json:"amount_in_decimal,omitempty"`
	Description            string               `json:"description,omitempty"`
	AvalaraSaleType        enum.AvalaraSaleType `json:"avalara_sale_type,omitempty"`
	AvalaraTransactionType *int32               `json:"avalara_transaction_type,omitempty"`
	AvalaraServiceType     *int32               `json:"avalara_service_type,omitempty"`
	ServicePeriod          *int32               `json:"service_period,omitempty"`
}

type EditForChargeItemsAndChargesDiscountParams

type EditForChargeItemsAndChargesDiscountParams struct {
	Percentage  *float64     `json:"percentage,omitempty"`
	Quantity    *int32       `json:"quantity,omitempty"`
	Amount      *int64       `json:"amount,omitempty"`
	ApplyOn     enum.ApplyOn `json:"apply_on"`
	ItemPriceId string       `json:"item_price_id,omitempty"`
}

type EditForChargeItemsAndChargesItemPriceParams

type EditForChargeItemsAndChargesItemPriceParams struct {
	ItemPriceId        string `json:"item_price_id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	ServicePeriodDays  *int32 `json:"service_period_days,omitempty"`
}

type EditForChargeItemsAndChargesItemTierParams

type EditForChargeItemsAndChargesItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
}

type EditForChargeItemsAndChargesRequestParams

type EditForChargeItemsAndChargesRequestParams struct {
	PoNumber           string                                                 `json:"po_number,omitempty"`
	Notes              string                                                 `json:"notes,omitempty"`
	ExpiresAt          *int64                                                 `json:"expires_at,omitempty"`
	CurrencyCode       string                                                 `json:"currency_code,omitempty"`
	ItemPrices         []*EditForChargeItemsAndChargesItemPriceParams         `json:"item_prices,omitempty"`
	ItemTiers          []*EditForChargeItemsAndChargesItemTierParams          `json:"item_tiers,omitempty"`
	Charges            []*EditForChargeItemsAndChargesChargeParams            `json:"charges,omitempty"`
	Coupon             string                                                 `json:"coupon,omitempty"`
	CouponIds          []string                                               `json:"coupon_ids,omitempty"`
	BillingAddress     *EditForChargeItemsAndChargesBillingAddressParams      `json:"billing_address,omitempty"`
	ShippingAddress    *EditForChargeItemsAndChargesShippingAddressParams     `json:"shipping_address,omitempty"`
	Discounts          []*EditForChargeItemsAndChargesDiscountParams          `json:"discounts,omitempty"`
	TaxProvidersFields []*EditForChargeItemsAndChargesTaxProvidersFieldParams `json:"tax_providers_fields,omitempty"`
}

type EditForChargeItemsAndChargesShippingAddressParams

type EditForChargeItemsAndChargesShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditForChargeItemsAndChargesTaxProvidersFieldParams added in v3.18.0

type EditForChargeItemsAndChargesTaxProvidersFieldParams struct {
	ProviderName string `json:"provider_name,omitempty"`
	FieldId      string `json:"field_id,omitempty"`
	FieldValue   string `json:"field_value,omitempty"`
}

type EditOneTimeQuoteAddonParams

type EditOneTimeQuoteAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	ServicePeriod      *int32 `json:"service_period,omitempty"`
}

type EditOneTimeQuoteChargeParams

type EditOneTimeQuoteChargeParams struct {
	Amount                 *int64               `json:"amount,omitempty"`
	AmountInDecimal        string               `json:"amount_in_decimal,omitempty"`
	Description            string               `json:"description,omitempty"`
	AvalaraSaleType        enum.AvalaraSaleType `json:"avalara_sale_type,omitempty"`
	AvalaraTransactionType *int32               `json:"avalara_transaction_type,omitempty"`
	AvalaraServiceType     *int32               `json:"avalara_service_type,omitempty"`
	ServicePeriod          *int32               `json:"service_period,omitempty"`
}

type EditOneTimeQuoteRequestParams

type EditOneTimeQuoteRequestParams struct {
	PoNumber           string                                     `json:"po_number,omitempty"`
	Notes              string                                     `json:"notes,omitempty"`
	ExpiresAt          *int64                                     `json:"expires_at,omitempty"`
	CurrencyCode       string                                     `json:"currency_code,omitempty"`
	Addons             []*EditOneTimeQuoteAddonParams             `json:"addons,omitempty"`
	Charges            []*EditOneTimeQuoteChargeParams            `json:"charges,omitempty"`
	Coupon             string                                     `json:"coupon,omitempty"`
	CouponIds          []string                                   `json:"coupon_ids,omitempty"`
	ShippingAddress    *EditOneTimeQuoteShippingAddressParams     `json:"shipping_address,omitempty"`
	TaxProvidersFields []*EditOneTimeQuoteTaxProvidersFieldParams `json:"tax_providers_fields,omitempty"`
}

type EditOneTimeQuoteShippingAddressParams

type EditOneTimeQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditOneTimeQuoteTaxProvidersFieldParams added in v3.18.0

type EditOneTimeQuoteTaxProvidersFieldParams struct {
	ProviderName string `json:"provider_name,omitempty"`
	FieldId      string `json:"field_id,omitempty"`
	FieldValue   string `json:"field_value,omitempty"`
}

type EditUpdateSubscriptionQuoteAddonParams

type EditUpdateSubscriptionQuoteAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	BillingCycles      *int32 `json:"billing_cycles,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	TrialEnd           *int64 `json:"trial_end,omitempty"`
}

type EditUpdateSubscriptionQuoteBillingAddressParams

type EditUpdateSubscriptionQuoteBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditUpdateSubscriptionQuoteContractTermParams

type EditUpdateSubscriptionQuoteContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type EditUpdateSubscriptionQuoteCustomerParams

type EditUpdateSubscriptionQuoteCustomerParams struct {
	VatNumber        string `json:"vat_number,omitempty"`
	VatNumberPrefix  string `json:"vat_number_prefix,omitempty"`
	RegisteredForGst *bool  `json:"registered_for_gst,omitempty"`
}

type EditUpdateSubscriptionQuoteEventBasedAddonParams

type EditUpdateSubscriptionQuoteEventBasedAddonParams struct {
	Id                  string        `json:"id,omitempty"`
	Quantity            *int32        `json:"quantity,omitempty"`
	UnitPrice           *int64        `json:"unit_price,omitempty"`
	ServicePeriodInDays *int32        `json:"service_period_in_days,omitempty"`
	ChargeOn            enum.ChargeOn `json:"charge_on,omitempty"`
	OnEvent             enum.OnEvent  `json:"on_event,omitempty"`
	ChargeOnce          *bool         `json:"charge_once,omitempty"`
	QuantityInDecimal   string        `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal  string        `json:"unit_price_in_decimal,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsBillingAddressParams

type EditUpdateSubscriptionQuoteForItemsBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsContractTermParams

type EditUpdateSubscriptionQuoteForItemsContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsCouponParams added in v3.33.0

type EditUpdateSubscriptionQuoteForItemsCouponParams struct {
	Id        string `json:"id,omitempty"`
	StartDate *int64 `json:"start_date,omitempty"`
	EndDate   *int64 `json:"end_date,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsCustomerParams

type EditUpdateSubscriptionQuoteForItemsCustomerParams struct {
	VatNumber        string `json:"vat_number,omitempty"`
	VatNumberPrefix  string `json:"vat_number_prefix,omitempty"`
	RegisteredForGst *bool  `json:"registered_for_gst,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsDiscountParams

type EditUpdateSubscriptionQuoteForItemsDiscountParams struct {
	ApplyOn       enum.ApplyOn       `json:"apply_on,omitempty"`
	DurationType  enum.DurationType  `json:"duration_type"`
	Percentage    *float64           `json:"percentage,omitempty"`
	Amount        *int64             `json:"amount,omitempty"`
	Period        *int32             `json:"period,omitempty"`
	PeriodUnit    enum.PeriodUnit    `json:"period_unit,omitempty"`
	IncludedInMrr *bool              `json:"included_in_mrr,omitempty"`
	ItemPriceId   string             `json:"item_price_id,omitempty"`
	Quantity      *int32             `json:"quantity,omitempty"`
	OperationType enum.OperationType `json:"operation_type"`
	Id            string             `json:"id,omitempty"`
	StartDate     *int64             `json:"start_date,omitempty"`
	EndDate       *int64             `json:"end_date,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsItemTierParams

type EditUpdateSubscriptionQuoteForItemsItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
	RampTierId            string           `json:"ramp_tier_id,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsRequestParams

type EditUpdateSubscriptionQuoteForItemsRequestParams struct {
	Notes                  string                                                       `json:"notes,omitempty"`
	ExpiresAt              *int64                                                       `json:"expires_at,omitempty"`
	SubscriptionItems      []*EditUpdateSubscriptionQuoteForItemsSubscriptionItemParams `json:"subscription_items,omitempty"`
	MandatoryItemsToRemove []string                                                     `json:"mandatory_items_to_remove,omitempty"`
	ReplaceItemsList       *bool                                                        `json:"replace_items_list,omitempty"`
	Subscription           *EditUpdateSubscriptionQuoteForItemsSubscriptionParams       `json:"subscription,omitempty"`
	Discounts              []*EditUpdateSubscriptionQuoteForItemsDiscountParams         `json:"discounts,omitempty"`
	ItemTiers              []*EditUpdateSubscriptionQuoteForItemsItemTierParams         `json:"item_tiers,omitempty"`
	BillingCycles          *int32                                                       `json:"billing_cycles,omitempty"`
	TermsToCharge          *int32                                                       `json:"terms_to_charge,omitempty"`
	ReactivateFrom         *int64                                                       `json:"reactivate_from,omitempty"`
	BillingAlignmentMode   enum.BillingAlignmentMode                                    `json:"billing_alignment_mode,omitempty"`
	CouponIds              []string                                                     `json:"coupon_ids,omitempty"`
	ReplaceCouponList      *bool                                                        `json:"replace_coupon_list,omitempty"`
	ChangeOption           enum.ChangeOption                                            `json:"change_option,omitempty"`
	ChangesScheduledAt     *int64                                                       `json:"changes_scheduled_at,omitempty"`
	ForceTermReset         *bool                                                        `json:"force_term_reset,omitempty"`
	Reactivate             *bool                                                        `json:"reactivate,omitempty"`
	BillingAddress         *EditUpdateSubscriptionQuoteForItemsBillingAddressParams     `json:"billing_address,omitempty"`
	ShippingAddress        *EditUpdateSubscriptionQuoteForItemsShippingAddressParams    `json:"shipping_address,omitempty"`
	Customer               *EditUpdateSubscriptionQuoteForItemsCustomerParams           `json:"customer,omitempty"`
	ContractTerm           *EditUpdateSubscriptionQuoteForItemsContractTermParams       `json:"contract_term,omitempty"`
	NetTermDays            *int32                                                       `json:"net_term_days,omitempty"`
	Coupons                []*EditUpdateSubscriptionQuoteForItemsCouponParams           `json:"coupons,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsShippingAddressParams

type EditUpdateSubscriptionQuoteForItemsShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsSubscriptionItemParams

type EditUpdateSubscriptionQuoteForItemsSubscriptionItemParams struct {
	ItemPriceId        string              `json:"item_price_id"`
	Quantity           *int32              `json:"quantity,omitempty"`
	QuantityInDecimal  string              `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64              `json:"unit_price,omitempty"`
	UnitPriceInDecimal string              `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32              `json:"billing_cycles,omitempty"`
	TrialEnd           *int64              `json:"trial_end,omitempty"`
	ServicePeriodDays  *int32              `json:"service_period_days,omitempty"`
	ChargeOnEvent      enum.ChargeOnEvent  `json:"charge_on_event,omitempty"`
	ChargeOnce         *bool               `json:"charge_once,omitempty"`
	ChargeOnOption     enum.ChargeOnOption `json:"charge_on_option,omitempty"`
	ItemType           enum.ItemType       `json:"item_type,omitempty"`
	StartDate          *int64              `json:"start_date,omitempty"`
	EndDate            *int64              `json:"end_date,omitempty"`
	RampTierId         string              `json:"ramp_tier_id,omitempty"`
}

type EditUpdateSubscriptionQuoteForItemsSubscriptionParams

type EditUpdateSubscriptionQuoteForItemsSubscriptionParams struct {
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	Coupon                            string                    `json:"coupon,omitempty"`
	AutoCollection                    enum.AutoCollection       `json:"auto_collection,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type EditUpdateSubscriptionQuoteRequestParams

type EditUpdateSubscriptionQuoteRequestParams struct {
	Notes                   string                                              `json:"notes,omitempty"`
	ExpiresAt               *int64                                              `json:"expires_at,omitempty"`
	Subscription            *EditUpdateSubscriptionQuoteSubscriptionParams      `json:"subscription,omitempty"`
	Addons                  []*EditUpdateSubscriptionQuoteAddonParams           `json:"addons,omitempty"`
	EventBasedAddons        []*EditUpdateSubscriptionQuoteEventBasedAddonParams `json:"event_based_addons,omitempty"`
	ReplaceAddonList        *bool                                               `json:"replace_addon_list,omitempty"`
	MandatoryAddonsToRemove []string                                            `json:"mandatory_addons_to_remove,omitempty"`
	BillingCycles           *int32                                              `json:"billing_cycles,omitempty"`
	TermsToCharge           *int32                                              `json:"terms_to_charge,omitempty"`
	ReactivateFrom          *int64                                              `json:"reactivate_from,omitempty"`
	BillingAlignmentMode    enum.BillingAlignmentMode                           `json:"billing_alignment_mode,omitempty"`
	CouponIds               []string                                            `json:"coupon_ids,omitempty"`
	ReplaceCouponList       *bool                                               `json:"replace_coupon_list,omitempty"`
	ChangeOption            enum.ChangeOption                                   `json:"change_option,omitempty"`
	ChangesScheduledAt      *int64                                              `json:"changes_scheduled_at,omitempty"`
	ForceTermReset          *bool                                               `json:"force_term_reset,omitempty"`
	Reactivate              *bool                                               `json:"reactivate,omitempty"`
	BillingAddress          *EditUpdateSubscriptionQuoteBillingAddressParams    `json:"billing_address,omitempty"`
	ShippingAddress         *EditUpdateSubscriptionQuoteShippingAddressParams   `json:"shipping_address,omitempty"`
	Customer                *EditUpdateSubscriptionQuoteCustomerParams          `json:"customer,omitempty"`
	ContractTerm            *EditUpdateSubscriptionQuoteContractTermParams      `json:"contract_term,omitempty"`
}

type EditUpdateSubscriptionQuoteShippingAddressParams

type EditUpdateSubscriptionQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type EditUpdateSubscriptionQuoteSubscriptionParams

type EditUpdateSubscriptionQuoteSubscriptionParams struct {
	PlanId                            string                    `json:"plan_id,omitempty"`
	PlanQuantity                      *int32                    `json:"plan_quantity,omitempty"`
	PlanUnitPrice                     *int64                    `json:"plan_unit_price,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	PlanQuantityInDecimal             string                    `json:"plan_quantity_in_decimal,omitempty"`
	PlanUnitPriceInDecimal            string                    `json:"plan_unit_price_in_decimal,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	Coupon                            string                    `json:"coupon,omitempty"`
	AutoCollection                    enum.AutoCollection       `json:"auto_collection,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type ExtendExpiryDateRequestParams

type ExtendExpiryDateRequestParams struct {
	ValidTill *int64 `json:"valid_till"`
}

type LineItem

type LineItem struct {
	Id                      string                       `json:"id"`
	SubscriptionId          string                       `json:"subscription_id"`
	DateFrom                int64                        `json:"date_from"`
	DateTo                  int64                        `json:"date_to"`
	UnitAmount              int64                        `json:"unit_amount"`
	Quantity                int32                        `json:"quantity"`
	Amount                  int64                        `json:"amount"`
	PricingModel            enum.PricingModel            `json:"pricing_model"`
	IsTaxed                 bool                         `json:"is_taxed"`
	TaxAmount               int64                        `json:"tax_amount"`
	TaxRate                 float64                      `json:"tax_rate"`
	UnitAmountInDecimal     string                       `json:"unit_amount_in_decimal"`
	QuantityInDecimal       string                       `json:"quantity_in_decimal"`
	AmountInDecimal         string                       `json:"amount_in_decimal"`
	DiscountAmount          int64                        `json:"discount_amount"`
	ItemLevelDiscountAmount int64                        `json:"item_level_discount_amount"`
	Metered                 bool                         `json:"metered"`
	IsPercentagePricing     bool                         `json:"is_percentage_pricing"`
	ReferenceLineItemId     string                       `json:"reference_line_item_id"`
	Description             string                       `json:"description"`
	EntityDescription       string                       `json:"entity_description"`
	EntityType              quoteEnum.LineItemEntityType `json:"entity_type"`
	TaxExemptReason         enum.TaxExemptReason         `json:"tax_exempt_reason"`
	EntityId                string                       `json:"entity_id"`
	CustomerId              string                       `json:"customer_id"`
	Object                  string                       `json:"object"`
}

type LineItemDiscount

type LineItemDiscount struct {
	LineItemId     string                                 `json:"line_item_id"`
	DiscountType   quoteEnum.LineItemDiscountDiscountType `json:"discount_type"`
	CouponId       string                                 `json:"coupon_id"`
	EntityId       string                                 `json:"entity_id"`
	DiscountAmount int64                                  `json:"discount_amount"`
	Object         string                                 `json:"object"`
}

type LineItemTax

type LineItemTax struct {
	LineItemId               string            `json:"line_item_id"`
	TaxName                  string            `json:"tax_name"`
	TaxRate                  float64           `json:"tax_rate"`
	DateTo                   int64             `json:"date_to"`
	DateFrom                 int64             `json:"date_from"`
	ProratedTaxableAmount    float64           `json:"prorated_taxable_amount"`
	IsPartialTaxApplied      bool              `json:"is_partial_tax_applied"`
	IsNonComplianceTax       bool              `json:"is_non_compliance_tax"`
	TaxableAmount            int64             `json:"taxable_amount"`
	TaxAmount                int64             `json:"tax_amount"`
	TaxJurisType             enum.TaxJurisType `json:"tax_juris_type"`
	TaxJurisName             string            `json:"tax_juris_name"`
	TaxJurisCode             string            `json:"tax_juris_code"`
	TaxAmountInLocalCurrency int64             `json:"tax_amount_in_local_currency"`
	LocalCurrencyCode        string            `json:"local_currency_code"`
	Object                   string            `json:"object"`
}

type LineItemTier

type LineItemTier struct {
	LineItemId            string           `json:"line_item_id"`
	StartingUnit          int32            `json:"starting_unit"`
	EndingUnit            int32            `json:"ending_unit"`
	QuantityUsed          int32            `json:"quantity_used"`
	UnitAmount            int64            `json:"unit_amount"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal"`
	QuantityUsedInDecimal string           `json:"quantity_used_in_decimal"`
	UnitAmountInDecimal   string           `json:"unit_amount_in_decimal"`
	PricingType           enum.PricingType `json:"pricing_type"`
	PackageSize           int32            `json:"package_size"`
	Object                string           `json:"object"`
}

type ListRequestParams

type ListRequestParams struct {
	Limit          *int32                  `json:"limit,omitempty"`
	Offset         string                  `json:"offset,omitempty"`
	IncludeDeleted *bool                   `json:"include_deleted,omitempty"`
	Id             *filter.StringFilter    `json:"id,omitempty"`
	CustomerId     *filter.StringFilter    `json:"customer_id,omitempty"`
	SubscriptionId *filter.StringFilter    `json:"subscription_id,omitempty"`
	Status         *filter.EnumFilter      `json:"status,omitempty"`
	Date           *filter.TimestampFilter `json:"date,omitempty"`
	UpdatedAt      *filter.TimestampFilter `json:"updated_at,omitempty"`
	SortBy         *filter.SortFilter      `json:"sort_by,omitempty"`
}

type PdfRequestParams

type PdfRequestParams struct {
	ConsolidatedView *bool                `json:"consolidated_view,omitempty"`
	DispositionType  enum.DispositionType `json:"disposition_type,omitempty"`
}

type Quote

type Quote struct {
	Id                         string                  `json:"id"`
	Name                       string                  `json:"name"`
	PoNumber                   string                  `json:"po_number"`
	CustomerId                 string                  `json:"customer_id"`
	SubscriptionId             string                  `json:"subscription_id"`
	InvoiceId                  string                  `json:"invoice_id"`
	Status                     quoteEnum.Status        `json:"status"`
	OperationType              quoteEnum.OperationType `json:"operation_type"`
	VatNumber                  string                  `json:"vat_number"`
	PriceType                  enum.PriceType          `json:"price_type"`
	ValidTill                  int64                   `json:"valid_till"`
	Date                       int64                   `json:"date"`
	TotalPayable               int64                   `json:"total_payable"`
	ChargeOnAcceptance         int64                   `json:"charge_on_acceptance"`
	SubTotal                   int64                   `json:"sub_total"`
	Total                      int64                   `json:"total"`
	CreditsApplied             int64                   `json:"credits_applied"`
	AmountPaid                 int64                   `json:"amount_paid"`
	AmountDue                  int64                   `json:"amount_due"`
	Version                    int32                   `json:"version"`
	ResourceVersion            int64                   `json:"resource_version"`
	UpdatedAt                  int64                   `json:"updated_at"`
	VatNumberPrefix            string                  `json:"vat_number_prefix"`
	LineItems                  []*LineItem             `json:"line_items"`
	LineItemTiers              []*LineItemTier         `json:"line_item_tiers"`
	LineItemDiscounts          []*LineItemDiscount     `json:"line_item_discounts"`
	LineItemTaxes              []*LineItemTax          `json:"line_item_taxes"`
	Discounts                  []*Discount             `json:"discounts"`
	Taxes                      []*Tax                  `json:"taxes"`
	TaxCategory                string                  `json:"tax_category"`
	CurrencyCode               string                  `json:"currency_code"`
	Notes                      json.RawMessage         `json:"notes"`
	ShippingAddress            *ShippingAddress        `json:"shipping_address"`
	BillingAddress             *BillingAddress         `json:"billing_address"`
	ContractTermStart          int64                   `json:"contract_term_start"`
	ContractTermEnd            int64                   `json:"contract_term_end"`
	ContractTermTerminationFee int64                   `json:"contract_term_termination_fee"`
	BusinessEntityId           string                  `json:"business_entity_id"`
	Deleted                    bool                    `json:"deleted"`
	TotalContractValue         int64                   `json:"total_contract_value"`
	TotalDiscount              int64                   `json:"total_discount"`
	CustomField                map[string]interface{}  `json:"custom_field"`
	Object                     string                  `json:"object"`
}

type QuoteLineGroupsForQuoteRequestParams

type QuoteLineGroupsForQuoteRequestParams struct {
	Limit  *int32 `json:"limit,omitempty"`
	Offset string `json:"offset,omitempty"`
}

type ShippingAddress

type ShippingAddress struct {
	FirstName        string                `json:"first_name"`
	LastName         string                `json:"last_name"`
	Email            string                `json:"email"`
	Company          string                `json:"company"`
	Phone            string                `json:"phone"`
	Line1            string                `json:"line1"`
	Line2            string                `json:"line2"`
	Line3            string                `json:"line3"`
	City             string                `json:"city"`
	StateCode        string                `json:"state_code"`
	State            string                `json:"state"`
	Country          string                `json:"country"`
	Zip              string                `json:"zip"`
	ValidationStatus enum.ValidationStatus `json:"validation_status"`
	Object           string                `json:"object"`
}

type Tax

type Tax struct {
	Name        string `json:"name"`
	Amount      int64  `json:"amount"`
	Description string `json:"description"`
	Object      string `json:"object"`
}

type UpdateStatusRequestParams

type UpdateStatusRequestParams struct {
	Status  quoteEnum.Status `json:"status"`
	Comment string           `json:"comment,omitempty"`
}

type UpdateSubscriptionQuoteAddonParams

type UpdateSubscriptionQuoteAddonParams struct {
	Id                 string `json:"id,omitempty"`
	Quantity           *int32 `json:"quantity,omitempty"`
	UnitPrice          *int64 `json:"unit_price,omitempty"`
	BillingCycles      *int32 `json:"billing_cycles,omitempty"`
	QuantityInDecimal  string `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal string `json:"unit_price_in_decimal,omitempty"`
	TrialEnd           *int64 `json:"trial_end,omitempty"`
}

type UpdateSubscriptionQuoteBillingAddressParams

type UpdateSubscriptionQuoteBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type UpdateSubscriptionQuoteContractTermParams

type UpdateSubscriptionQuoteContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type UpdateSubscriptionQuoteCustomerParams

type UpdateSubscriptionQuoteCustomerParams struct {
	VatNumber        string `json:"vat_number,omitempty"`
	VatNumberPrefix  string `json:"vat_number_prefix,omitempty"`
	RegisteredForGst *bool  `json:"registered_for_gst,omitempty"`
}

type UpdateSubscriptionQuoteEventBasedAddonParams

type UpdateSubscriptionQuoteEventBasedAddonParams struct {
	Id                  string        `json:"id,omitempty"`
	Quantity            *int32        `json:"quantity,omitempty"`
	UnitPrice           *int64        `json:"unit_price,omitempty"`
	ServicePeriodInDays *int32        `json:"service_period_in_days,omitempty"`
	ChargeOn            enum.ChargeOn `json:"charge_on,omitempty"`
	OnEvent             enum.OnEvent  `json:"on_event,omitempty"`
	ChargeOnce          *bool         `json:"charge_once,omitempty"`
	QuantityInDecimal   string        `json:"quantity_in_decimal,omitempty"`
	UnitPriceInDecimal  string        `json:"unit_price_in_decimal,omitempty"`
}

type UpdateSubscriptionQuoteForItemsBillingAddressParams

type UpdateSubscriptionQuoteForItemsBillingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type UpdateSubscriptionQuoteForItemsContractTermParams

type UpdateSubscriptionQuoteForItemsContractTermParams struct {
	ActionAtTermEnd          contractTermEnum.ActionAtTermEnd `json:"action_at_term_end,omitempty"`
	CancellationCutoffPeriod *int32                           `json:"cancellation_cutoff_period,omitempty"`
}

type UpdateSubscriptionQuoteForItemsCouponParams added in v3.33.0

type UpdateSubscriptionQuoteForItemsCouponParams struct {
	Id        string `json:"id,omitempty"`
	StartDate *int64 `json:"start_date,omitempty"`
	EndDate   *int64 `json:"end_date,omitempty"`
}

type UpdateSubscriptionQuoteForItemsCustomerParams

type UpdateSubscriptionQuoteForItemsCustomerParams struct {
	VatNumber        string `json:"vat_number,omitempty"`
	VatNumberPrefix  string `json:"vat_number_prefix,omitempty"`
	RegisteredForGst *bool  `json:"registered_for_gst,omitempty"`
}

type UpdateSubscriptionQuoteForItemsDiscountParams

type UpdateSubscriptionQuoteForItemsDiscountParams struct {
	ApplyOn       enum.ApplyOn       `json:"apply_on,omitempty"`
	DurationType  enum.DurationType  `json:"duration_type"`
	Percentage    *float64           `json:"percentage,omitempty"`
	Amount        *int64             `json:"amount,omitempty"`
	Period        *int32             `json:"period,omitempty"`
	PeriodUnit    enum.PeriodUnit    `json:"period_unit,omitempty"`
	IncludedInMrr *bool              `json:"included_in_mrr,omitempty"`
	ItemPriceId   string             `json:"item_price_id,omitempty"`
	Quantity      *int32             `json:"quantity,omitempty"`
	OperationType enum.OperationType `json:"operation_type"`
	Id            string             `json:"id,omitempty"`
	StartDate     *int64             `json:"start_date,omitempty"`
	EndDate       *int64             `json:"end_date,omitempty"`
}

type UpdateSubscriptionQuoteForItemsItemTierParams

type UpdateSubscriptionQuoteForItemsItemTierParams struct {
	ItemPriceId           string           `json:"item_price_id,omitempty"`
	StartingUnit          *int32           `json:"starting_unit,omitempty"`
	EndingUnit            *int32           `json:"ending_unit,omitempty"`
	Price                 *int64           `json:"price,omitempty"`
	StartingUnitInDecimal string           `json:"starting_unit_in_decimal,omitempty"`
	EndingUnitInDecimal   string           `json:"ending_unit_in_decimal,omitempty"`
	PriceInDecimal        string           `json:"price_in_decimal,omitempty"`
	PricingType           enum.PricingType `json:"pricing_type,omitempty"`
	PackageSize           *int32           `json:"package_size,omitempty"`
	RampTierId            string           `json:"ramp_tier_id,omitempty"`
}

type UpdateSubscriptionQuoteForItemsRequestParams

type UpdateSubscriptionQuoteForItemsRequestParams struct {
	Name                   string                                                   `json:"name,omitempty"`
	Notes                  string                                                   `json:"notes,omitempty"`
	ExpiresAt              *int64                                                   `json:"expires_at,omitempty"`
	Subscription           *UpdateSubscriptionQuoteForItemsSubscriptionParams       `json:"subscription,omitempty"`
	SubscriptionItems      []*UpdateSubscriptionQuoteForItemsSubscriptionItemParams `json:"subscription_items,omitempty"`
	MandatoryItemsToRemove []string                                                 `json:"mandatory_items_to_remove,omitempty"`
	ReplaceItemsList       *bool                                                    `json:"replace_items_list,omitempty"`
	Discounts              []*UpdateSubscriptionQuoteForItemsDiscountParams         `json:"discounts,omitempty"`
	ItemTiers              []*UpdateSubscriptionQuoteForItemsItemTierParams         `json:"item_tiers,omitempty"`
	BillingCycles          *int32                                                   `json:"billing_cycles,omitempty"`
	TermsToCharge          *int32                                                   `json:"terms_to_charge,omitempty"`
	ReactivateFrom         *int64                                                   `json:"reactivate_from,omitempty"`
	BillingAlignmentMode   enum.BillingAlignmentMode                                `json:"billing_alignment_mode,omitempty"`
	CouponIds              []string                                                 `json:"coupon_ids,omitempty"`
	ReplaceCouponList      *bool                                                    `json:"replace_coupon_list,omitempty"`
	ChangeOption           enum.ChangeOption                                        `json:"change_option,omitempty"`
	ChangesScheduledAt     *int64                                                   `json:"changes_scheduled_at,omitempty"`
	ForceTermReset         *bool                                                    `json:"force_term_reset,omitempty"`
	Reactivate             *bool                                                    `json:"reactivate,omitempty"`
	BillingAddress         *UpdateSubscriptionQuoteForItemsBillingAddressParams     `json:"billing_address,omitempty"`
	ShippingAddress        *UpdateSubscriptionQuoteForItemsShippingAddressParams    `json:"shipping_address,omitempty"`
	Customer               *UpdateSubscriptionQuoteForItemsCustomerParams           `json:"customer,omitempty"`
	ContractTerm           *UpdateSubscriptionQuoteForItemsContractTermParams       `json:"contract_term,omitempty"`
	NetTermDays            *int32                                                   `json:"net_term_days,omitempty"`
	Coupons                []*UpdateSubscriptionQuoteForItemsCouponParams           `json:"coupons,omitempty"`
}

type UpdateSubscriptionQuoteForItemsShippingAddressParams

type UpdateSubscriptionQuoteForItemsShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type UpdateSubscriptionQuoteForItemsSubscriptionItemParams

type UpdateSubscriptionQuoteForItemsSubscriptionItemParams struct {
	ItemPriceId        string              `json:"item_price_id"`
	Quantity           *int32              `json:"quantity,omitempty"`
	QuantityInDecimal  string              `json:"quantity_in_decimal,omitempty"`
	UnitPrice          *int64              `json:"unit_price,omitempty"`
	UnitPriceInDecimal string              `json:"unit_price_in_decimal,omitempty"`
	BillingCycles      *int32              `json:"billing_cycles,omitempty"`
	TrialEnd           *int64              `json:"trial_end,omitempty"`
	ServicePeriodDays  *int32              `json:"service_period_days,omitempty"`
	ChargeOnEvent      enum.ChargeOnEvent  `json:"charge_on_event,omitempty"`
	ChargeOnce         *bool               `json:"charge_once,omitempty"`
	ChargeOnOption     enum.ChargeOnOption `json:"charge_on_option,omitempty"`
	ItemType           enum.ItemType       `json:"item_type,omitempty"`
	StartDate          *int64              `json:"start_date,omitempty"`
	EndDate            *int64              `json:"end_date,omitempty"`
	RampTierId         string              `json:"ramp_tier_id,omitempty"`
}

type UpdateSubscriptionQuoteForItemsSubscriptionParams

type UpdateSubscriptionQuoteForItemsSubscriptionParams struct {
	Id                                string                    `json:"id"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	Coupon                            string                    `json:"coupon,omitempty"`
	AutoCollection                    enum.AutoCollection       `json:"auto_collection,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

type UpdateSubscriptionQuoteRequestParams

type UpdateSubscriptionQuoteRequestParams struct {
	Name                    string                                          `json:"name,omitempty"`
	Notes                   string                                          `json:"notes,omitempty"`
	ExpiresAt               *int64                                          `json:"expires_at,omitempty"`
	Subscription            *UpdateSubscriptionQuoteSubscriptionParams      `json:"subscription,omitempty"`
	Addons                  []*UpdateSubscriptionQuoteAddonParams           `json:"addons,omitempty"`
	EventBasedAddons        []*UpdateSubscriptionQuoteEventBasedAddonParams `json:"event_based_addons,omitempty"`
	ReplaceAddonList        *bool                                           `json:"replace_addon_list,omitempty"`
	MandatoryAddonsToRemove []string                                        `json:"mandatory_addons_to_remove,omitempty"`
	BillingCycles           *int32                                          `json:"billing_cycles,omitempty"`
	TermsToCharge           *int32                                          `json:"terms_to_charge,omitempty"`
	ReactivateFrom          *int64                                          `json:"reactivate_from,omitempty"`
	BillingAlignmentMode    enum.BillingAlignmentMode                       `json:"billing_alignment_mode,omitempty"`
	CouponIds               []string                                        `json:"coupon_ids,omitempty"`
	ReplaceCouponList       *bool                                           `json:"replace_coupon_list,omitempty"`
	ChangeOption            enum.ChangeOption                               `json:"change_option,omitempty"`
	ChangesScheduledAt      *int64                                          `json:"changes_scheduled_at,omitempty"`
	ForceTermReset          *bool                                           `json:"force_term_reset,omitempty"`
	Reactivate              *bool                                           `json:"reactivate,omitempty"`
	BillingAddress          *UpdateSubscriptionQuoteBillingAddressParams    `json:"billing_address,omitempty"`
	ShippingAddress         *UpdateSubscriptionQuoteShippingAddressParams   `json:"shipping_address,omitempty"`
	Customer                *UpdateSubscriptionQuoteCustomerParams          `json:"customer,omitempty"`
	ContractTerm            *UpdateSubscriptionQuoteContractTermParams      `json:"contract_term,omitempty"`
}

type UpdateSubscriptionQuoteShippingAddressParams

type UpdateSubscriptionQuoteShippingAddressParams struct {
	FirstName        string                `json:"first_name,omitempty"`
	LastName         string                `json:"last_name,omitempty"`
	Email            string                `json:"email,omitempty"`
	Company          string                `json:"company,omitempty"`
	Phone            string                `json:"phone,omitempty"`
	Line1            string                `json:"line1,omitempty"`
	Line2            string                `json:"line2,omitempty"`
	Line3            string                `json:"line3,omitempty"`
	City             string                `json:"city,omitempty"`
	StateCode        string                `json:"state_code,omitempty"`
	State            string                `json:"state,omitempty"`
	Zip              string                `json:"zip,omitempty"`
	Country          string                `json:"country,omitempty"`
	ValidationStatus enum.ValidationStatus `json:"validation_status,omitempty"`
}

type UpdateSubscriptionQuoteSubscriptionParams

type UpdateSubscriptionQuoteSubscriptionParams struct {
	Id                                string                    `json:"id"`
	PlanId                            string                    `json:"plan_id,omitempty"`
	PlanQuantity                      *int32                    `json:"plan_quantity,omitempty"`
	PlanUnitPrice                     *int64                    `json:"plan_unit_price,omitempty"`
	SetupFee                          *int64                    `json:"setup_fee,omitempty"`
	PlanQuantityInDecimal             string                    `json:"plan_quantity_in_decimal,omitempty"`
	PlanUnitPriceInDecimal            string                    `json:"plan_unit_price_in_decimal,omitempty"`
	StartDate                         *int64                    `json:"start_date,omitempty"`
	TrialEnd                          *int64                    `json:"trial_end,omitempty"`
	Coupon                            string                    `json:"coupon,omitempty"`
	AutoCollection                    enum.AutoCollection       `json:"auto_collection,omitempty"`
	OfflinePaymentMethod              enum.OfflinePaymentMethod `json:"offline_payment_method,omitempty"`
	ContractTermBillingCycleOnRenewal *int32                    `json:"contract_term_billing_cycle_on_renewal,omitempty"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL