
use crate::models::BookKeepingMethodView; 
use crate::models::FiscalYearTypeView; 
use crate::models::Guid; 

#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, Default)]
pub struct AccountingSettingsView {
    
    #[serde(rename = "AccountPayablesAccount", skip_serializing_if = "Option::is_none")]
    pub account_payables_account: Option<String>,
    
    #[serde(rename = "AccrualAccount", skip_serializing_if = "Option::is_none")]
    pub accrual_account: Option<String>,
    
    #[serde(rename = "AccrualIsEnabled", skip_serializing_if = "Option::is_none")]
    pub accrual_is_enabled: Option<bool>,
    
    #[serde(rename = "AdministrationCostAccount", skip_serializing_if = "Option::is_none")]
    pub administration_cost_account: Option<String>,
    
    #[serde(rename = "BookKeepingMethod", skip_serializing_if = "Option::is_none")]
    pub book_keeping_method: Option<BookKeepingMethodView>,
    
    #[serde(rename = "CostCenterIsRequired", skip_serializing_if = "Option::is_none")]
    pub cost_center_is_required: Option<bool>,
    
    #[serde(rename = "CreditorPublicId", skip_serializing_if = "Option::is_none")]
    pub creditor_public_id: Option<Guid>,
    
    #[serde(rename = "CurrencyDifferenceGainsAccount", skip_serializing_if = "Option::is_none")]
    pub currency_difference_gains_account: Option<String>,
    
    #[serde(rename = "CurrencyDifferenceLossesAccount", skip_serializing_if = "Option::is_none")]
    pub currency_difference_losses_account: Option<String>,
    
    #[serde(rename = "CustomerAdvancedPaymentsAccount", skip_serializing_if = "Option::is_none")]
    pub customer_advanced_payments_account: Option<String>,
    
    #[serde(rename = "DefaultAutogiroPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_autogiro_payment_code: Option<String>,
    
    #[serde(rename = "DefaultBankgiroPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_bankgiro_payment_code: Option<String>,
    
    #[serde(rename = "DefaultCreditCardPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_credit_card_payment_code: Option<String>,
    
    #[serde(rename = "DefaultCreditingPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_crediting_payment_code: Option<String>,
    
    #[serde(rename = "DefaultFinancialPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_financial_payment_code: Option<String>,
    
    #[serde(rename = "DefaultSwishPaymentCode", skip_serializing_if = "Option::is_none")]
    pub default_swish_payment_code: Option<String>,
    
    #[serde(rename = "FinancialCostsAccount", skip_serializing_if = "Option::is_none")]
    pub financial_costs_account: Option<String>,
    
    #[serde(rename = "FinancialInstituteDebtAccount", skip_serializing_if = "Option::is_none")]
    pub financial_institute_debt_account: Option<String>,
    
    #[serde(rename = "FiscalYear", skip_serializing_if = "Option::is_none")]
    pub fiscal_year: Option<FiscalYearTypeView>,
    
    #[serde(rename = "FreightCostAccount", skip_serializing_if = "Option::is_none")]
    pub freight_cost_account: Option<String>,
    
    #[serde(rename = "IncomingVATAccount", skip_serializing_if = "Option::is_none")]
    pub incoming_vat_account: Option<String>,
    
    #[serde(rename = "InterestAccount", skip_serializing_if = "Option::is_none")]
    pub interest_account: Option<String>,
    
    #[serde(rename = "OtherOperatingIncomeAccount", skip_serializing_if = "Option::is_none")]
    pub other_operating_income_account: Option<String>,
    
    #[serde(rename = "ProjectIsRequired", skip_serializing_if = "Option::is_none")]
    pub project_is_required: Option<bool>,
    
    #[serde(rename = "RestingVATAccount", skip_serializing_if = "Option::is_none")]
    pub resting_vat_account: Option<String>,
    
    #[serde(rename = "RestingVatIsEnabled", skip_serializing_if = "Option::is_none")]
    pub resting_vat_is_enabled: Option<bool>,
    
    #[serde(rename = "RevenueCorrectionAccount", skip_serializing_if = "Option::is_none")]
    pub revenue_correction_account: Option<String>,
    
    #[serde(rename = "RoundingAccount", skip_serializing_if = "Option::is_none")]
    pub rounding_account: Option<String>,
    
    #[serde(rename = "SalesWithReverseVATAccount", skip_serializing_if = "Option::is_none")]
    pub sales_with_reverse_vat_account: Option<String>,
    
    #[serde(rename = "SalesWithRotRutAccount", skip_serializing_if = "Option::is_none")]
    pub sales_with_rot_rut_account: Option<String>,
    
    #[serde(rename = "ShortTermDebtsAccount", skip_serializing_if = "Option::is_none")]
    pub short_term_debts_account: Option<String>,
    
    #[serde(rename = "TradeDebtsAccount", skip_serializing_if = "Option::is_none")]
    pub trade_debts_account: Option<String>,
    
    #[serde(rename = "TradeDebtsTaxReductionAccount", skip_serializing_if = "Option::is_none")]
    pub trade_debts_tax_reduction_account: Option<String>,
    
    #[serde(rename = "VAT12Account", skip_serializing_if = "Option::is_none")]
    pub vat12_account: Option<String>,
    
    #[serde(rename = "VAT25Account", skip_serializing_if = "Option::is_none")]
    pub vat25_account: Option<String>,
    
    #[serde(rename = "VAT6Account", skip_serializing_if = "Option::is_none")]
    pub vat6_account: Option<String>,
    
    #[serde(rename = "VoucherSeries", skip_serializing_if = "Option::is_none")]
    pub voucher_series: Option<String>,
    
    #[serde(rename = "WriteOffAccount", skip_serializing_if = "Option::is_none")]
    pub write_off_account: Option<String>,
    
}