poweroffice

package module
v0.0.0-...-ea89980 Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2023 License: MIT Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	BaseURL = url.URL{
		Scheme: "https",
		Host:   "api.poweroffice.net",
		Path:   "",
	}
)

Functions

func CheckResponse

func CheckResponse(r *http.Response) error

CheckResponse checks the Client response for errors, and returns them if present. A response is considered an error if it has a status code outside the 200 range. Client error responses are expected to have either no response body, or a json response body that maps to ErrorResponse. Any other response body will be silently ignored.

Types

type Accrual

type Accrual struct {
	// The code of the GeneralLedgerAccount used for keeping accrual balance. (Norwegian: Balansekonto)
	BalanceAccountCode int `json:"BalanceAccountCode,omitempty"`
	// Start date of accrual. If the invoice is a RecurringInvoice , NumOfMonths should be used instead.
	FromDate Date `json:"FromDate,omitempty"`
	// States if accrual is active or not.
	IsActive bool `json:"IsActive,omitempty"`
	// Used by recurring invoice to specify the number of months the invoice should be accrued over. This property will only be used if the accrual is on a line that is on a RecurringInvoice
	NumOfMonths int `json:"NumOfMonths,omitempty"`
	// The code of the GeneralLedgerAccount used for posting the result. (Norwegian: Resultatkonto)
	ResultAccountCode int `json:"ResultAccountCode,omitempty"`
	// End date of accrual. If the invoice is a RecurringInvoice , NumOfMonths should be used instead.
	ToDate Date `json:"ToDate,omitempty"`
}

func (Accrual) IsEmpty

func (a Accrual) IsEmpty() bool

func (Accrual) MarshalJSON

func (a Accrual) MarshalJSON() ([]byte, error)

type Address

type Address struct {
	// Gets or sets the first address line. This is usually used for street name or postal box.
	Address1 string `json:"Address1,omitempty"`
	// Gets or sets the second address line. Used for additional specifications of the address.
	Address2 string `json:"Address2,omitempty"`
	// Gets or sets the third address line. This property is no longer in use and will be removed on a later date.
	Address3 string `json:"Address3,omitempty"`
	// Gets or sets the city.
	City string `json:"City,omitempty"`
	// Gets or sets the ISO 3166-1 alfa-2 country code (Two characters)
	CountryCode string `json:"CountryCode,omitempty"`
	// Get or sets the external code - can be used to reference the address in the external system
	ExternalCode string `json:"ExternalCode,omitempty"`
	// Gets or sets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved, and should be provided when an entity should be edited. If this identifier is not provided, PowerOffice Go will try to create a new entity.
	ID int `json:"Id,omitempty"`
	// Flag indicating whether or not this address is the primary delivery address. Primary delivery address will be suggested as the delivery address when creating new invoices.
	IsPrimary bool `json:"IsPrimary,omitempty"`
	// Gets or sets the last changed date (DateTimeOffset).
	LastChanged Date `json:"LastChanged,omitempty"`
	// Gets or sets the zip code (postal code).
	ZipCode string `json:"ZipCode,omitempty"`
}

type Addresses

type Addresses []Address

type AutoGenerated

type AutoGenerated struct {
	Data []struct {
	} `json:"data"`
	Success bool `json:"success"`
	Count   int  `json:"count"`
}

type BeforeRequestDoCallback

type BeforeRequestDoCallback func(*http.Client, *http.Request, interface{})

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client manages communication with Exact Globe Client

func NewClient

func NewClient(httpClient *http.Client) *Client

NewClient returns a new Exact Globe Client client

func (Client) BaseURL

func (c Client) BaseURL() url.URL

func (Client) Charset

func (c Client) Charset() string

func (Client) Debug

func (c Client) Debug() bool

func (*Client) Do

func (c *Client) Do(req *http.Request, body interface{}) (*http.Response, error)

Do sends an Client request and returns the Client response. The Client response is json decoded and stored in the value pointed to by v, or returned as an error if an Client error has occurred. If v implements the io.Writer interface, the raw response will be written to v, without attempting to decode it.

func (*Client) GetEndpointURL

func (c *Client) GetEndpointURL(p string, pathParams PathParams) url.URL

func (Client) MediaType

func (c Client) MediaType() string

func (*Client) NewCustomerPost

func (c *Client) NewCustomerPost() CustomerPost

func (*Client) NewCustomersGet

func (c *Client) NewCustomersGet() CustomersGet

func (*Client) NewGeneralLedgerAccountsGet

func (c *Client) NewGeneralLedgerAccountsGet() GeneralLedgerAccountsGet

func (*Client) NewLocationsGet

func (c *Client) NewLocationsGet() LocationsGet

func (*Client) NewManualJournalVoucherPost

func (c *Client) NewManualJournalVoucherPost() ManualJournalVoucherPost

func (*Client) NewManualJournalVouchersGet

func (c *Client) NewManualJournalVouchersGet() ManualJournalVouchersGet

func (*Client) NewOutgoingInvoiceIDGet

func (c *Client) NewOutgoingInvoiceIDGet() OutgoingInvoiceIDGet

func (*Client) NewOutgoingInvoiceListGet

func (c *Client) NewOutgoingInvoiceListGet() OutgoingInvoiceListGet

func (*Client) NewOutgoingInvoicePost

func (c *Client) NewOutgoingInvoicePost() OutgoingInvoicePost

func (*Client) NewOutgoingInvoiceVoucherPost

func (c *Client) NewOutgoingInvoiceVoucherPost() OutgoingInvoiceVoucherPost

func (*Client) NewRequest

func (c *Client) NewRequest(ctx context.Context, req Request) (*http.Request, error)

func (*Client) NewVATCodesGet

func (c *Client) NewVATCodesGet() VATCodesGet

func (*Client) SetBaseURL

func (c *Client) SetBaseURL(baseURL url.URL)

func (*Client) SetBeforeRequestDo

func (c *Client) SetBeforeRequestDo(fun BeforeRequestDoCallback)

func (*Client) SetCharset

func (c *Client) SetCharset(charset string)

func (*Client) SetDebug

func (c *Client) SetDebug(debug bool)

func (*Client) SetDisallowUnknownFields

func (c *Client) SetDisallowUnknownFields(disallowUnknownFields bool)

func (*Client) SetHTTPClient

func (c *Client) SetHTTPClient(client *http.Client)

func (*Client) SetMediaType

func (c *Client) SetMediaType(mediaType string)

func (*Client) SetUserAgent

func (c *Client) SetUserAgent(userAgent string)

func (*Client) Unmarshal

func (c *Client) Unmarshal(r io.Reader, vv ...interface{}) error

func (Client) UserAgent

func (c Client) UserAgent() string

type Customer

type Customer struct {
	// Gets or sets the code.
	Code int `json:"Code,omitempty"`
	// Gets or sets the contact groups. This collection will contain the names of all the ContactGroup the party is associated with. If the collection is provided a contact group that does not exist, the contact group will be created when saving.
	ContactGroups []string `json:"ContactGroups,omitempty"`
	// Gets or sets id of the primary ContactPerson on the party.
	ContactPersonID int `json:"ContactPersonId,omitempty"`
	// Gets the creation date.
	CreatedDate Date `json:"CreatedDate,omitempty"`
	// Gets the if of the Import that created this party.
	CreatedFromImportJournalID string `json:"CreatedFromImportJournalId,omitempty"`
	// Gets or sets the currency code.
	CurrencyCode string `json:"CurrencyCode,omitempty"`
	// Gets date when contact first became a customer
	CustomerCreatedDate Date `json:"CustomerCreatedDate,omitempty"`
	// Gets or sets the date of birth.
	DateOfBirth Date `json:"DateOfBirth,omitempty"`
	// Gets or set the delivery term.
	DeliveryTerm string `json:"DeliveryTerm,omitempty"`
	// Gets or sets the code of the Department this customer belongs to.
	DepartmentCode string `json:"DepartmentCode,omitempty"`
	// Gets or sets the fixed discount percent for this customer, this value should be between 0 and 100. Can also be used to add a premium in percent of the sales price (usually markup) by having negative number. Negative numbers can be between -1000 and 0.
	DiscountPercent float64 `json:"DiscountPercent,omitempty"`
	// Gets or sets a value indicating whether or not to add late payment fees when sending reminders to this customer.
	DoNotAddLatePaymentFees bool `json:"DoNotAddLatePaymentFees,omitempty"`
	// Gets or sets a value indicating whether or not to add late payment interest when sending reminders to this customer.
	DoNotAddLatePaymentInterest bool `json:"DoNotAddLatePaymentInterest,omitempty"`
	// Gets or sets the email address.
	EmailAddress string `json:"EmailAddress,omitempty"`
	// Gets or sets the external code. If this entity is imported with a number outside the number range for this type of party, this field will contain the imported original number. This number has precedence over GoApi.Party.Party.Code when choosing which entity to use when importing files through the import service. I.e. when importing OutgoingInvoices on the import service on a customer with Code 10000 - the import will choose the customer with ExternalCode 10000 over the customer with Code 10000.
	ExternalCode int `json:"ExternalCode,omitempty"`
	// Gets or sets an external import reference that is unique within the account type (Customer, Supplier, Employee). It can be edited by any integration - at any time. Max length is 50 characters.
	ExternalImportReference string `json:"ExternalImportReference,omitempty"`
	// Gets or sets the first name.
	FirstName string `json:"FirstName,omitempty"`
	// Gets or sets the hourly rate to use when billing time to the Customer.
	HourlyRate float64 `json:"HourlyRate,omitempty"`
	// Gets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved, and should be provided when an entity should be edited. If this identifier is not provided, PowerOffice Go will try to create a new entity.
	ID int `json:"Id,omitempty"`
	// Gets or sets the international ID country code. Country code is given in ISO 3166-1 alfa-2 standard (Two characters).
	InternationalIdCountryCode string `json:"InternationalIdCountryCode,omitempty"`
	// Gets or sets the international ID number. For privacy reasons queries returns "hidden" if this field has a value and null if it's empty.
	InternationalIDNumber string `json:"InternationalIdNumber,omitempty"`
	// Gets or sets the international ID type.
	InternationalIdType InternationalIdType `json:"InternationalIdType,omitempty"`
	// Gets or sets the code of the BrandingTheme used when sending invoices to this customer. If NULL, the clients default branding theme will be used.
	InvoiceBrandingThemeCode string `json:"InvoiceBrandingThemeCode,omitempty"`
	// Gets or sets how invoices should be delivered to the customer.
	InvoiceDeliveryType InvoiceDeliveryType `json:"InvoiceDeliveryType,omitempty"`
	// Gets or sets the invoice email address.
	InvoiceEmailAddress string `json:"InvoiceEmailAddress,omitempty"`
	// Gets or sets the invoice email CC address.
	InvoiceEmailAddressCC string `json:"InvoiceEmailAddressCC,omitempty"`
	// Gets IsActive on Customer and Supplier. This property reflects if an entity is currently a Customer and/or Supplier, depending on the endpoint queried.
	IsActive bool `json:"IsActive,omitempty"`
	// Gets or sets a value indicating whether this party is archived (is inactive)
	IsArchived bool `json:"IsArchived,omitempty"`
	// Gets or sets a value indicating whether this party is a private person.
	IsPerson bool `json:"IsPerson,omitempty"`
	// Gets or sets a value indicating whether this customer is vat free. Sales against the customer will use the alternative sales account on the product or product group when posting the revenue if this is set to true.
	IsVATFree bool `json:"IsVatFree,omitempty"`
	// Gets the last changed date.
	LastChanged Date `json:"LastChanged,omitempty"`
	// Gets or sets the last name.
	LastName string `json:"LastName,omitempty"`
	// Gets or sets the legal name.
	LegalName string `json:"LegalName,omitempty"`
	// Gets or sets the mail/postal address.
	MailAddress Address `json:"MailAddress,omitempty"`
	// Gets or sets the name.
	Name string `json:"Name,omitempty"`
	// Gets or sets how notice of debt collection should be delivered to the customer.
	NoticeOfDebtCollectionDeliveryType InvoiceDeliveryType `json:"NoticeOfDebtCollectionDeliveryType,omitempty"`
	// Gets or sets the code of the Employee of the sales person handling this customer (Our reference).
	OurReferenceEmployeeCode int `json:"OurReferenceEmployeeCode,omitempty"`
	// Gets or sets the payment terms. This is the default number of days after an invoice sent to this customer is due.
	PaymentTerms int `json:"PaymentTerms,omitempty"`
	// Gets or sets the phone number.
	PhoneNumber string `json:"PhoneNumber,omitempty"`
	// Gets or sets the how reminders should be delivered to the customer.
	ReminderDeliveryType InvoiceDeliveryType `json:"ReminderDeliveryType,omitempty"`
	// Gets or sets the reminder email address. Used if ReminderDeliveryType and/or NoticeOfDebtCollectionDeliveryType uses email.
	ReminderEmailAddress string `json:"ReminderEmailAddress,omitempty"`
	// Gets or sets a value indicating whether International ID should be reported to Altinn.
	ReportInternationalId bool `json:"ReportInternationalId,omitempty"`
	// Gets or sets a value indicating whether to send reminders for this customer or not.
	SendReminders bool `json:"SendReminders,omitempty"`
	// Gets or sets when the customer or supplier first became a contact.
	Since Date `json:"Since,omitempty"`
	// Sets the social security number. For privacy reasons queries returns "hidden" if this field has a value and null if it's empty.
	SocialSecurityNumber string `json:"SocialSecurityNumber,omitempty"`
	// Gets or sets the street address. This field is Obsolete but still exists due to backward compability. Use StreetAddresses instead. If this entity does not have any street addresses, but has a mail address. This property will contain the GoApi.Party.Party.MailAddress . and GoApi.Party.Party.StreetAddresses will be an empty collection.
	StreetAddress Address `json:"StreetAddress,omitempty"`
	// Gets or sets the street addresses. Take note here that the full collection of street addresses must exist when updating this property. For instance if the supplier has two addresses in PowerOffice Go, and the API only provides one of them in this property, the other one will be deleted.
	StreetAddresses Addresses `json:"StreetAddresses,omitempty"`
	// Sets the id to the SubledgerNumberSeries the party should be applied to when creating it.
	SubledgerNumberSeriesID string `json:"SubledgerNumberSeriesId,omitempty"`
	// Gets or sets a value indicating whether invoices to this customers should be transferred to a debt collection agency after it's due.
	TransferToDebtCollectionAgency bool `json:"TransferToDebtCollectionAgency,omitempty"`
	// Gets or sets a value indicating whether it's specified that invoices to this customer should use factoring.
	UseFactoring bool `json:"UseFactoring,omitempty"`
	// Gets or sets whether invoice fee will be used when invoicing the customer. Relevant only if the client use invoice fee.
	UseInvoiceFee bool `json:"UseInvoiceFee,omitempty"`
	// Gets or sets the vat number (Organization number).
	VATNumber string `json:"VatNumber,omitempty"`
	// Gets or sets the website URL.
	WebsiteUrl string `json:"WebsiteUrl,omitempty"`
}

type CustomerPost

type CustomerPost struct {
	// contains filtered or unexported fields
}

func (*CustomerPost) Do

func (*CustomerPost) Method

func (r *CustomerPost) Method() string

func (CustomerPost) NewPathParams

func (r CustomerPost) NewPathParams() *CustomerPostPathParams

func (CustomerPost) NewQueryParams

func (r CustomerPost) NewQueryParams() *CustomerPostQueryParams

func (CustomerPost) NewRequestBody

func (r CustomerPost) NewRequestBody() CustomerPostBody

func (*CustomerPost) NewResponseBody

func (r *CustomerPost) NewResponseBody() *CustomerPostResponseBody

func (*CustomerPost) PathParams

func (r *CustomerPost) PathParams() *CustomerPostPathParams

func (*CustomerPost) PathParamsInterface

func (r *CustomerPost) PathParamsInterface() PathParams

func (*CustomerPost) QueryParams

func (r *CustomerPost) QueryParams() *CustomerPostQueryParams

func (*CustomerPost) RequestBody

func (r *CustomerPost) RequestBody() *CustomerPostBody

func (*CustomerPost) RequestBodyInterface

func (r *CustomerPost) RequestBodyInterface() interface{}

func (*CustomerPost) SetMethod

func (r *CustomerPost) SetMethod(method string)

func (*CustomerPost) SetRequestBody

func (r *CustomerPost) SetRequestBody(body CustomerPostBody)

func (*CustomerPost) URL

func (r *CustomerPost) URL() *url.URL

type CustomerPostBody

type CustomerPostBody Customer

func (CustomerPostBody) MarshalJSON

func (v CustomerPostBody) MarshalJSON() ([]byte, error)

type CustomerPostPathParams

type CustomerPostPathParams struct {
}

func (*CustomerPostPathParams) Params

func (p *CustomerPostPathParams) Params() map[string]string

type CustomerPostQueryParams

type CustomerPostQueryParams struct{}

func (CustomerPostQueryParams) ToURLValues

func (p CustomerPostQueryParams) ToURLValues() (url.Values, error)

type CustomerPostResponseBody

type CustomerPostResponseBody struct{}

type Customers

type Customers []Customer

type CustomersGet

type CustomersGet struct {
	// contains filtered or unexported fields
}

func (*CustomersGet) Do

func (*CustomersGet) Method

func (r *CustomersGet) Method() string

func (CustomersGet) NewPathParams

func (r CustomersGet) NewPathParams() *CustomersGetPathParams

func (CustomersGet) NewQueryParams

func (r CustomersGet) NewQueryParams() *CustomersGetQueryParams

func (CustomersGet) NewRequestBody

func (r CustomersGet) NewRequestBody() CustomersGetBody

func (*CustomersGet) NewResponseBody

func (r *CustomersGet) NewResponseBody() *CustomersGetResponseBody

func (*CustomersGet) PathParams

func (r *CustomersGet) PathParams() *CustomersGetPathParams

func (*CustomersGet) PathParamsInterface

func (r *CustomersGet) PathParamsInterface() PathParams

func (*CustomersGet) QueryParams

func (r *CustomersGet) QueryParams() *CustomersGetQueryParams

func (*CustomersGet) RequestBody

func (r *CustomersGet) RequestBody() *CustomersGetBody

func (*CustomersGet) RequestBodyInterface

func (r *CustomersGet) RequestBodyInterface() interface{}

func (*CustomersGet) SetMethod

func (r *CustomersGet) SetMethod(method string)

func (*CustomersGet) SetRequestBody

func (r *CustomersGet) SetRequestBody(body CustomersGetBody)

func (*CustomersGet) URL

func (r *CustomersGet) URL() *url.URL

type CustomersGetBody

type CustomersGetBody struct {
}

type CustomersGetPathParams

type CustomersGetPathParams struct {
}

func (*CustomersGetPathParams) Params

func (p *CustomersGetPathParams) Params() map[string]string

type CustomersGetQueryParams

type CustomersGetQueryParams struct {
	Select *odata.Select `schema:"$select,omitempty"`
	Expand *odata.Expand `schema:"$expand,omitempty"`
	Filter *odata.Filter `schema:"$filter,omitempty"`
	Top    *odata.Top    `schema:"$top,omitempty"`
	Skip   *odata.Skip   `schema:"$skip,omitempty"`
}

func (CustomersGetQueryParams) ToURLValues

func (p CustomersGetQueryParams) ToURLValues() (url.Values, error)

type CustomersGetResponseBody

type CustomersGetResponseBody struct {
	Data    Customers `json:"data"`
	Success bool      `json:"success"`
	Count   int       `json:"count"`
}

type Date

type Date struct {
	time.Time
}

func (Date) IsEmpty

func (d Date) IsEmpty() bool

func (Date) MarshalJSON

func (d Date) MarshalJSON() ([]byte, error)

func (Date) MarshalSchema

func (d Date) MarshalSchema() string

func (*Date) UnmarshalJSON

func (d *Date) UnmarshalJSON(text []byte) (err error)

type DateTime

type DateTime struct {
	time.Time
}

func (DateTime) IsEmpty

func (d DateTime) IsEmpty() bool

func (DateTime) MarshalSchema

func (d DateTime) MarshalSchema() string

type DebtCollectionCaseStatus

type DebtCollectionCaseStatus int

type DebtCollectionStatus

type DebtCollectionStatus int

type ErrorResponse

type ErrorResponse struct {
	// HTTP response that caused this error
	Response *http.Response

	Success    bool `json:"success"`
	Validation struct {
		ErrorLogReference string `json:"errorLogReference"`
		Summary           string `json:"summary"`
		Exception         string `json:"exception"`
	} `json:"validation"`
}

func (*ErrorResponse) Error

func (r *ErrorResponse) Error() string

type GeneralLedgerAccount

