models

package
v0.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	VatModePayer            = "vat_payer"
	VatModeNotPayer         = "not_vat_payer"
	VatModeIdentifiedPerson = "identified_person"
)
View Source
const (
	StatusOpen      = "open"
	StatusSent      = "sent"
	StatusOverdue   = "overdue"
	StatusPaid      = "paid"
	StatusCancelled = "cancelled"
)
View Source
const (
	VatPriceModeWithoutVat       = "without_vat"
	VatPriceModeFromTotalWithVat = "from_total_with_vat"
)
View Source
const (
	EventMarkAsSent         = "mark_as_sent"
	EventDeliver            = "deliver"
	EventPay                = "pay"
	EventPayProforma        = "pay_proforma"
	EventPayPartialProforma = "pay_partial_proforma"
	EventRemovePayment      = "remove_payment"
	EventDeliverReminder    = "deliver_reminder"
	EventCancel             = "cancel"
	EventUndoCancel         = "undo_cancel"
	EventLock               = "lock"
	EventUnlock             = "unlock"
)
View Source
const (
	PaymentMethodCard = "card"
	PaymentMethodCash = "cash"
	PaymentMethodCod  = "cod"
	PaymentMethodBank = "bank"
)
View Source
const (
	CurrencyCZK = "CZK"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	Subdomain                    string    `json:"subdomain"`
	Plan                         string    `json:"plan"`
	PlanPrice                    int       `json:"plan_price"`
	Email                        string    `json:"email"`
	InvoiceEmail                 string    `json:"invoice_email"`
	Phone                        string    `json:"phone"`
	Web                          string    `json:"web"`
	Name                         string    `json:"name"`
	FullName                     string    `json:"full_name"`
	RegistrationNo               string    `json:"registration_no"`
	VatNo                        string    `json:"vat_no"`
	VatMode                      string    `json:"vat_mode"`
	VatPriceMode                 string    `json:"vat_price_mode"`
	Street                       string    `json:"street"`
	Street2                      string    `json:"street2"`
	City                         string    `json:"city"`
	Zip                          string    `json:"zip"`
	Country                      string    `json:"country"`
	BankAccount                  string    `json:"bank_account"`
	Iban                         string    `json:"iban"`
	SwiftBic                     string    `json:"swift_bic"`
	Currency                     string    `json:"currency"`
	UnitName                     string    `json:"unit_name"`
	VatRate                      int       `json:"vat_rate"`
	DisplayedNote                string    `json:"displayed_note"`
	InvoiceNote                  string    `json:"invoice_note"`
	Due                          int       `json:"due"`
	InvoiceLanguage              string    `json:"invoice_language"`
	InvoicePaymentMethod         string    `json:"invoice_payment_method"`
	InvoiceProforma              bool      `json:"invoice_proforma"`
	InvoiceNumberFormat          string    `json:"invoice_number_format"`
	ProformaNumberFormat         string    `json:"proforma_number_format"`
	CustomEmailText              string    `json:"custom_email_text"`
	OverdueEmailText             string    `json:"overdue_email_text"`
	SendOverdueEmail             bool      `json:"send_overdue_email"`
	SendInvoiceFromProformaEmail bool      `json:"send_invoice_from_proforma_email"`
	SendThankYouEmail            bool      `json:"send_thank_you_email"`
	InvoicePaypal                bool      `json:"invoice_paypal"`
	InvoiceGopay                 bool      `json:"invoice_gopay"`
	Eet                          bool      `json:"eet"`
	EetInvoiceDefault            bool      `json:"eet_invoice_default"`
	HtmlUrl                      string    `json:"html_url"`
	Url                          string    `json:"url"`
	UpdatedAt                    time.Time `json:"updated_at"`
	CreatedAt                    time.Time `json:"created_at"`
}

type BankAccount

type BankAccount struct {
	Id                int    `json:"id"`
	Name              string `json:"name"`
	Currency          string `json:"currency"`
	Number            string `json:"number"`
	Iban              string `json:"iban"`
	SwiftBic          string `json:"swift_bic"`
	Pairing           bool   `json:"pairing"`
	PaymentAdjustment bool   `json:"payment_adjustment"`
}

type FakturoidDate

type FakturoidDate time.Time

func (FakturoidDate) MarshalJSON

