wave-api 0.1.0

Typed Rust client for the Wave Accounting GraphQL API
Documentation
use chrono::{DateTime, Utc};
use rust_decimal::Decimal;
use serde::Deserialize;

use super::account::Account;
use super::sales_tax::SalesTax;

/// A product or service.
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Product {
    pub id: String,
    pub name: String,
    pub description: Option<String>,
    pub unit_price: Decimal,
    pub is_sold: bool,
    pub is_bought: bool,
    pub is_archived: bool,
    pub income_account: Option<Account>,
    pub expense_account: Option<Account>,
    pub default_sales_taxes: Option<Vec<SalesTax>>,
    pub created_at: DateTime<Utc>,
    pub modified_at: DateTime<Utc>,
}