pub struct GiftCards { /* private fields */ }Expand description
Gift card operations for issuing, charging, and refunding.
Implementations§
Source§impl GiftCards
impl GiftCards
Sourcepub fn is_supported(&self) -> bool
pub fn is_supported(&self) -> bool
Whether gift cards are supported by the active backend.
Sourcepub fn create(&self, input: CreateGiftCard) -> Result<GiftCard>
pub fn create(&self, input: CreateGiftCard) -> Result<GiftCard>
Create a new gift card.
§Example
ⓘ
use stateset_embedded::{Commerce, CreateGiftCard, CustomerId};
use rust_decimal_macros::dec;
let commerce = Commerce::new("./store.db")?;
let gift_card = commerce.gift_cards().create(CreateGiftCard {
initial_balance: dec!(100.00),
customer_id: Some(CustomerId::new()),
..Default::default()
})?;Sourcepub fn get_by_code(&self, code: &str) -> Result<Option<GiftCard>>
pub fn get_by_code(&self, code: &str) -> Result<Option<GiftCard>>
Get a gift card by its unique code.
Sourcepub fn update(&self, id: GiftCardId, input: UpdateGiftCard) -> Result<GiftCard>
pub fn update(&self, id: GiftCardId, input: UpdateGiftCard) -> Result<GiftCard>
Update a gift card.
Sourcepub fn list(&self, filter: GiftCardFilter) -> Result<Vec<GiftCard>>
pub fn list(&self, filter: GiftCardFilter) -> Result<Vec<GiftCard>>
List gift cards with optional filtering.
Sourcepub fn charge(
&self,
id: GiftCardId,
amount: Decimal,
reference_id: Option<String>,
) -> Result<GiftCardTransaction>
pub fn charge( &self, id: GiftCardId, amount: Decimal, reference_id: Option<String>, ) -> Result<GiftCardTransaction>
Charge (debit) a gift card.
Reduces the gift card balance by the specified amount.
Sourcepub fn refund(
&self,
id: GiftCardId,
amount: Decimal,
reference_id: Option<String>,
) -> Result<GiftCardTransaction>
pub fn refund( &self, id: GiftCardId, amount: Decimal, reference_id: Option<String>, ) -> Result<GiftCardTransaction>
Refund (credit) to a gift card.
Increases the gift card balance by the specified amount.
Sourcepub fn disable(&self, id: GiftCardId) -> Result<GiftCard>
pub fn disable(&self, id: GiftCardId) -> Result<GiftCard>
Disable a gift card so it can no longer be used.
Sourcepub fn get_transactions(
&self,
gift_card_id: GiftCardId,
) -> Result<Vec<GiftCardTransaction>>
pub fn get_transactions( &self, gift_card_id: GiftCardId, ) -> Result<Vec<GiftCardTransaction>>
Get transaction history for a gift card.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for GiftCards
impl !UnwindSafe for GiftCards
impl Freeze for GiftCards
impl Send for GiftCards
impl Sync for GiftCards
impl Unpin for GiftCards
impl UnsafeUnpin for GiftCards
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more