func (t FakturoidDate) MarshalJSON() ([]byte, error)

func (*FakturoidDate) UnmarshalJSON

func (t *FakturoidDate) UnmarshalJSON(data []byte) error

type FakturoidDateTime

type FakturoidDateTime time.Time

func (FakturoidDateTime) DefaultFormat added in v0.0.3

func (t FakturoidDateTime) DefaultFormat() string

func (FakturoidDateTime) MarshalJSON

func (t FakturoidDateTime) MarshalJSON() ([]byte, error)

func (*FakturoidDateTime) UnmarshalJSON

func (t *FakturoidDateTime) UnmarshalJSON(data []byte) error

type Invoice

type Invoice struct {
	Id                      int               `json:"id,omitempty"`
	CustomId                string            `json:"custom_id,omitempty"`
	Proforma                bool              `json:"proforma,omitempty"`
	PartialProforma         bool              `json:"partial_proforma,omitempty"`
	Number                  string            `json:"number,omitempty"`
	VariableSymbol          string            `json:"variable_symbol,omitempty"`
	YourName                string            `json:"your_name,omitempty"`
	YourStreet              string            `json:"your_street,omitempty"`
	YourStreet2             string            `json:"your_street2,omitempty"`
	YourCity                string            `json:"your_city,omitempty"`
	YourZip                 string            `json:"your_zip,omitempty"`
	YourCountry             string            `json:"your_country,omitempty"`
	YourRegistrationNo      string            `json:"your_registration_no,omitempty"`
	YourVatNo               string            `json:"your_vat_no,omitempty"`
	YourLocalVatNo          string            `json:"your_local_vat_no,omitempty"`
	ClientName              string            `json:"client_name,omitempty"`
	ClientStreet            string            `json:"client_street,omitempty"`
	ClientStreet2           string            `json:"client_street2,omitempty"`
	ClientCity              string            `json:"client_city,omitempty"`
	ClientZip               string            `json:"client_zip,omitempty"`
	ClientCountry           string            `json:"client_country,omitempty"`
	ClientRegistrationNo    string            `json:"client_registration_no,omitempty"`
	ClientVatNo             string            `json:"client_vat_no,omitempty"`
	ClientLocalVatNo        string            `json:"client_local_vat_no,omitempty"`
	SubjectId               int               `json:"subject_id,omitempty"`
	SubjectCustomId         int               `json:"subject_custom_id,omitempty"`
	GeneratorId             int               `json:"generator_id,omitempty"`
	RelatedId               int               `json:"related_id,omitempty"`
	Correction              bool              `json:"correction,omitempty"`
	CorrectionId            int               `json:"correction_id,omitempty"`
	Paypal                  bool              `json:"paypal,omitempty"`
	Gopay                   bool              `json:"gopay,omitempty"`
	Token                   string            `json:"token,omitempty"`
	Status                  string            `json:"status,omitempty"`
	OrderNumber             string            `json:"order_number,omitempty"`
	IssuedOn                FakturoidDate     `json:"issued_on,omitempty"`
	TaxableFulfillmentDue   FakturoidDate     `json:"taxable_fulfillment_due,omitempty"`
	Due                     int               `json:"due,omitempty"`
	DueOn                   FakturoidDate     `json:"due_on,omitempty"`
	SentAt                  FakturoidDateTime `json:"sent_at,omitempty"`
	PaidAt                  FakturoidDateTime `json:"paid_at,omitempty"`
	ReminderSentAt          FakturoidDate     `json:"reminder_sent_at,omitempty"`
	AcceptedAt              FakturoidDateTime `json:"accepted_at,omitempty"`
	CancelledAt             FakturoidDateTime `json:"cancelled_at,omitempty"`
	WebInvoiceSeenAt        FakturoidDateTime `json:"webinvoice_seen_at,omitempty"`
	Note                    string            `json:"note,omitempty"`
	FooterNote              string            `json:"footer_note,omitempty"`
	PrivateNote             string            `json:"private_note,omitempty"`
	Tags                    []string          `json:"tags,omitempty"`
	BankAccountId           int               `json:"bank_account_id,omitempty"`
	BankAccount             string            `json:"bank_account,omitempty"`
	Iban                    string            `json:"iban,omitempty"`
	SwiftBic                string            `json:"swift_bic,omitempty"`
	PaymentMethod           string            `json:"payment_method,omitempty"`
	HideBankAccount         bool              `json:"hide_bank_account,omitempty"`
	Currency                string            `json:"currency,omitempty"`
	ExchangeRate            string            `json:"exchange_rate,omitempty"`
	Language                string            `json:"language,omitempty"`
	TransferredTaxLiability bool              `json:"transferred_tax_liability,omitempty"`
	EuElectronicService     bool              `json:"eu_electronic_service,omitempty"`
	VatPriceMode            string            `json:"vat_price_mode,omitempty"`
	SupplyCode              string            `json:"supply_code,omitempty"`
	Subtotal                float32           `json:"subtotal,string,omitempty"`
	Total                   float32           `json:"total,string,omitempty"`
	NativeSubtotal          float32           `json:"native_subtotal,string,omitempty"`
	NativeTotal             float32           `json:"native_total,string,omitempty"`
	RemainingAmount         float32           `json:"remaining_amount,string,omitempty"`
	RemainingNativeAmount   float32           `json:"remaining_native_amount,string,omitempty"`
	PaidAmount              float32           `json:"paid_amount,string,omitempty"`
	Lines                   []InvoiceLine     `json:"lines"`
	Attachment              string            `json:"attachment,omitempty"`
	HtmlUrl                 string            `json:"html_url,omitempty"`
	PublicHtmlUrl           string            `json:"public_html_url,omitempty"`
	Url                     string            `json:"url,omitempty"`
	PdfUrl                  string            `json:"pdf_url,omitempty"`
	SubjectUrl              string            `json:"subject_url,omitempty"`
	CreatedAt               string            `json:"created_at,omitempty"`
	UpdatedAt               string            `json:"updated_at,omitempty"`
}