type GeneralLedgerAccount struct {
	// Gets or sets the code. This is a required property when creating new general ledger accounts and the value has to be in the range 1000-9999.
	Code int `json:"Code"`
	// Gets the created from import journal identifier. If the account was created from an import, this property will contain the ID of the Import that created this account.
	CreatedFromImportJournalID string `json:"CreatedFromImportJournalId"`
	// Gets or sets the currency code.
	CurrencyCode string `json:"CurrencyCode"`
	// Gets or sets the code of the Department associated with this account.
	DepartmentCode string `json:"DepartmentCode"`
	// Gets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved, and should be provided when an entity should be edited. If this identifier is not provided, PowerOffice Go will try to create a new entity.
	ID int `json:"Id"`
	// Gets or sets a value indicating whether this instance is active. Accounts that are not active will not be shown to users.
	IsActive bool `json:"IsActive"`
	// Gets or sets a value indicating whether Department is required when posting an accounting entry on this account.
	IsDepartmentRequired bool `json:"IsDepartmentRequired"`
	// Gets or sets a value indicating whether Project is required when posting an accounting entry on this account.
	IsProjectRequired bool `json:"IsProjectRequired"`
	// Gets or sets a value indicating whether vat code is locked after posting an accounting entry to this account.
	IsVATCodeLockedAfterPosting bool `json:"IsVatCodeLockedAfterPosting"`
	// Gets the last changed date.
	LastChanged Date `json:"LastChanged"`
	// Gets or sets the name. Required property when creating new general ledger accounts.
	Name string `json:"Name"`
	// Gets or sets the code of the Project associated with this account.
	ProjectCode string `json:"ProjectCode"`
	// Gets or sets the code of the default VatCode that should be used on this account. (Norwegian: MVA-kode)
	VATCode string `json:"VatCode"`
	// VatReturnSpecification 	Gets or sets the vat return specification
	VATReturnSpecification VATReturnSpecification `json:"VatReturnSpecification"`
}

type GeneralLedgerAccounts

type GeneralLedgerAccounts []GeneralLedgerAccount

type GeneralLedgerAccountsGet

type GeneralLedgerAccountsGet struct {
	// contains filtered or unexported fields
}

func (*GeneralLedgerAccountsGet) Do

func (*GeneralLedgerAccountsGet) Method

func (r *GeneralLedgerAccountsGet) Method() string

func (GeneralLedgerAccountsGet) NewPathParams

func (GeneralLedgerAccountsGet) NewQueryParams

func (GeneralLedgerAccountsGet) NewRequestBody

func (*GeneralLedgerAccountsGet) NewResponseBody

func (*GeneralLedgerAccountsGet) PathParams

func (*GeneralLedgerAccountsGet) PathParamsInterface

func (r *GeneralLedgerAccountsGet) PathParamsInterface() PathParams

func (*GeneralLedgerAccountsGet) QueryParams

func (*GeneralLedgerAccountsGet) RequestBody

func (*GeneralLedgerAccountsGet) RequestBodyInterface

func (r *GeneralLedgerAccountsGet) RequestBodyInterface() interface{}

func (*GeneralLedgerAccountsGet) SetMethod

func (r *GeneralLedgerAccountsGet) SetMethod(method string)

func (*GeneralLedgerAccountsGet) SetRequestBody

func (*GeneralLedgerAccountsGet) URL

func (r *GeneralLedgerAccountsGet) URL() *url.URL

type GeneralLedgerAccountsGetBody

type GeneralLedgerAccountsGetBody struct {
}

type GeneralLedgerAccountsGetPathParams

type GeneralLedgerAccountsGetPathParams struct {
}

func (*GeneralLedgerAccountsGetPathParams) Params

type GeneralLedgerAccountsGetQueryParams

type GeneralLedgerAccountsGetQueryParams struct {
	Select *odata.Select `schema:"$select,omitempty"`
	Expand *odata.Expand `schema:"$expand,omitempty"`
	Filter *odata.Filter `schema:"$filter,omitempty"`
	Top    *odata.Top    `schema:"$top,omitempty"`
	Skip   *odata.Skip   `schema:"$skip,omitempty"`
}

func (GeneralLedgerAccountsGetQueryParams) ToURLValues

type GeneralLedgerAccountsGetResponseBody

type GeneralLedgerAccountsGetResponseBody struct {
	Data    GeneralLedgerAccounts `json:"data"`
	Success bool                  `json:"success"`
	Count   int                   `json:"count"`
}

type InternationalIdType

type InternationalIdType int

type InvoiceDeliveryType

type InvoiceDeliveryType int

type Location

type Location struct {
	// Gets or sets the code of the location. This is an unique identificator.
	Code string `json:"Code"`
	// Gets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved, and should be provided when an entity should be edited. If this identifier is not provided, PowerOffice Go will try to create a new entity.
	ID int `json:"Id"`
	// Gets or sets a value indicating whether this location is active. Defaults to true.
	IsActive bool `json:"IsActive"`
	// Gets or sets the name of the location.
	Name string `json:"Name"`
}

type Locations

type Locations []Location

type LocationsGet

type LocationsGet struct {
	// contains filtered or unexported fields
}

func (*LocationsGet) Do

func (*LocationsGet) Method

func (r *LocationsGet) Method() string

func (LocationsGet) NewPathParams

func (r LocationsGet) NewPathParams() *LocationsGetPathParams

func (LocationsGet) NewQueryParams

func (r LocationsGet) NewQueryParams() *LocationsGetQueryParams

func (LocationsGet) NewRequestBody

func (r LocationsGet) NewRequestBody() LocationsGetBody

func (*LocationsGet) NewResponseBody

func (r *LocationsGet) NewResponseBody() *LocationsGetResponseBody

func (*LocationsGet) PathParams

func (r *LocationsGet) PathParams() *LocationsGetPathParams

func (*LocationsGet) PathParamsInterface

func (r *LocationsGet) PathParamsInterface() PathParams

func (*LocationsGet) QueryParams

func (r *LocationsGet) QueryParams() QueryParams

func (*LocationsGet) RequestBody

func (r *LocationsGet) RequestBody() *LocationsGetBody

func (*LocationsGet) RequestBodyInterface

func (r *LocationsGet) RequestBodyInterface() interface{}

func (*LocationsGet) SetMethod

func (r *LocationsGet) SetMethod(method string)

func (*LocationsGet) SetRequestBody

func (r *LocationsGet) SetRequestBody(body LocationsGetBody)

func (*LocationsGet) URL

func (r *LocationsGet) URL() *url.URL

type LocationsGetBody

type LocationsGetBody struct {
}

type LocationsGetPathParams

type LocationsGetPathParams struct {
}

func (*LocationsGetPathParams) Params

func (p *LocationsGetPathParams) Params() map[string]string

type LocationsGetQueryParams

type LocationsGetQueryParams struct {
}

func (LocationsGetQueryParams) ToURLValues

func (p LocationsGetQueryParams) ToURLValues() (url.Values, error)

type LocationsGetResponseBody

type LocationsGetResponseBody struct {
	Data    Locations `json:"data"`
	Success bool      `json:"success"`
	Count   int       `json:"count"`
}

type ManualJournalVoucher

type ManualJournalVoucher struct {
	// Gets the created date. This value is assigned by PowerOffice Go when the
	// voucher is posted.
	CreatedDate Date `json:"CreatedDate"`
	// Gets or sets the currency code.
	CurrencyCode string `json:"CurrencyCode"`
	// Gets or sets the code of the Department .
	DepartmentCode string `json:"DepartmentCode"`
	// Gets or sets the description.
	Description string `json:"Description"`
	// Gets or sets the code of the custom dimension 1.
	Dim1Code string `json:"Dim1Code"`
	// Gets or sets the code of the custom dimension 2.
	Dim2Code string `json:"Dim2Code"`
	// Gets or sets the code of the custom dimension 3.
	Dim3Code string `json:"Dim3Code"`
	// Gets or sets ExternalImportReference. Can be used to correlate/duplicate
	// check vouchers. Must be a unique value for a given client. Max length is
	// 50 characters.
	ExternalImportReference string `json:"ExternalImportReference"`
	// Set to true if the voucher has VoucherDocumentation imported through the
	// API.
	HasImportedDocumentation bool `json:"HasImportedDocumentation"`
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved.
	ID string `json:"Id"`
	// Gets or sets the imported Voucher number. This value can be used to set a
	// reference from the external system creating the voucher.
	ImportedVoucherNo int `json:"ImportedVoucherNo"`
	// Gets information whether this voucher has been reversed. This can be done
	// by the API through the Reverse method in the voucher service.
	IsReversed bool `json:"IsReversed"`
	// Gets or sets the manual journal lines ManualJournalVoucherLine .
	Lines ManualJournalVoucherLines `json:"Lines"`
	// Gets or sets the code of the Project .
	ProjectCode string `json:"ProjectCode"`
	// Gets or sets the SAF-T batch id. This is the ID of the batch in the
	// system that transferred the voucher. Should be set if this voucher is a
	// batch voucher containing the entries of multiple vouchers in the external
	// system. When this voucher is exported to SAF-T, this property is
	// transactions BatchID in the SAF-T file. The external systems SAF-T export
	// should set the same BatchId on all the transactions that are included in
	// this Voucher to ensure audit trail. Max length is 35 characters.
	SaftBatchID string `json:"SaftBatchId"`
	// Gets or sets the SAF-T source id. This is the ID of the system that
	// generated the voucher. When this voucher is exported to SAF-T, this
	// property is mapped on the transactions SourceID in the SAF-T file. If the
	// creating system is required to export it's own SAF-T file, this source id
	// should correspond with the SystemID in the SAF-T file of the external
	// system to ensure an audit trail. Max length is 35 characters.
	SaftSourceID string `json:"SaftSourceId"`
	// Gets or sets the voucher date.
	VoucherDate Date `json:"VoucherDate"`
	// Gets the Voucher number. This value is assigned by PowerOffice Go when
	// the voucher is posted.
	VoucherNo int `json:"VoucherNo"`
}

type ManualJournalVoucherLine

