squareup 2.13.0

Rust SDK for the Square Developer API
Documentation
//! Model struct for OrderLineItemAppliedDiscount type

use serde::{Deserialize, Serialize};

use super::Money;

/// Represents an applied portion of a discount to a line item in an order.
///
/// Order scoped discounts have automatically applied discounts present for each line item.
/// Line-item scoped discounts must have applied discounts added manually for any applicable line
/// items. The corresponding applied money is automatically computed based on participating line
/// items.
#[derive(Clone, Debug, Default, Deserialize, Eq, PartialEq, Serialize)]
pub struct OrderLineItemAppliedDiscount {
    /// A unique ID that identifies the applied discount only within this order.
    pub uid: Option<String>,
    /// The `uid` of the discount that the applied discount represents. It must reference a discount
    /// present in the `order.discounts` field.
    ///
    /// This field is immutable. To change which discounts apply to a line item, you must delete the
    /// discount and re-add it as a new `OrderLineItemAppliedDiscount`.
    pub discount_uid: String,
    /// **Read only** The amount of money applied by the discount to the line item.
    pub applied_money: Option<Money>,
}