Struct Subscription

Source
pub struct Subscription {
Show 17 fields pub id: Option<String>, pub location_id: Option<String>, pub plan_id: Option<String>, pub customer_id: Option<String>, pub start_date: Option<String>, pub canceled_date: Option<String>, pub charged_through_date: Option<String>, pub status: Option<SubscriptionStatus>, pub tax_percentage: Option<String>, pub invoice_ids: Option<Vec<String>>, pub price_override_money: Option<Money>, pub version: Option<i64>, pub create_at: Option<DateTime>, pub card_id: Option<String>, pub timezone: Option<Timezone>, pub source: Option<SubscriptionSource>, pub actions: Option<Vec<SubscriptionAction>>,
}
Expand description

Represents a subscription to a subscription plan by a subscriber.

For an overview of the Subscription type, see Subscription object.

Fields§

§id: Option<String>

Read only The Square-assigned ID of the subscription.

Max Length: 255

§location_id: Option<String>

Read only The ID of the location associated with the subscription.

§plan_id: Option<String>

Read only The ID of the subscribed-to subscription plan.

§customer_id: Option<String>

Read only The ID of the subscribing customer profile.

§start_date: Option<String>

Read only The YYYY-MM-DD-formatted date (for example, 2013-01-15) to start the subscription.

§canceled_date: Option<String>

The YYYY-MM-DD-formatted date (for example, 2013-01-15) to cancel the subscription, when the subscription status changes to CANCELED and the subscription billing stops.

If this field is not set, the subscription ends according its subscription plan.

This field cannot be updated, other than being cleared.

§charged_through_date: Option<String>

Read only The YYYY-MM-DD-formatted date up to when the subscriber is invoiced for the subscription.

After the invoice is sent for a given billing period, this date will be the last day of the billing period. For example, suppose for the month of May a subscriber gets an invoice (or charged the card) on May 1. For the monthly billing scenario, this date is then set to May 31.

§status: Option<SubscriptionStatus>

Read only The current status of the subscription.

§tax_percentage: Option<String>

The tax amount applied when billing the subscription. The percentage is expressed in decimal form, using a '.' as the decimal separator and without a '%' sign. For example, a value of 7.5 corresponds to 7.5%.

§invoice_ids: Option<Vec<String>>

Read only The IDs of the invoices created for the subscription, listed in order when the invoices were created (newest invoices appear first).

§price_override_money: Option<Money>

A custom price to apply for the subscription. If specified, it overrides the price configured by the subscription plan.

§version: Option<i64>

The version of the object. When updating an object, the version supplied must match the version in the database, otherwise the write will be rejected as conflicting.

§create_at: Option<DateTime>

Read only The timestamp when the subscription was created, in RFC 3339 format.

§card_id: Option<String>

The ID of the subscriber’s card used to charge for the subscription.

§timezone: Option<Timezone>

Read only Timezone that will be used in date calculations for the subscription. Defaults to the timezone of the location based on location_id. Format: the IANA Timezone Database identifier for the location timezone (for example, America/Los_Angeles).

§source: Option<SubscriptionSource>

The origination details of the subscription.

§actions: Option<Vec<SubscriptionAction>>

The list of scheduled actions on this subscription. It is set only in the response from RetrieveSubscription with the query parameter of include=actions or from SearchSubscriptions with the input parameter of include:["actions"].

Trait Implementations§

Source§

impl Clone for Subscription

Source§

fn clone(&self) -> Subscription

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Subscription

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Subscription

Source§

fn default() -> Subscription

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Subscription

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for Subscription

Source§

fn eq(&self, other: &Subscription) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Subscription

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Eq for Subscription

Source§

impl StructuralPartialEq for Subscription

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,