type ManualJournalVoucherLine struct {
	// Gets or sets the account code this voucher line should be posted on. The
	// account code can either be the code on a GeneralLedgerAccount , or if the
	// accounting entry is on a sub ledger account, the code provided can be for
	// a Customer , Supplier or Employee .
	AccountCode int `json:"AccountCode"`
	// Gets or sets the total amount of the line. This is the amount to be
	// posted in the same currency as the voucher, or the currency overridden on
	// the line for some voucher types. The amount is specified VAT inclusive.
	// Specifying a negative amount here will post the amount as credit and a
	// positive amount will post the amount as debit on all voucher types except
	// OutgoingInvoiceVoucher / OutgoingInvoiceVoucherLine .
	Amount float64 `json:"Amount"`
	// Gets or sets the customer identification (Norwegian: KID).
	CID string `json:"CID"`
	// Gets or sets the currency code.
	CurrencyCode string `json:"CurrencyCode"`
	// Gets or sets the normalized currency rate of the line (factor to multiply
	// amount in voucher currency with to get amount in local currency).
	CurrencyRate int `json:"CurrencyRate"`
	// Gets or sets the custom matching reference. Voucher lines with this value
	// can be matched with other entries with same CustomMatchingReference.
	CustomMatchingReference string `json:"CustomMatchingReference"`
	// Gets or sets the voucher line date. The accounting entry for this line will be posted on this date.
	Date Date `json:"Date"`
	// Gets or sets the code of the Department . If set to "-1", this line will
	// not inherit the department set on the voucher level, and no department
	// will be posted to Go for this line
	DepartmentCode string `json:"DepartmentCode"`
	// Gets or sets the description.
	Description string `json:"Description"`
	// Gets or sets the code of the custom dimension 1. If set to "-1", this
	// line will not inherit the value set on the voucher level, and no Dim1
	// will be posted to Go for this line
	Dim1Code string `json:"Dim1Code"`
	// Gets or sets the code of the custom dimension 2. If set to "-1", this
	// line will not inherit the value set on the voucher level, and no Dim2
	// will be posted to Go for this line
	Dim2Code string `json:"Dim2Code"`
	// Gets or sets the code of the custom dimension 3. If set to "-1", this
	// line will not inherit the value set on the voucher level, and no Dim3
	// will be posted to Go for this line
	Dim3Code string `json:"Dim3Code"`
	// Gets or sets the external import line reference. Used by external systems
	// to match voucher lines. Max length is 50 characters.
	ExternalImportLineReference string `json:"ExternalImportLineReference"`
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved.
	ID int `json:"Id"`
	// Gets or sets the code of the Product .
	ProductCode string `json:"ProductCode"`
	// Gets or sets the code of the Project . If set to "-1", this line will not
	// inherit the project set on the voucher level, and no project will be
	// posted to Go for this line
	ProjectCode string `json:"ProjectCode"`
	// Gets or sets the quantity.
	Quantity int `json:"Quantity"`
	// Gets or sets the code of the VatCode for this voucher line. Vat will be
	// calculated depending on what code is provided from the total amount
	// inclusive (Amount). If not provided, the voucher will use default VAT
	// code 0 on the line, resulting in a vat free transaction.
	VATCode string `json:"VatCode"`
	// Gets or sets the VatReturnSpecification . Entries that are vat reportable
	// might report vat return specifications from 2022. If not provided, the
	// voucher will use the vat returns specification that is default on the
	// account if there is any, otherwise
	// GoApi.Common.VatReturnSpecification.None .
	VATReturnSpecification VATReturnSpecification `json:"VatReturnSpecification"`
}

type ManualJournalVoucherLines

type ManualJournalVoucherLines []ManualJournalVoucherLine

type ManualJournalVoucherPost

type ManualJournalVoucherPost struct {
	// contains filtered or unexported fields
}

func (*ManualJournalVoucherPost) Do

func (*ManualJournalVoucherPost) Method

func (r *ManualJournalVoucherPost) Method() string

func (ManualJournalVoucherPost) NewPathParams

func (ManualJournalVoucherPost) NewQueryParams

func (ManualJournalVoucherPost) NewRequestBody

func (*ManualJournalVoucherPost) NewResponseBody

func (*ManualJournalVoucherPost) PathParams

func (*ManualJournalVoucherPost) PathParamsInterface

func (r *ManualJournalVoucherPost) PathParamsInterface() PathParams

func (*ManualJournalVoucherPost) QueryParams

func (*ManualJournalVoucherPost) RequestBody

func (*ManualJournalVoucherPost) RequestBodyInterface

func (r *ManualJournalVoucherPost) RequestBodyInterface() interface{}

func (*ManualJournalVoucherPost) SetMethod

func (r *ManualJournalVoucherPost) SetMethod(method string)

func (*ManualJournalVoucherPost) SetRequestBody

func (*ManualJournalVoucherPost) URL

func (r *ManualJournalVoucherPost) URL() *url.URL

type ManualJournalVoucherPostBody

type ManualJournalVoucherPostBody ManualJournalVoucher

func (ManualJournalVoucherPostBody) MarshalJSON

func (v ManualJournalVoucherPostBody) MarshalJSON() ([]byte, error)

type ManualJournalVoucherPostPathParams

type ManualJournalVoucherPostPathParams struct {
}

func (*ManualJournalVoucherPostPathParams) Params

type ManualJournalVoucherPostQueryParams

type ManualJournalVoucherPostQueryParams struct{}

func (ManualJournalVoucherPostQueryParams) ToURLValues

type ManualJournalVoucherPostResponseBody

type ManualJournalVoucherPostResponseBody struct{}

type ManualJournalVouchers

type ManualJournalVouchers []ManualJournalVoucher

type ManualJournalVouchersGet

type ManualJournalVouchersGet struct {
	// contains filtered or unexported fields
}

func (*ManualJournalVouchersGet) Do

func (*ManualJournalVouchersGet) Method

func (r *ManualJournalVouchersGet) Method() string

func (ManualJournalVouchersGet) NewPathParams

func (ManualJournalVouchersGet) NewQueryParams

func (ManualJournalVouchersGet) NewRequestBody

func (*ManualJournalVouchersGet) NewResponseBody

func (*ManualJournalVouchersGet) PathParams

func (*ManualJournalVouchersGet) PathParamsInterface

func (r *ManualJournalVouchersGet) PathParamsInterface() PathParams

func (*ManualJournalVouchersGet) QueryParams

func (r *ManualJournalVouchersGet) QueryParams() QueryParams

func (*ManualJournalVouchersGet) RequestBody

func (*ManualJournalVouchersGet) RequestBodyInterface

func (r *ManualJournalVouchersGet) RequestBodyInterface() interface{}

func (*ManualJournalVouchersGet) SetMethod

func (r *ManualJournalVouchersGet) SetMethod(method string)

func (*ManualJournalVouchersGet) SetRequestBody

func (*ManualJournalVouchersGet) URL

func (r *ManualJournalVouchersGet) URL() *url.URL

type ManualJournalVouchersGetBody

type ManualJournalVouchersGetBody struct {
}

type ManualJournalVouchersGetPathParams

type ManualJournalVouchersGetPathParams struct {
}

func (*ManualJournalVouchersGetPathParams) Params

type ManualJournalVouchersGetQueryParams

type ManualJournalVouchersGetQueryParams struct {
}

func (ManualJournalVouchersGetQueryParams) ToURLValues

type ManualJournalVouchersGetResponseBody

type ManualJournalVouchersGetResponseBody struct {
	Data    ManualJournalVouchers `json:"data"`
	Success bool                  `json:"success"`
	Count   int                   `json:"count"`
}

type Oauth2Config

type Oauth2Config struct {
	clientcredentials.Config
}

func NewOauth2Config

func NewOauth2Config() *Oauth2Config

func (*Oauth2Config) SetBaseURL

func (c *Oauth2Config) SetBaseURL(baseURL *url.URL)

type OutgoingInvoice