type InvoiceEvent added in v0.0.3

type InvoiceEvent struct {
	Event          string
	PaidAt         *FakturoidDateTime
	PaidAmount     float32
	VariableSymbol string
	BankAccountId  int
}

func NewInvoiceEvent added in v0.0.3

func NewInvoiceEvent(event string) *InvoiceEvent

func NewPayInvoiceEvent added in v0.0.3

func NewPayInvoiceEvent(
	PaidAt *FakturoidDateTime, PaidAmount float32, VariableSymbol string, BankAccountId int,
) *InvoiceEvent

type InvoiceLine

type InvoiceLine struct {
	Name      string  `json:"name"`
	Quantity  float32 `json:"quantity,string"`
	UnitName  string  `json:"unit_name"`
	UnitPrice float32 `json:"unit_price,string"`
	VatRate   int     `json:"vat_rate"`
}

type Marshaler

type Marshaler interface {
	MarshalJSON() ([]byte, error)
	UnmarshalJSON(data []byte) error
}

type Subject

type Subject struct {
	//Street2           string `json:"street2"` @deprecated
	Id               int       `json:"id,omitempty"`
	Custom_id        string    `json:"custom_id,omitempty"`
	Type             string    `json:"type"`
	Name             string    `json:"name"`
	Street           string    `json:"street"`
	City             string    `json:"city,omitempty"`
	Zip              string    `json:"zip,omitempty"`
	Country          string    `json:"country,omitempty"`
	RegistrationNo   string    `json:"registration_no,omitempty"`
	VatNo            string    `json:"vat_no,omitempty"`
	LocalVatNo       string    `json:"local_vat_no,omitempty"`
	BankAccount      string    `json:"bank_account"`
	Iban             string    `json:"iban"`
	VariableSymbol   string    `json:"variable_symbol,omitempty"`
	EnabledReminders bool      `json:"enabled_reminders"`
	FullName         string    `json:"full_name,omitempty"`
	Email            string    `json:"email,omitempty"`
	EmailCopy        string    `json:"email_copy,omitempty"`
	Phone            string    `json:"phone,omitempty"`
	Web              string    `json:"web,omitempty"`
	PrivateNote      string    `json:"private_note,omitempty"`
	AvatarUrl        string    `json:"avatar_url,omitempty"`
	HtmlUrl          string    `json:"html_url,omitempty"`
	Url              string    `json:"url,omitempty"`
	CreatedAt        time.Time `json:"created_at,omitempty"`
	UpdatedAt        time.Time `json:"updated_at,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL