Reference documentation and code samples for the Cloud Commerce Producer V1BETA API class Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term.
Configurations for the offer term and renewal options. Extending a private offer to a customer that covers a given term constitutes a guarantee to the customer that the product will remain available to them for the duration of the term.
Inherits
- Object
Extended By
- Google::Protobuf::MessageExts::ClassMethods
Includes
- Google::Protobuf::MessageExts
Methods
#duration_months
def duration_months() -> ::Integer-
(::Integer) — Optional. Duration in months of the offer term.
The offer will end on the same day of the month after this duration. If
that date is not available, the offer will end on the last day of the
month. For example, if the offer starts on 01/31/2024 and the duration
is 13 months, the offer will end on 02/28/2025.
Must be set to publish the offer if the end policy is
AFTER_DURATIONorMATCH_AMENDED_OFFER, and must be a positive value.The maximum possible offer duration, including all renewal terms, cannot exceed 7 years. For example, if
duration_monthsis 9 andterm.max_renewal_countis 9, then the maximum possible offer duration is 90 months and exceeds the 7 year limit.Note: The following fields are mutually exclusive:
duration_months,scheduled_end_time. If a field in that set is populated, all other fields in the set will automatically be cleared.
#duration_months=
def duration_months=(value) -> ::Integer-
value (::Integer) — Optional. Duration in months of the offer term.
The offer will end on the same day of the month after this duration. If
that date is not available, the offer will end on the last day of the
month. For example, if the offer starts on 01/31/2024 and the duration
is 13 months, the offer will end on 02/28/2025.
Must be set to publish the offer if the end policy is
AFTER_DURATIONorMATCH_AMENDED_OFFER, and must be a positive value.The maximum possible offer duration, including all renewal terms, cannot exceed 7 years. For example, if
duration_monthsis 9 andterm.max_renewal_countis 9, then the maximum possible offer duration is 90 months and exceeds the 7 year limit.Note: The following fields are mutually exclusive:
duration_months,scheduled_end_time. If a field in that set is populated, all other fields in the set will automatically be cleared.
-
(::Integer) — Optional. Duration in months of the offer term.
The offer will end on the same day of the month after this duration. If
that date is not available, the offer will end on the last day of the
month. For example, if the offer starts on 01/31/2024 and the duration
is 13 months, the offer will end on 02/28/2025.
Must be set to publish the offer if the end policy is
AFTER_DURATIONorMATCH_AMENDED_OFFER, and must be a positive value.The maximum possible offer duration, including all renewal terms, cannot exceed 7 years. For example, if
duration_monthsis 9 andterm.max_renewal_countis 9, then the maximum possible offer duration is 90 months and exceeds the 7 year limit.Note: The following fields are mutually exclusive:
duration_months,scheduled_end_time. If a field in that set is populated, all other fields in the set will automatically be cleared.
#effective_term_end_time
def effective_term_end_time() -> ::Google::Type::DateTime-
(::Google::Type::DateTime) —
Output only. The expected end time of the current offer term.
At the end of each offer term, an offer associated with an active order will either renew or end. When an offer renews, a new term begins and this value changes to reflect the end time of the new term. When an offer ends this value is no longer set and instead
end_timeis set.When the term of an offer ends and the offer does not renew, the associated order also ends if the base standard offer has a subscription price model. Otherwise, the associated order does not end and remains active.
Not included for PRIVATE_OFFER_VIEW_BASIC. Included for PRIVATE_OFFER_VIEW_FULL when the offer has not ended and either the offer has started or the value can be derived from other fields.
For offers that have not started, this field is set when one of the following conditions is true.
- The offer sets
term.scheduled_end_time. - The offer sets
term.scheduled_start_timeandterm.duration_months, the offer'sterm.end_policyis notMATCH_AMENDED_OFFER, and the offer does not have standard_interval set toMONTHLY_POSTPAY.
- The offer sets
#end_policy
def end_policy() -> ::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::EndPolicy- (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::EndPolicy) — Optional. Defines when an offer should end. Must be set when publishing the offer.
#end_policy=
def end_policy=(value) -> ::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::EndPolicy- value (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::EndPolicy) — Optional. Defines when an offer should end. Must be set when publishing the offer.
- (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::EndPolicy) — Optional. Defines when an offer should end. Must be set when publishing the offer.
#max_renewal_count
def max_renewal_count() -> ::Integer-
(::Integer) — Optional. The max number of renewals allowed, after the initial term
ends. This field is only relevant to standard interval offers with
interval of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED',
'QUARTERLY_NOT_PRORATED' or 'YEARLY_NOT_PRORATED'. Other types of
offers cannot be renewed.
For example, if the initial term is 1 year and the max renewals is 3, the customer can renew the offer for up to 3 additional years after the initial term ends. Customers control whether they renew the offer.
Allowing a customer to renew an offer does not constitute a guarantee to the customer that the offered product will still be available to be renewed at the renewal date.
An offer with a max renewal count of 0 cannot be renewed. Must be non-negative.
Note: The following fields are mutually exclusive:
max_renewal_count,unlimited_renewal. If a field in that set is populated, all other fields in the set will automatically be cleared.
#max_renewal_count=
def max_renewal_count=(value) -> ::Integer-
value (::Integer) — Optional. The max number of renewals allowed, after the initial term
ends. This field is only relevant to standard interval offers with
interval of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED',
'QUARTERLY_NOT_PRORATED' or 'YEARLY_NOT_PRORATED'. Other types of
offers cannot be renewed.
For example, if the initial term is 1 year and the max renewals is 3, the customer can renew the offer for up to 3 additional years after the initial term ends. Customers control whether they renew the offer.
Allowing a customer to renew an offer does not constitute a guarantee to the customer that the offered product will still be available to be renewed at the renewal date.
An offer with a max renewal count of 0 cannot be renewed. Must be non-negative.
Note: The following fields are mutually exclusive:
max_renewal_count,unlimited_renewal. If a field in that set is populated, all other fields in the set will automatically be cleared.
-
(::Integer) — Optional. The max number of renewals allowed, after the initial term
ends. This field is only relevant to standard interval offers with
interval of 'MONTHLY_PRORATED', 'MONTHLY_NOT_PRORATED',
'QUARTERLY_NOT_PRORATED' or 'YEARLY_NOT_PRORATED'. Other types of
offers cannot be renewed.
For example, if the initial term is 1 year and the max renewals is 3, the customer can renew the offer for up to 3 additional years after the initial term ends. Customers control whether they renew the offer.
Allowing a customer to renew an offer does not constitute a guarantee to the customer that the offered product will still be available to be renewed at the renewal date.
An offer with a max renewal count of 0 cannot be renewed. Must be non-negative.
Note: The following fields are mutually exclusive:
max_renewal_count,unlimited_renewal. If a field in that set is populated, all other fields in the set will automatically be cleared.
#scheduled_end_time
def scheduled_end_time() -> ::Google::Type::DateTime-
(::Google::Type::DateTime) — Optional. Specified end time of the offer.
Must be set to publish the offer if the end policy is
SCHEDULED_END_TIME. When set, the time must be in the future and at a day boundary in the America/Los_Angeles time zone, and must be afterterm.scheduled_start_timeif applicable.Note: The following fields are mutually exclusive:
scheduled_end_time,duration_months. If a field in that set is populated, all other fields in the set will automatically be cleared.
#scheduled_end_time=
def scheduled_end_time=(value) -> ::Google::Type::DateTime-
value (::Google::Type::DateTime) — Optional. Specified end time of the offer.
Must be set to publish the offer if the end policy is
SCHEDULED_END_TIME. When set, the time must be in the future and at a day boundary in the America/Los_Angeles time zone, and must be afterterm.scheduled_start_timeif applicable.Note: The following fields are mutually exclusive:
scheduled_end_time,duration_months. If a field in that set is populated, all other fields in the set will automatically be cleared.
-
(::Google::Type::DateTime) — Optional. Specified end time of the offer.
Must be set to publish the offer if the end policy is
SCHEDULED_END_TIME. When set, the time must be in the future and at a day boundary in the America/Los_Angeles time zone, and must be afterterm.scheduled_start_timeif applicable.Note: The following fields are mutually exclusive:
scheduled_end_time,duration_months. If a field in that set is populated, all other fields in the set will automatically be cleared.
#scheduled_start_time
def scheduled_start_time() -> ::Google::Type::DateTime-
(::Google::Type::DateTime) —
Optional. The scheduled start time of the offer. Cannot exceed one year from the time of publish.
If the start policy is
SCHEDULED_START_TIME, a future time at a day boundary in the America/Los_Angeles time zone must be provided when publishing the offer.If the offer amends another private or standard offer, then the scheduled start time must be:
- Before or equal to the amended offer's end time if the offer's end policy is not MATCH_AMENDED_OFFER. Otherwise, it has to be strictly before the amended offer's end time.
- Before or equal to the start time of the next pending installment of
the amended offer, if amending a private offer with custom
installments. For example, if the amended offer has installments on
01/01, 02/01, 03/01, 04/01, and today is 02/15, then the new offer's
scheduled_start_timemust be at or before 03/01.
#scheduled_start_time=
def scheduled_start_time=(value) -> ::Google::Type::DateTime-
value (::Google::Type::DateTime) —
Optional. The scheduled start time of the offer. Cannot exceed one year from the time of publish.
If the start policy is
SCHEDULED_START_TIME, a future time at a day boundary in the America/Los_Angeles time zone must be provided when publishing the offer.If the offer amends another private or standard offer, then the scheduled start time must be:
- Before or equal to the amended offer's end time if the offer's end policy is not MATCH_AMENDED_OFFER. Otherwise, it has to be strictly before the amended offer's end time.
- Before or equal to the start time of the next pending installment of
the amended offer, if amending a private offer with custom
installments. For example, if the amended offer has installments on
01/01, 02/01, 03/01, 04/01, and today is 02/15, then the new offer's
scheduled_start_timemust be at or before 03/01.
-
(::Google::Type::DateTime) —
Optional. The scheduled start time of the offer. Cannot exceed one year from the time of publish.
If the start policy is
SCHEDULED_START_TIME, a future time at a day boundary in the America/Los_Angeles time zone must be provided when publishing the offer.If the offer amends another private or standard offer, then the scheduled start time must be:
- Before or equal to the amended offer's end time if the offer's end policy is not MATCH_AMENDED_OFFER. Otherwise, it has to be strictly before the amended offer's end time.
- Before or equal to the start time of the next pending installment of
the amended offer, if amending a private offer with custom
installments. For example, if the amended offer has installments on
01/01, 02/01, 03/01, 04/01, and today is 02/15, then the new offer's
scheduled_start_timemust be at or before 03/01.
#start_policy
def start_policy() -> ::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::StartPolicy- (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::StartPolicy) — Optional. Defines when the resulting order should start. Must be set when publishing the offer.
#start_policy=
def start_policy=(value) -> ::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::StartPolicy- value (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::StartPolicy) — Optional. Defines when the resulting order should start. Must be set when publishing the offer.
- (::Google::Cloud::CommerceProducer::V1beta::PrivateOffer::Term::StartPolicy) — Optional. Defines when the resulting order should start. Must be set when publishing the offer.
#unlimited_renewal
def unlimited_renewal() -> ::Boolean-
(::Boolean) — Output only. Deprecated: This field can only be true on existing offers
with standard interval of 'MONTHLY_POSTPAY'. As of May 2024, we no
longer allow unlimited renewals.
Note: The following fields are mutually exclusive:
unlimited_renewal,max_renewal_count. If a field in that set is populated, all other fields in the set will automatically be cleared.