type OutgoingInvoice struct {
	// Gets the remaining amount to be paid on this invoice. This field will
	// only have a value on sent or paid invoices and is shown in the client's
	// default currency code.
	Balance float64 `json:"Balance,omitempty"`
	// Gets or sets the code of the branding theme to be used when sending this
	// invoice.
	BrandingThemeCode string `json:"BrandingThemeCode,omitempty"`
	// Gets the cid. This field will only have a value on sent invoices.
	// (Norwegian: KID)
	Cid string `json:"Cid,omitempty"`
	// The contact group name. Will be returned from PowerOffice Go if
	// GoApi.Invoices.OutgoingInvoice.ContactGroupId is set
	ContactGroup string `json:"ContactGroup,omitempty"`
	// The contact group Id. Is set if the invoice is a group invoice. Set this
	// to a valid ContactGroup identifier if the invoice is a group invoice. It
	// is not possible to set GoApi.Invoices.OutgoingInvoice.CustomerCode and
	// ContactGroupId on the same invoice.
	ContactGroupID int `json:"ContactGroupId,omitempty"`
	// Gets or sets the contract no.
	ContractNo string `json:"ContractNo,omitempty"`
	// Gets the date this entity was created.
	CreatedDate Date `json:"CreatedDate,omitempty"`
	// Gets or sets the currency code of the outgoing invoice.
	CurrencyCode string `json:"CurrencyCode,omitempty"`
	// Gets or sets an normalized (always base 1) currency exchange rate.
	CurrencyExchangeRate float64 `json:"CurrencyExchangeRate,omitempty"`
	// Gets or sets the code of the Customer that this invoice should be
	// delivered to. It is not possible to set
	// GoApi.Invoices.OutgoingInvoice.ContactGroupId and CustomerCode on the
	// same invoice.
	CustomerCode int `json:"CustomerCode,omitempty"`
	// Gets the customer email address. On sent invoices this field will contain
	// the email the invoice was delivered to if the delivery type was
	// GoApi.Common.InvoiceDeliveryType.PdfByEmail .
	CustomerEmail string `json:"CustomerEmail,omitempty"`
	// Gets or sets the customer reference.
	CustomerReference string `json:"CustomerReference,omitempty"`
	// Gets or sets the customer reference contact person id. This property will
	// be used instead of CustomerReference if provided. The customer must have
	// a contact person with this ID created to use this property.
	CustomerReferenceContactPersonID int `json:"CustomerReferenceContactPersonId,omitempty"`
	// Gets or sets the custom matching reference. This value will be matched
	// with the sub ledger entries on vouchers with same CustomMatchingReference
	// after posting.
	CustomMatchingReference string `json:"CustomMatchingReference,omitempty"`
	// Gets the external DebtCollectionCase status associated with this invoice.
	DebtCollectionCaseStatus DebtCollectionCaseStatus `json:"DebtCollectionCaseStatus,omitempty"`
	// Gets the external DebtCollectionCase code.
	DebtCollectionCode string `json:"DebtCollectionCode,omitempty"`
	// Gets the delivery address' Address1 that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddress1 string `json:"DeliveryAddress1,omitempty"`
	// Gets the delivery address Address2 that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddress2 string `json:"DeliveryAddress2,omitempty"`
	// Gets the delivery address City that was set on the invoice when it was
	// sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressCity string `json:"DeliveryAddressCity,omitempty"`
	// Gets the delivery address CountryCode that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressCountryCode string `json:"DeliveryAddressCountryCode,omitempty"`
	// Gets or sets the delivery address identifier.
	DeliveryAddressID int `json:"DeliveryAddressId,omitempty"`
	// Gets the delivery address ZipCode that was set on the invoice when it was
	// sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressZipCode string `json:"DeliveryAddressZipCode,omitempty"`
	// Gets or sets the delivery date.
	DeliveryDate Date `json:"DeliveryDate,omitempty"`
	// Gets or set the terms of delivery of the invoice.
	DeliveryTerm string `json:"DeliveryTerm,omitempty"`
	// Gets or sets code of the Department this invoice is for. This code will
	// be inherited on all OutgoingInvoiceLines unless "-1" (no department) is
	// specified.
	DepartmentCode string `json:"DepartmentCode,omitempty"`
	// Gets the code of the CustomDimensionValue 1 this invoice is for.
	Dim1Code string `json:"Dim1Code,omitempty"`
	// Gets the code of the CustomDimensionValue 2 this invoice is for.
	Dim2Code string `json:"Dim2Code,omitempty"`
	// Gets the code of the CustomDimensionValue 3 this invoice is for.
	Dim3Code string `json:"Dim3Code,omitempty"`
	// Gets the document no (invoice number). This field will only have a value
	// on sent invoices.
	DocumentNo string `json:"DocumentNo,omitempty"`
	// Gets the due date. This is the due date on the invoice that was sent from
	// PowerOffice Go and will only have a value on sent invoices.
	DueDate Date `json:"DueDate,omitempty"`
	// Gets the expected due date. This is the date when the invoice is expected
	// to be paid by a customer. In essence this is an override of
	// GoApi.Invoices.OutgoingInvoice.DueDate , that is set by a user in
	// PowerOffice Go after the invoice has been delivered. This field will only
	// have a value on sent invoices.
	ExpectedDueDate Date `json:"ExpectedDueDate,omitempty"`
	// Gets or sets an external import reference. Can be used to
	// correlate/duplicate check invoices. Must be a unique value for a given
	// client, exception will be thrown if an OutgoingInvoice with equal import
	// reference exists. Max length is 50 characters.
	ExternalImportReference string `json:"ExternalImportReference,omitempty"`
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved, and should be provided when an
	// entity should be edited. If this identifier is not provided, PowerOffice
	// Go will try to create a new entity.
	ID string `json:"Id,omitempty"`
	// Gets or sets the imported order no. This should be set as the order
	// number in the external system.
	ImportedOrderNo int `json:"ImportedOrderNo,omitempty"`
	// Gets the internal debt collection status associated with this invoice.
	InvoiceDebtCollectionStatus DebtCollectionStatus `json:"InvoiceDebtCollectionStatus,omitempty"`
	// Gets the type of the invoice delivery. This is the means of delivery that
	// was used when the invoice was delivered by PowerOffice Go.
	InvoiceDeliveryType InvoiceDeliveryType `json:"InvoiceDeliveryType,omitempty"`
	// Gets the invoice number in number format. Available only for sent and
	// posted invoices.
	InvoiceNo int `json:"InvoiceNo,omitempty"`
	// Get current delivery invoice status. When true the invoice is under
	// delivery.
	IsInvoiceBeingProcessed bool `json:"IsInvoiceBeingProcessed,omitempty"`
	// Gets the last changed date.
	LastChanged Date `json:"LastChanged,omitempty"`
	// If invoice delivery fails this property will contain the last error
	// message.
	LastErrorMessage string `json:"LastErrorMessage,omitempty"`
	// Gets the net amount of the invoice. This is calculated from the
	// GoApi.Invoices.OutgoingInvoice.OutgoingInvoiceLines .
	NetAmount float64 `json:"NetAmount,omitempty"`
	// Gets or sets the order date.
	OrderDate Date `json:"OrderDate,omitempty"`
	// Gets the order no. This value is auto generated when saving a new
	// OutgoingInvoice.
	OrderNo int `json:"OrderNo,omitempty"`
	// Gets or sets code of the Employee that is the sales person on this
	// outgoing invoice.
	OurReferenceEmployeeCode int `json:"OurReferenceEmployeeCode,omitempty"`
	// Gets the outgoing invoice lines ( OutgoingInvoiceLine . Trying to add
	// more then 10000 lines to an OutgoingInvoice will throw an exception when
	// saving.
	OutgoingInvoiceLines OutgoingInvoiceLines `json:"OutgoingInvoiceLines,omitempty"`
	// Gets or sets the payment terms. This is the number of days until the
	// invoice is due after sending.
	PaymentTerms int `json:"PaymentTerms,omitempty"`
	// Gets or sets the code of the Project this invoice is for. This code will
	// be inherited on all OutgoingInvoiceLines unless "-1" (no project) is
	// specified.
	ProjectCode string `json:"ProjectCode,omitempty"`
	// Gets or sets the purchase order no.
	PurchaseOrderNo string `json:"PurchaseOrderNo,omitempty"`
	// Gets or sets the related DocumentNo linking the original invoice. Can be
	// used when creating credit notes. If set on a credit note, this credit
	// note will be matched with an invoice with the provided InvoiceNo /
	// DocumentNo when the credit note is posted.
	RelatedDocumentNo string `json:"RelatedDocumentNo,omitempty"`
	// Gets the date the invoice was sent in Go. Only available for invoices
	// sent from Go. Blank if the invoice was posted to Go using an import of
	// the voucher.
	SentDate Date `json:"SentDate,omitempty"`
	// Gets or sets the status. Invoices can only be set to status
	// GoApi.Invoices.OutgoingInvoiceStatus.Draft or
	// GoApi.Invoices.OutgoingInvoiceStatus.Approved . Defaults to
	// GoApi.Invoices.OutgoingInvoiceStatus.Draft .
	Status OutgoingInvoiceStatus `json:"Status,omitempty"`
	// Gets the total amount of the invoice. This is calculated from the
	// GoApi.Invoices.OutgoingInvoice.OutgoingInvoiceLines .
	TotalAmount float64 `json:"TotalAmount,omitempty"`
	// Gets the voucher date. This is the date when the invoice was sent from
	// PowerOffice Go and will only have a value on sent invoices.
	VoucherDate Date `json:"VoucherDate,omitempty"`
	// Gets the voucher number the invoice have. Only avaialble for sent
	// invoices.
	VoucherNo int `json:"VoucherNo,omitempty"`
}

type OutgoingInvoiceIDGet

type OutgoingInvoiceIDGet struct {
	// contains filtered or unexported fields
}

func (*OutgoingInvoiceIDGet) Do

func (*OutgoingInvoiceIDGet) Method

func (r *OutgoingInvoiceIDGet) Method() string

func (OutgoingInvoiceIDGet) NewPathParams

func (OutgoingInvoiceIDGet) NewQueryParams

func (OutgoingInvoiceIDGet) NewRequestBody

func (*OutgoingInvoiceIDGet) NewResponseBody

func (*OutgoingInvoiceIDGet) PathParams

func (*OutgoingInvoiceIDGet) PathParamsInterface

func (r *OutgoingInvoiceIDGet) PathParamsInterface() PathParams

func (*OutgoingInvoiceIDGet) QueryParams

func (r *OutgoingInvoiceIDGet) QueryParams() QueryParams

func (*OutgoingInvoiceIDGet) RequestBody

func (*OutgoingInvoiceIDGet) RequestBodyInterface

func (r *OutgoingInvoiceIDGet) RequestBodyInterface() interface{}

func (*OutgoingInvoiceIDGet) SetMethod

func (r *OutgoingInvoiceIDGet) SetMethod(method string)

func (*OutgoingInvoiceIDGet) SetRequestBody

func (r *OutgoingInvoiceIDGet) SetRequestBody(body OutgoingInvoiceIDGetBody)

func (*OutgoingInvoiceIDGet) URL

func (r *OutgoingInvoiceIDGet) URL() *url.URL

type OutgoingInvoiceIDGetBody

type OutgoingInvoiceIDGetBody struct {
}

type OutgoingInvoiceIDGetPathParams

type OutgoingInvoiceIDGetPathParams struct {
	ID string `schema:"id"`
}

func (*OutgoingInvoiceIDGetPathParams) Params

type OutgoingInvoiceIDGetQueryParams

type OutgoingInvoiceIDGetQueryParams struct {
}

func (OutgoingInvoiceIDGetQueryParams) ToURLValues

func (p OutgoingInvoiceIDGetQueryParams) ToURLValues() (url.Values, error)

type OutgoingInvoiceIDGetResponseBody

type OutgoingInvoiceIDGetResponseBody struct {
	Data    interface{} `json:"data"`
	Success bool        `json:"success"`
	Count   int         `json:"count"`
}

type OutgoingInvoiceLine

type OutgoingInvoiceLine struct {
	// Gets or sets if GoApi.Invoices.OutgoingInvoiceLine.Accrual is used to
	// enable accrual of the invoice. (Norwegian: Periodisering)
	Accrual Accrual `json:"Accrual,omitempty"`
	// Gets or sets code of the Department this line is for. By default the
	// DepartmentCode in the head (OutgoingInvoice) will be inherited and used
	// when this is null. Use "-1" to set "No department".
	DepartmentCode string `json:"DepartmentCode,omitempty"`
	// Gets or sets the description.
	Description string `json:"Description,omitempty"`
	// Gets the code of the CustomDimensionValue 1 this line is for.
	Dim1Code string `json:"Dim1Code,omitempty"`
	// Gets the code of the CustomDimensionValue 2 this line is for.
	Dim2Code string `json:"Dim2Code,omitempty"`
	// Gets the code of the CustomDimensionValue 3 this line is for.
	Dim3Code string `json:"Dim3Code,omitempty"`
	// Gets or sets the discount. The value must be between 0 and 1. I.e. 0.5 =
	// 50% discount. Can also be used to add a premium in percent of the sales
	// price (usually markup) by having negative number. Negative numbers can be
	// between -10 and 0.
	DiscountPercent float64 `json:"DiscountPercent,omitempty"`
	//
	ExemptVAT bool `json:"ExemptVat,omitempty"`
	// Gets or sets an external import line reference. Can be used to
	// correlate/duplicate check invoice lines. Must be a unique value for a
	// given client, exception will be thrown if an OutgoingInvoiceLine with
	// equal import reference exists for the same invoice. Max length is 50
	// characters.
	ExternalImportLineReference string `json:"ExternalImportLineReference,omitempty"`
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved, and should be provided when an
	// entity should be edited. If this identifier is not provided, PowerOffice
	// Go will try to create a new entity. Important notice: When the
	// OutgoingInvoice status goes from Draft or Approved to a posted invoice
	// (status Sent, Paid or Archived). The draft invoice is copied over to a
	// posted invoice, causing the Id to change.
	ID int `json:"Id,omitempty"`
	// Flag indicating if a line should be deleted from the invoice when calling
	// the save method. This property should be used when deleting lines.
	IsDeleted bool `json:"IsDeleted,omitempty"`
	// Gets or sets the type of the line. When adding invoice lines to the
	// OutgoingInvoice , the types supported are
	// GoApi.Common.VoucherLineType.Normal ,
	// GoApi.Common.VoucherLineType.Summary and
	// GoApi.Common.VoucherLineType.Text .
	LineType VoucherLineType `json:"LineType,omitempty"`
	// Gets the net amount. This is calculated by PowerOffice Go using the
	// quantity, product price (or overridden unit price) and discount, not
	// including value added tax (VAT).
	NetAmount float64 `json:"NetAmount,omitempty"`
	// Gets or sets the code of the Product . Must be provided on lines that
	// affects the result (lines that are of GoApi.Common.VoucherLineType.Normal
	// ).
	ProductCode string `json:"ProductCode,omitempty"`
	// Gets or sets the code of the Project this line is for. By default the
	// ProjectCode in the head (OutgoingInvoice) will be inherited and used when
	// this is null. Use "-1" to set "No project".
	ProjectCode string `json:"ProjectCode,omitempty"`
	// Gets or sets the quantity.
	Quantity float64 `json:"Quantity,omitempty"`
	// Gets the code of the GeneralLedgerAccount that will be used for posting
	// the revenue from the product when the invoice is sent if the customer is
	// exempt VAT, or the line has ExemptVat set to true. The usual application
	// in Go is that the alternative sales account is used for vat free sales
	// with code 5. The alternative sales account can, however, be used with an
	// account with vat in order to alternate between different vat codes on the
	// product. This applies to all outgoing invoices with OutgoingInvoiceStatus
	// GoApi.Invoices.OutgoingInvoiceStatus.Draft or
	// GoApi.Invoices.OutgoingInvoiceStatus.Approved . Lines on invoices that
	// are posted (has OutgoingInvoiceStatus
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent or
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid .), this property will contain
	// the actual account that was used to post the revenue.
	SalesAccount int `json:"SalesAccount,omitempty"`
	// Gets or sets code of the Employee that is the sales person on this line.
	SalesPersonEmployeeCode int `json:"SalesPersonEmployeeCode,omitempty"`
	// Gets or sets the sort order. Can be used to specify the order of the
	// lines on the invoice.
	SortOrder int `json:"SortOrder,omitempty"`
	// Gets the total amount. This is calculated by PowerOffice Go using the
	// quantity, product price (or overridden unit price) and discount,
	// including value added tax (VAT).
	TotalAmount float64 `json:"TotalAmount,omitempty"`
	// Gets or sets the overridden unit cost price for this Product . If this is
	// not provided, the unit cost price on the product will be set.
	UnitCost float64 `json:"UnitCost,omitempty"`
	// Gets or sets the unit of measure. This is an Oasis compatible
	// unit-of-measure code. This property is deprecated. Use
	// GoApi.Invoices.OutgoingInvoiceLine.UnitOfMeasureCode . If both
	// GoApi.Invoices.OutgoingInvoiceLine.UnitOfMeasure and
	// GoApi.Invoices.OutgoingInvoiceLine.UnitOfMeasureCode is set,
	// GoApi.Invoices.OutgoingInvoiceLine.UnitOfMeasureCode will be used.
	UnitOfMeasure string `json:"UnitOfMeasure,omitempty"`
	// Gets or sets the unit of measure. This is an Oasis compatible
	// unit-of-measure code.
	UnitOfMeasureCode UnitOfMeasureCode `json:"UnitOfMeasureCode,omitempty"`
	// Gets or sets the overridden unit price for this Product before discount.
	// If this is not provided, the unit price on the product will be set.
	UnitPrice float64 `json:"UnitPrice,omitempty"`
	// Gets the code of the VatCode . (Norwegian: MVA-kode)
	VATCode string `json:"VatCode,omitempty"`
	// Gets the code of the GeneralLedgerAccount that will be used for posting the revenue from the product when the invoice is sent if the customer is exempt VAT. This applies to all outgoing invoices with OutgoingInvoiceStatus GoApi.Invoices.OutgoingInvoiceStatus.Draft or GoApi.Invoices.OutgoingInvoiceStatus.Approved . Lines on invoices that are posted (has OutgoingInvoiceStatus GoApi.Invoices.OutgoingInvoiceStatus.Sent or GoApi.Invoices.OutgoingInvoiceStatus.Paid .), this property will contain the actual account that was used to post the revenue.
	VatExemptSalesAccount int `json:"VatExemptSalesAccount,omitempty"`
	// Gets the rate of the VatCode .
	VATRate float64 `json:"VatRate,omitempty"`
	// Gets or sets the VatReturnSpecification . Entries that are vat reportable
	// might report vat return specifications from 2022. If not provided, the
	// line will use the vat returns specification that is default on the
	// account of the product if there is any, otherwise
	// GoApi.Common.VatReturnSpecification.None .
	VATReturnSpecification VATReturnSpecification `json:"VatReturnSpecification,omitempty"`
}

func (OutgoingInvoiceLine) IsEmpty

func (l OutgoingInvoiceLine) IsEmpty() bool

func (OutgoingInvoiceLine) MarshalJSON

func (l OutgoingInvoiceLine) MarshalJSON() ([]byte, error)

type OutgoingInvoiceLines

type OutgoingInvoiceLines []OutgoingInvoiceLine

type OutgoingInvoiceListGet

type OutgoingInvoiceListGet struct {
	// contains filtered or unexported fields
}

func (*OutgoingInvoiceListGet) Do

func (*OutgoingInvoiceListGet) Method

func (r *OutgoingInvoiceListGet) Method() string

func (OutgoingInvoiceListGet) NewPathParams

func (OutgoingInvoiceListGet) NewQueryParams

func (OutgoingInvoiceListGet) NewRequestBody

func (*OutgoingInvoiceListGet) NewResponseBody

func (*OutgoingInvoiceListGet) PathParams

func (*OutgoingInvoiceListGet) PathParamsInterface

func (r *OutgoingInvoiceListGet) PathParamsInterface() PathParams

func (*OutgoingInvoiceListGet) QueryParams

func (r *OutgoingInvoiceListGet) QueryParams() QueryParams

func (*OutgoingInvoiceListGet) RequestBody

func (*OutgoingInvoiceListGet) RequestBodyInterface

func (r *OutgoingInvoiceListGet) RequestBodyInterface() interface{}

func (*OutgoingInvoiceListGet) SetMethod

func (r *OutgoingInvoiceListGet) SetMethod(method string)

func (*OutgoingInvoiceListGet) SetRequestBody

func (r *OutgoingInvoiceListGet) SetRequestBody(body OutgoingInvoiceListGetBody)

func (*OutgoingInvoiceListGet) URL

func (r *OutgoingInvoiceListGet) URL() *url.URL

type OutgoingInvoiceListGetBody

type OutgoingInvoiceListGetBody struct {
}

type OutgoingInvoiceListGetPathParams

type OutgoingInvoiceListGetPathParams struct {
}

func (*OutgoingInvoiceListGetPathParams) Params

type OutgoingInvoiceListGetQueryParams

type OutgoingInvoiceListGetQueryParams struct {
}

func (OutgoingInvoiceListGetQueryParams) ToURLValues

type OutgoingInvoiceListGetResponseBody

type OutgoingInvoiceListGetResponseBody struct {
	Data    OutgoingInvoiceListItems `json:"data"`
	Success bool                     `json:"success"`
	Count   int                      `json:"count"`
}

type OutgoingInvoiceListItem

type OutgoingInvoiceListItem struct {
	// Gets the remaining amount to be paid on this invoice. This field will
	// only have a value on sent or paid invoices and is shown in the client's
	// default currency code.
	Balance float64 `json:"Balance"`
	// Gets the code of the BrandingTheme to be used when sending this invoice.
	BrandingThemeCode string `json:"BrandingThemeCode"`
	// Gets the cid. This field will only have a value on sent invoices. (Norwegian: KID)
	CID string `json:"Cid"`
	// The ContactGroup name. Is set if the invoice is a group invoice.
	ContactGroup string `json:"ContactGroup"`
	// The ContactGroup Id. Is set if the invoice is a group invoice. It is not
	// possible to set GoApi.Invoices.OutgoingInvoiceListItem.CustomerCode and
	// ContactGroupId on the same invoice.
	ContactGroupId int `json:"ContactGroupId"`
	// Gets the contract number.
	ContractNo string `json:"ContractNo"`
	// Gets the date this entity was created.
	CreatedDate Date `json:"CreatedDate"`
	// Gets the currency code of the outgoing invoice.
	CurrencyCode string `json:"CurrencyCode"`
	// Gets an normalized (always base 1) currency exchange rate.
	CurrencyExchangeRate float64 `json:"CurrencyExchangeRate"`
	// Gets the code of the Customer that this invoice should be or was
	// delivered to. It is not possible to set
	// GoApi.Invoices.OutgoingInvoiceListItem.ContactGroupId and CustomerCode on
	// the same invoice.
	CustomerCode int `json:"CustomerCode"`
	// Gets the customer email address. On sent invoices this field will contain
	// the email the invoice was delivered to if the delivery type was
	// GoApi.Common.InvoiceDeliveryType.PdfByEmail .
	CustomerEmail string `json:"CustomerEmail"`
	// Gets the customer reference.
	CustomerReference string `json:"CustomerReference"`
	// Gets the custom matching reference. This value will be matched with
	// vouchers with same CustomMatchingReference after posting.
	CustomMatchingReference string `json:"CustomMatchingReference"`
	// Gets the external DebtCollectionCase status associated with this invoice.
	DebtCollectionCaseStatus DebtCollectionCaseStatus `json:"DebtCollectionCaseStatus"`
	// Gets the external DebtCollectionCase code.
	DebtCollectionCode string `json:"DebtCollectionCode"`
	// Gets the delivery address' Address1 that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddress1 string `json:"DeliveryAddress1"`
	// Gets the delivery address Address2 that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddress2 string `json:"DeliveryAddress2"`
	// Gets the delivery address City that was set on the invoice when it was
	// sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressCity string `json:"DeliveryAddressCity"`
	// Gets the delivery address CountryCode that was set on the invoice when it
	// was sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressCountryCode string `json:"DeliveryAddressCountryCode"`
	// Gets the delivery Address identifier.
	DeliveryAddressID int `json:"DeliveryAddressId"`
	// Gets the delivery address ZipCode that was set on the invoice when it was
	// sent. Will only have a value on invoices with
	// GoApi.Invoices.OutgoingInvoiceStatus.Sent ,
	// GoApi.Invoices.OutgoingInvoiceStatus.Paid and
	// GoApi.Invoices.OutgoingInvoiceStatus.Archived .
	DeliveryAddressZipCode string `json:"DeliveryAddressZipCode"`
	// Gets the delivery term of the invoice.
	DeliveryTerm string `json:"DeliveryTerm"`
	// Gets code of the Department this invoice is from.
	DepartmentCode string `json:"DepartmentCode"`
	// Gets the code of the CustomDimensionValue 1 this invoice is for.
	Dim1Code string `json:"Dim1Code"`
	// Gets the code of the CustomDimensionValue 2 this invoice is for.
	Dim2Code string `json:"Dim2Code"`
	// Gets the code of the CustomDimensionValue 3 this invoice is for.
	Dim3Code string `json:"Dim3Code"`
	// Gets the document no (invoice number). This field will only have a value
	// on sent invoices.
	DocumentNo string `json:"DocumentNo"`
	// Gets the due date.
	DueDate Date `json:"DueDate"`
	// Gets the expected due date.
	ExpectedDueDate Date `json:"ExpectedDueDate"`
	// Gets ExternalImportReference. Can be used to correlate/duplicate check
	// invoices. Must be a unique value for a given client. Max length is 50
	// characters.
	ExternalImportReference string `json:"ExternalImportReference"`
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved.
	ID string `json:"Id"`
	// Gets the imported order no. This was set as the order number in the
	// external system when the outgoing invoice was created.
	ImportedOrderNo int `json:"ImportedOrderNo"`
	// Gets the internal debt collection status associated with this invoice.
	InvoiceDebtCollectionStatus DebtCollectionStatus `json:"InvoiceDebtCollectionStatus"`
	// Gets the invoice delivery date.
	InvoiceDeliveryDate Date `json:"InvoiceDeliveryDate"`
	// Gets the type of the invoice delivery. This is the means of delivery that
	// was used when the invoice was delivered by PowerOffice Go.
	InvoiceDeliveryType InvoiceDeliveryType `json:"InvoiceDeliveryType"`
	// Gets the invoice number in number format. Available only for sent and
	// posted invoices.
	InvoiceNo int `json:"InvoiceNo"`
	// Get current delivery invoice status. When true the invoice is under
	// delivery.
	IsInvoiceBeingProcessed bool `json:"IsInvoiceBeingProcessed"`
	// Gets the last changed date.
	LastChanged Date `json:"LastChanged"`
	// If invoice delivery fails this property will contain the last error
	// message.
	LastErrorMessage string `json:"LastErrorMessage"`
	// Gets the net amount of the invoice. This is calculated from the lines of
	// the outgoing invoice.
	NetAmount float64 `json:"NetAmount"`
	// Gets the order date.
	OrderDate Date `json:"OrderDate"`
	// Gets the order no. This value is auto generated when saving a new
	// OutgoingInvoice.
	OrderNo int `json:"OrderNo"`
	// Gets code of the Employee that is the sales person on this outgoing
	// invoice.
	OurReferenceEmployeeCode int `json:"OurReferenceEmployeeCode"`
	// Gets the payment terms. This is the number of days until the invoice is
	// due after sending.
	PaymentTerms int `json:"PaymentTerms"`
	// Gets the code of the Project this invoice is for.
	ProjectCode string `json:"ProjectCode"`
	// Gets the purchase order no.
	PurchaseOrderNo string `json:"PurchaseOrderNo"`
	// Gets the related DocumentNo linking the original invoice. Can be used
	// when creating credit notes. If set on a credit note, this credit note
	// will be matched with an invoice with the provided InvoiceNo / DocumentNo
	// when the credit note is posted.
	RelatedDocumentNo string `json:"RelatedDocumentNo"`
	// Gets the date the invoice was sent in Go. Only available for invoices
	// sent from Go. Blank if the invoice was posted to Go using an import of
	// the voucher.
	SentDate Date `json:"SentDate"`
	// Gets or sets the OutgoingInvoiceStatus .
	Status OutgoingInvoiceStatus `json:"Status"`
	// Gets the total amount of the invoice. This is calculated from the lines
	// of the outgoing invoice.
	TotalAmount float64 `json:"TotalAmount"`
	// Gets the voucher date.
	VoucherDate Date `json:"VoucherDate"`
	// Gets the voucher number the invoice have. Only avaialble for sent invoices.
	VoucherNo int `json:"VoucherNo"`
}

type OutgoingInvoiceListItems

type OutgoingInvoiceListItems []OutgoingInvoiceListItem

type OutgoingInvoicePost

type OutgoingInvoicePost struct {
	// contains filtered or unexported fields
}

func (*OutgoingInvoicePost) Do

func (*OutgoingInvoicePost) Method

func (r *OutgoingInvoicePost) Method() string

func (OutgoingInvoicePost) NewPathParams

func (OutgoingInvoicePost) NewQueryParams

func (OutgoingInvoicePost) NewRequestBody

func (r OutgoingInvoicePost) NewRequestBody() OutgoingInvoicePostBody

func (*OutgoingInvoicePost) NewResponseBody

func (*OutgoingInvoicePost) PathParams

func (*OutgoingInvoicePost) PathParamsInterface

func (r *OutgoingInvoicePost) PathParamsInterface() PathParams

func (*OutgoingInvoicePost) QueryParams

func (*OutgoingInvoicePost) RequestBody

func (r *OutgoingInvoicePost) RequestBody() *OutgoingInvoicePostBody

func (*OutgoingInvoicePost) RequestBodyInterface

func (r *OutgoingInvoicePost) RequestBodyInterface() interface{}

func (*OutgoingInvoicePost) SetMethod

func (r *OutgoingInvoicePost) SetMethod(method string)

func (*OutgoingInvoicePost) SetRequestBody

func (r *OutgoingInvoicePost) SetRequestBody(body OutgoingInvoicePostBody)

func (*OutgoingInvoicePost) URL

func (r *OutgoingInvoicePost) URL() *url.URL

type OutgoingInvoicePostBody

type OutgoingInvoicePostBody OutgoingInvoice

func (OutgoingInvoicePostBody) MarshalJSON

func (v OutgoingInvoicePostBody) MarshalJSON() ([]byte, error)

type OutgoingInvoicePostPathParams

type OutgoingInvoicePostPathParams struct {
}

func (*OutgoingInvoicePostPathParams) Params

type OutgoingInvoicePostQueryParams

type OutgoingInvoicePostQueryParams struct{}

func (OutgoingInvoicePostQueryParams) ToURLValues

func (p OutgoingInvoicePostQueryParams) ToURLValues() (url.Values, error)

type OutgoingInvoicePostResponseBody

type OutgoingInvoicePostResponseBody struct{}

type OutgoingInvoiceStatus

type OutgoingInvoiceStatus int

type OutgoingInvoiceVoucher

type OutgoingInvoiceVoucher struct {
	// Gets or sets the Customer Identification Code (Norwegian: KID).
	CID string `json:"Cid,omitempty"`
	// Gets or sets the contract no.
	ContractNo string `json:"ContractNo,omitempty"`
	// Gets the created date. This value is assigned by PowerOffice Go when the voucher is posted.
	CreatedDate Date `json:"CreatedDate,omitempty"`
	// Gets or sets the currency code.
	CurrencyCode string `json:"CurrencyCode,omitempty"`
	// Gets or sets the normalized currency rate of the OutgoingInvoiceVoucher (factor to multiply amount in voucher currency with to get amount in local currency).
	CurrencyRate float64 `json:"CurrencyRate,omitempty"`
	// Gets or sets the code of the Customer this invoice is to.
	CustomerCode int `json:"CustomerCode,omitempty"`
	// Gets or sets the customer reference.
	CustomerReference string `json:"CustomerReference,omitempty"`
	// Gets or sets the custom matching reference. Vouchers with this value can be matched with other entries with same CustomMatchingReference.
	CustomMatchingReference string `json:"CustomMatchingReference,omitempty"`
	// Gets or sets the delivery date.
	DeliveryDate Date `json:"DeliveryDate,omitempty"`
	// Gets or set delivery term of the invoice.
	DeliveryTerm string `json:"DeliveryTerm,omitempty"`
	// Gets or sets the code of the Department .
	DepartmentCode string `json:"DepartmentCode,omitempty"`
	// Gets or sets the code of the custom dimension 1.
	Dim1Code string `json:"Dim1Code,omitempty"`
	// Gets or sets the code of the custom dimension 2.
	Dim2Code string `json:"Dim2Code,omitempty"`
	// Gets or sets the code of the custom dimension 3.
	Dim3Code string `json:"Dim3Code,omitempty"`
	// Gets or sets the due date. If not provided, the due date of the outgoing invoice voucher will be set to VoucherDate.
	DueDate Date `json:"DueDate,omitempty"`
	// Gets or sets ExternalImportReference. Can be used to correlate/duplicate check vouchers. Must be a unique value for a given client. Max length is 50 characters.
	ExternalImportReference string `json:"ExternalImportReference,omitempty"`
	// Set to true if the voucher has VoucherDocumentation imported through the API.
	HasImportedDocumentation bool `json:"HasImportedDocumentation,omitempty"`
	// Gets a value indicating if the invoice has original documentation.
	HasVoucherDocumentation bool `json:"HasVoucherDocumentation,omitempty"`
	// Gets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved.
	ID string `json:"Id,omitempty"`
	// Gets or sets the imported order no.
	ImportedOrderNo int `json:"ImportedOrderNo,omitempty"`
	// Gets or sets the imported Voucher number. This value can be used to set a reference from the external system creating the voucher.
	ImportedVoucherNo int `json:"ImportedVoucherNo,omitempty"`
	// Gets or sets the invoice number.
	InvoiceNo int `json:"InvoiceNo,omitempty"`
	// Gets information whether this voucher has been reversed. This can be done by the API through the Reverse method in the voucher service.
	IsReversed bool `json:"IsReversed,omitempty"`
	// Gets or sets the outgoing invoice lines ( OutgoingInvoiceVoucherLine ). All lines will be posted credit and the credit sum of the lines will be posted debit on the Customer sub ledger account. Lines that shall be posted debit should be specified with negative amount.
	Lines OutgoingInvoiceVoucherLines `json:"Lines,omitempty"`
	// Gets or sets the code of the Employee that is the sales person on this invoice.
	OurReferenceEmployeeCode int `json:"OurReferenceEmployeeCode,omitempty"`
	// Gets or sets the code of the Project .
	ProjectCode string `json:"ProjectCode,omitempty"`
	// Gets or sets the purchase order no.
	PurchaseOrderNo string `json:"PurchaseOrderNo,omitempty"`
	// Gets or sets the SAF-T batch id. This is the ID of the batch in the system that transferred the voucher. Should be set if this voucher is a batch voucher containing the entries of multiple vouchers in the external system. When this voucher is exported to SAF-T, this property is transactions BatchID in the SAF-T file. The external systems SAF-T export should set the same BatchId on all the transactions that are included in this Voucher to ensure audit trail. Max length is 35 characters.
	SaftBatchId string `json:"SaftBatchId,omitempty"`
	// Gets or sets the SAF-T source id. This is the ID of the system that generated the voucher. When this voucher is exported to SAF-T, this property is mapped on the transactions SourceID in the SAF-T file. If the creating system is required to export it's own SAF-T file, this source id should correspond with the SystemID in the SAF-T file of the external system to ensure an audit trail. Max length is 35 characters.
	SaftSourceId string `json:"SaftSourceId,omitempty"`
	// Gets or sets the voucher date.
	VoucherDate Date `json:"VoucherDate,omitempty"`
	// Gets the Voucher number. This value is assigned by PowerOffice Go when the voucher is posted.
	VoucherNo int `json:"VoucherNo,omitempty"`
}

func (OutgoingInvoiceVoucher) IsEmpty

func (v OutgoingInvoiceVoucher) IsEmpty() bool

func (OutgoingInvoiceVoucher) MarshalJSON

func (v OutgoingInvoiceVoucher) MarshalJSON() ([]byte, error)

type OutgoingInvoiceVoucherLine

type OutgoingInvoiceVoucherLine struct {
	// Gets or sets the account code this voucher line should be posted on. The account code can either be the code on a GeneralLedgerAccount , or if the accounting entry is on a sub ledger account, the code provided can be for a Customer , Supplier or Employee .
	AccountCode int `json:"AccountCode,omitempty"`
	// Gets or sets if GoApi.Voucher.OutgoingInvoiceVoucherLine.Accrual is used to enable accrual of the invoice. (Norwegian: Periodisering)
	Accrual Accrual `json:"Accrual,omitempty"`
	// Gets or sets the total amount of the line. This is the amount to be posted in the same currency as the voucher, or the currency overridden on the line for some voucher types. The amount is specified VAT inclusive. Specifying a negative amount here will post the amount as credit and a positive amount will post the amount as debit on all voucher types except OutgoingInvoiceVoucher / OutgoingInvoiceVoucherLine .
	Amount float64 `json:"Amount,omitempty"`
	// Gets or sets the code of the Department . If set to "-1", this line will not inherit the department set on the voucher level, and no department will be posted to Go for this line
	DepartmentCode string `json:"DepartmentCode,omitempty"`
	// Gets or sets the description.
	Description string `json:"Description,omitempty"`
	// Gets or sets the code of the custom dimension 1. If set to "-1", this line will not inherit the value set on the voucher level, and no Dim1 will be posted to Go for this line
	Dim1Code string `json:"Dim1Code,omitempty"`
	// Gets or sets the code of the custom dimension 2. If set to "-1", this line will not inherit the value set on the voucher level, and no Dim2 will be posted to Go for this line
	Dim2Code string `json:"Dim2Code,omitempty"`
	// Gets or sets the code of the custom dimension 3. If set to "-1", this line will not inherit the value set on the voucher level, and no Dim3 will be posted to Go for this line
	Dim3Code string `json:"Dim3Code,omitempty"`
	// Gets or sets the discount on the sales line. This field is only for information and does not effect Amount (The discount is already included in the amount). The value should be between 0 and 100, where the value 50 means 50 % discount. Can also be used to add a premium in percent of the sales price (usually markup) by having negative number. Negative numbers can be between -1000 and 0.
	DiscountPercent float64 `json:"DiscountPercent,omitempty"`
	// Gets or sets the external import line reference. Used by external systems to match voucher lines. Max length is 50 characters.
	ExternalImportLineReference string `json:"ExternalImportLineReference,omitempty"`
	// Gets the identifier. This identifier is unique and assigned by PowerOffice Go when a new entity is saved.
	ID int `json:"Id,omitempty"`
	// Gets or sets the code of the Product .
	ProductCode string `json:"ProductCode,omitempty"`
	// Gets or sets the code of the Project . If set to "-1", this line will not inherit the project set on the voucher level, and no project will be posted to Go for this line
	ProjectCode string `json:"ProjectCode,omitempty"`
	// Gets or sets the quantity.
	Quantity float64 `json:"Quantity,omitempty"`
	// Gets or sets the product unit.
	Unit string `json:"Unit,omitempty"`
	// Gets or sets the unit cost price of this outgoing invoice line.
	UnitCostPrice float64 `json:"UnitCostPrice,omitempty"`
	// Gets or sets the code of the VatCode for this voucher line. Vat will be calculated depending on what code is provided from the total amount inclusive (Amount). If not provided, the voucher will use default VAT code 0 on the line, resulting in a vat free transaction.
	VATCode string `json:"VatCode,omitempty"`
	// Gets or sets the VatReturnSpecification . Entries that are vat reportable might report vat return specifications from 2022. If not provided, the voucher will use the vat returns specification that is default on the account if there is any, otherwise GoApi.Common.VatReturnSpecification.None .
	VATReturnSpecification VATReturnSpecification `json:"VatReturnSpecification,omitempty"`
}

func (OutgoingInvoiceVoucherLine) IsEmpty

func (l OutgoingInvoiceVoucherLine) IsEmpty() bool

func (OutgoingInvoiceVoucherLine) MarshalJSON

func (l OutgoingInvoiceVoucherLine) MarshalJSON() ([]byte, error)

type OutgoingInvoiceVoucherLines

type OutgoingInvoiceVoucherLines []OutgoingInvoiceVoucherLine

type OutgoingInvoiceVoucherPost

type OutgoingInvoiceVoucherPost struct {
	// contains filtered or unexported fields
}

func (*OutgoingInvoiceVoucherPost) Do

func (*OutgoingInvoiceVoucherPost) Method

func (r *OutgoingInvoiceVoucherPost) Method() string

func (OutgoingInvoiceVoucherPost) NewPathParams

func (OutgoingInvoiceVoucherPost) NewQueryParams

func (OutgoingInvoiceVoucherPost) NewRequestBody

func (*OutgoingInvoiceVoucherPost) NewResponseBody

func (*OutgoingInvoiceVoucherPost) PathParams

func (*OutgoingInvoiceVoucherPost) PathParamsInterface

func (r *OutgoingInvoiceVoucherPost) PathParamsInterface() PathParams

func (*OutgoingInvoiceVoucherPost) QueryParams

func (*OutgoingInvoiceVoucherPost) RequestBody

func (*OutgoingInvoiceVoucherPost) RequestBodyInterface

func (r *OutgoingInvoiceVoucherPost) RequestBodyInterface() interface{}

func (*OutgoingInvoiceVoucherPost) SetMethod

func (r *OutgoingInvoiceVoucherPost) SetMethod(method string)

func (*OutgoingInvoiceVoucherPost) SetRequestBody

func (*OutgoingInvoiceVoucherPost) URL

type OutgoingInvoiceVoucherPostBody

type OutgoingInvoiceVoucherPostBody OutgoingInvoiceVoucher

func (OutgoingInvoiceVoucherPostBody) MarshalJSON

func (v OutgoingInvoiceVoucherPostBody) MarshalJSON() ([]byte, error)

type OutgoingInvoiceVoucherPostPathParams

type OutgoingInvoiceVoucherPostPathParams struct {
}

func (*OutgoingInvoiceVoucherPostPathParams) Params

type OutgoingInvoiceVoucherPostQueryParams

type OutgoingInvoiceVoucherPostQueryParams struct{}

func (OutgoingInvoiceVoucherPostQueryParams) ToURLValues

type OutgoingInvoiceVoucherPostResponseBody

type OutgoingInvoiceVoucherPostResponseBody struct{}

type PathParams

type PathParams interface {
	Params() map[string]string
}

type QueryParams

type QueryParams interface {
	ToURLValues() (url.Values, error)
}

type Request

type Request interface {
	Method() string
	// QueryParams() QueryParams
	PathParamsInterface() PathParams
	RequestBodyInterface() interface{}
	URL() *url.URL
}

type RequestCompletionCallback

type RequestCompletionCallback func(*http.Request, *http.Response)

RequestCompletionCallback defines the type of the request callback function

type UnitOfMeasureCode

type UnitOfMeasureCode int

type VATCode

type VATCode struct {
	// Gets the identifier. This identifier is unique and assigned by
	// PowerOffice Go when a new entity is saved, and should be provided when an
	// entity should be edited. If this identifier is not provided, PowerOffice
	// Go will try to create a new entity.
	ID int `json:"id"`
	// Gets or sets the code.
	Code string `json:"code"`
	// Gets or sets the name.
	Name string `json:"name"`
	// Gets or sets the description.
	Description string `json:"description"`
	// Gets or sets the rate. This is a value between 0 and 100. With 0
	// representing 0% VAT and 100 representing 100% VAT.
	Rate float64 `json:"rate"`
	// Gets or sets a value indicating whether this instance is active.
	IsActive bool `json:"isActive"`
	// Gets the date that this VAT code is active from.
	ValidFrom string `json:"validFrom"`
	// Gets or sets a value indicating whether this VAT code is custom created.
	IsCustom bool `json:"isCustom"`
	// Gets or sets the VAT basis ratio (Norwegian: Forholdsmessig fradrag MVA).
	// This is a value between 0 and 1. With 0 representing 0% VAT basis ratio
	// and 1 representing 100% VAT basis ratio. Example: 1000 kr with 50% VAT
	// basis ratio and 25% VAT rate is calculated: 1000 0.5 0.25 = 125 kr.
	VATBasisRatio float64 `json:"vatBasisRatio"`
	// Gets the date which the VAT code expires.
	Validto string `json:"validto,omitempty"`
}

type VATCodes

type VATCodes []VATCode

type VATCodesGet

type VATCodesGet struct {
	// contains filtered or unexported fields
}

func (*VATCodesGet) Do

func (*VATCodesGet) Method

func (r *VATCodesGet) Method() string

func (VATCodesGet) NewPathParams

func (r VATCodesGet) NewPathParams() *VATCodesGetPathParams

func (VATCodesGet) NewQueryParams

func (r VATCodesGet) NewQueryParams() *VATCodesGetQueryParams

func (VATCodesGet) NewRequestBody

func (r VATCodesGet) NewRequestBody() VATCodesGetBody

func (*VATCodesGet) NewResponseBody

func (r *VATCodesGet) NewResponseBody() *VATCodesGetResponseBody

func (*VATCodesGet) PathParams

func (r *VATCodesGet) PathParams() *VATCodesGetPathParams

func (*VATCodesGet) PathParamsInterface

func (r *VATCodesGet) PathParamsInterface() PathParams

func (*VATCodesGet) QueryParams

func (r *VATCodesGet) QueryParams() QueryParams

func (*VATCodesGet) RequestBody

func (r *VATCodesGet) RequestBody() *VATCodesGetBody

func (*VATCodesGet) RequestBodyInterface

func (r *VATCodesGet) RequestBodyInterface() interface{}

func (*VATCodesGet) SetMethod

func (r *VATCodesGet) SetMethod(method string)

func (*VATCodesGet) SetRequestBody

func (r *VATCodesGet) SetRequestBody(body VATCodesGetBody)

func (*VATCodesGet) URL

func (r *VATCodesGet) URL() *url.URL

type VATCodesGetBody

type VATCodesGetBody struct {
}

type VATCodesGetPathParams

type VATCodesGetPathParams struct {
}

func (*VATCodesGetPathParams) Params

func (p *VATCodesGetPathParams) Params() map[string]string

type VATCodesGetQueryParams

type VATCodesGetQueryParams struct {
}

func (VATCodesGetQueryParams) ToURLValues

func (p VATCodesGetQueryParams) ToURLValues() (url.Values, error)

type VATCodesGetResponseBody

type VATCodesGetResponseBody struct {
	Data    VATCodes `json:"data"`
	Success bool     `json:"success"`
	Count   int      `json:"count"`
}

type VATReturnSpecification

type VATReturnSpecification int

type VoucherLineType

type VoucherLineType int

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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