BokaMera.API.Host

<back to all web services

EaccountingInvoiceQuery

The following routes are available for this service:
GET/eaccounting/invoices
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class EaccountingInvoiceQuery : QueryData<InvoiceQueryResponse>(), ICompany
{
    open var BookingId:Int? = null
    open var Paid:Boolean? = null
    open var IncludeInvoiceLines:Boolean? = null
    open var IncludeInvoiceNotes:Boolean? = null
    open var IncludePaymentTermData:Boolean? = null
    open var IncludeInvoiceAddress:Boolean? = null
    override var CompanyId:UUID? = null
}

open class QueryData<T> : QueryBase()
{
}

@DataContract
open class QueryBase
{
    @DataMember(Order=1)
    open var Skip:Int? = null

    @DataMember(Order=2)
    open var Take:Int? = null

    @DataMember(Order=3)
    open var OrderBy:String? = null

    @DataMember(Order=4)
    open var OrderByDesc:String? = null

    @DataMember(Order=5)
    open var Include:String? = null

    @DataMember(Order=6)
    open var Fields:String? = null

    @DataMember(Order=7)
    open var Meta:HashMap<String,String>? = null
}

open class InvoiceQueryResponse
{
    open var InvoiceId:UUID? = null
    open var CreatedDate:Date? = null
    open var TotalAmount:BigDecimal? = null
    open var TotalVatAmount:BigDecimal? = null
    open var CustomerId:String? = null
    open var Rows:ArrayList<InvoiceLineQueryResponse> = ArrayList<InvoiceLineQueryResponse>()
    open var VatSpecification:ArrayList<VatSpecificationQueryResponse> = ArrayList<VatSpecificationQueryResponse>()
    open var InvoiceDate:String? = null
    open var DueDate:String? = null
    open var DeliveryDate:Date? = null
    open var Persons:ArrayList<Person> = ArrayList<Person>()
    open var InvoiceCustomerName:String? = null
    open var InvoiceAddress:EAccountingInvoiceAddress? = null
    open var CustomerIsPrivatePerson:Boolean? = null
    open var TermsOfPaymentId:String? = null
    open var TermsOfPaymentData:EAccountingTermsOfPaymentQueryResponse? = null
    open var CustomerEmail:String? = null
    open var InvoiceNumber:Int? = null
    open var CustomerNumber:String? = null
    open var Notes:ArrayList<NoteQueryResponse> = ArrayList<NoteQueryResponse>()
    open var NoteIds:ArrayList<String> = ArrayList<String>()
    open var CreatedUtc:Date? = null
    open var ModifiedUtc:Date? = null
    open var IncludesVat:Boolean? = null
    open var SendType:EAccountingInvoiceSendTypes? = null
    open var IsSold:Boolean? = null
    open var PaymentDate:Date? = null
    open var PaymentStatus:PaymentStatus? = null
    open var PaymentStatusTitle:String? = null
    open var CreditedBy:ArrayList<CreditedBy> = ArrayList<CreditedBy>()
    open var PriceSign:String? = null
    open var BookingId:String? = null
}

open class InvoiceLineQueryResponse
{
    open var ArticleNumber:String? = null
    open var ArticleId:String? = null
    open var IsServiceArticle:Boolean? = null
    open var AmountNoVat:BigDecimal? = null
    open var PercentVat:BigDecimal? = null
    open var LineNumber:Int? = null
    open var IsTextRow:Boolean? = null
    open var Text:String? = null
    open var UnitPrice:BigDecimal? = null
    open var UnitAbbreviation:String? = null
    open var UnitAbbreviationEnglish:String? = null
    open var DiscountPercentage:BigDecimal? = null
    open var Quantity:Float? = null
    open var IsWorkCost:Boolean? = null
    open var IsVatFree:Boolean? = null
    open var CostCenterItemId1:String? = null
    open var CostCenterItemId2:String? = null
    open var CostCenterItemId3:String? = null
    open var UnitId:String? = null
    open var ProjectId:String? = null
    open var WorkCostType:Int? = null
    open var WorkHours:Float? = null
    open var MaterialCosts:BigDecimal? = null
    open var GreenTechnologyType:GreenTechnologyType? = null
    open var ContributionMargin:ContributionMargin? = null
}

enum class GreenTechnologyType
{
    None,
    SolarCellInstallation,
    ElectricEnergyStorageInstallation,
    ElectricVehicleChargingPointInstallation,
}

open class ContributionMargin
{
    open var Amount:Int? = null
    open var Percentage:Int? = null
}

open class VatSpecificationQueryResponse
{
    open var AmountInvoiceCurrency:BigDecimal? = null
    open var VatAmountInvoiceCurrency:BigDecimal? = null
    open var VatPercent:BigDecimal? = null
}

open class Person
{
    open var Ssn:String? = null
    open var Amount:Int? = null
}

open class EAccountingInvoiceAddress
{
    open var CorporateIdentityNumber:String? = null
    open var InvoiceAddress1:String? = null
    open var InvoiceAddress2:String? = null
    open var InvoiceCity:String? = null
    open var InvoicePostalCode:String? = null
    open var InvoiceCountryCode:String? = null
}

open class EAccountingTermsOfPaymentQueryResponse
{
    open var Id:String? = null
    open var Name:String? = null
    open var NameEnglish:String? = null
    open var NumberOfDays:Int? = null
    open var TermsOfPaymentTypeId:Int? = null
    open var TermsOfPaymentTypeText:String? = null
    open var AvailableForSales:Boolean? = null
    open var AvailableForPurchase:Boolean? = null
}

open class NoteQueryResponse
{
    open var Id:String? = null
    open var Text:String? = null
    open var CreatedUtc:Date? = null
    open var ModifiedUtc:Date? = null
}

enum class EAccountingInvoiceSendTypes
{
    None,
    AutoInvoiceElectronic,
    AutoInvoicePrint,
    AutoInvoiceB2C,
}

enum class PaymentStatus
{
    Paid,
    Unpaid,
    Overdue,
}

open class CreditedBy
{
    open var CreditInvoiceId:String? = null
}

@DataContract
open class QueryResponse<T>
{
    @DataMember(Order=1)
    open var Offset:Int? = null

    @DataMember(Order=2)
    open var Total:Int? = null

    @DataMember(Order=3)
    open var Results:ArrayList<AccessKeyTypeResponse> = ArrayList<AccessKeyTypeResponse>()

    @DataMember(Order=4)
    open var Meta:HashMap<String,String>? = null

    @DataMember(Order=5)
    open var ResponseStatus:ResponseStatus? = null
}

open class AccessKeyTypeResponse
{
    open var Id:Int? = null
    open var KeyType:String? = null
    open var Description:String? = null
}

Kotlin EaccountingInvoiceQuery DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /eaccounting/invoices HTTP/1.1 
Host: api.bokamera.se 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<QueryResponseOfEAccountingDtos.InvoiceQueryResponseWg5EthtI xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Offset>0</Offset>
  <Total>0</Total>
  <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
    <d2p1:EAccountingDtos.InvoiceQueryResponse>
      <d2p1:BookingId>String</d2p1:BookingId>
      <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
      <d2p1:CreatedUtc>0001-01-01T00:00:00</d2p1:CreatedUtc>
      <d2p1:CreditedBy>
        <d2p1:EAccountingClientDtos.CreditedBy>
          <d2p1:CreditInvoiceId>String</d2p1:CreditInvoiceId>
        </d2p1:EAccountingClientDtos.CreditedBy>
      </d2p1:CreditedBy>
      <d2p1:CustomerEmail>String</d2p1:CustomerEmail>
      <d2p1:CustomerId>String</d2p1:CustomerId>
      <d2p1:CustomerIsPrivatePerson>false</d2p1:CustomerIsPrivatePerson>
      <d2p1:CustomerNumber>String</d2p1:CustomerNumber>
      <d2p1:DeliveryDate>0001-01-01T00:00:00</d2p1:DeliveryDate>
      <d2p1:DueDate>String</d2p1:DueDate>
      <d2p1:IncludesVat>false</d2p1:IncludesVat>
      <d2p1:InvoiceAddress>
        <d2p1:CorporateIdentityNumber>String</d2p1:CorporateIdentityNumber>
        <d2p1:InvoiceAddress1>String</d2p1:InvoiceAddress1>
        <d2p1:InvoiceAddress2>String</d2p1:InvoiceAddress2>
        <d2p1:InvoiceCity>String</d2p1:InvoiceCity>
        <d2p1:InvoiceCountryCode>String</d2p1:InvoiceCountryCode>
        <d2p1:InvoicePostalCode>String</d2p1:InvoicePostalCode>
      </d2p1:InvoiceAddress>
      <d2p1:InvoiceCustomerName>String</d2p1:InvoiceCustomerName>
      <d2p1:InvoiceDate>String</d2p1:InvoiceDate>
      <d2p1:InvoiceId>00000000-0000-0000-0000-000000000000</d2p1:InvoiceId>
      <d2p1:InvoiceNumber>0</d2p1:InvoiceNumber>
      <d2p1:IsSold>false</d2p1:IsSold>
      <d2p1:ModifiedUtc>0001-01-01T00:00:00</d2p1:ModifiedUtc>
      <d2p1:NoteIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:NoteIds>
      <d2p1:Notes>
        <d2p1:EAccountingDtos.NoteQueryResponse>
          <d2p1:CreatedUtc>0001-01-01T00:00:00</d2p1:CreatedUtc>
          <d2p1:Id>String</d2p1:Id>
          <d2p1:ModifiedUtc>0001-01-01T00:00:00</d2p1:ModifiedUtc>
          <d2p1:Text>String</d2p1:Text>
        </d2p1:EAccountingDtos.NoteQueryResponse>
      </d2p1:Notes>
      <d2p1:PaymentDate>0001-01-01T00:00:00</d2p1:PaymentDate>
      <d2p1:PaymentStatus>Paid</d2p1:PaymentStatus>
      <d2p1:PaymentStatusTitle>String</d2p1:PaymentStatusTitle>
      <d2p1:Persons>
        <d2p1:EAccountingClientDtos.Person>
          <d2p1:Amount>0</d2p1:Amount>
          <d2p1:Ssn>String</d2p1:Ssn>
        </d2p1:EAccountingClientDtos.Person>
      </d2p1:Persons>
      <d2p1:PriceSign>String</d2p1:PriceSign>
      <d2p1:Rows>
        <d2p1:EAccountingDtos.InvoiceLineQueryResponse>
          <d2p1:AmountNoVat>0</d2p1:AmountNoVat>
          <d2p1:ArticleId>String</d2p1:ArticleId>
          <d2p1:ArticleNumber>String</d2p1:ArticleNumber>
          <d2p1:ContributionMargin>
            <d2p1:Amount>0</d2p1:Amount>
            <d2p1:Percentage>0</d2p1:Percentage>
          </d2p1:ContributionMargin>
          <d2p1:CostCenterItemId1>String</d2p1:CostCenterItemId1>
          <d2p1:CostCenterItemId2>String</d2p1:CostCenterItemId2>
          <d2p1:CostCenterItemId3>String</d2p1:CostCenterItemId3>
          <d2p1:DiscountPercentage>0</d2p1:DiscountPercentage>
          <d2p1:GreenTechnologyType>None</d2p1:GreenTechnologyType>
          <d2p1:IsServiceArticle>false</d2p1:IsServiceArticle>
          <d2p1:IsTextRow>false</d2p1:IsTextRow>
          <d2p1:IsVatFree>false</d2p1:IsVatFree>
          <d2p1:IsWorkCost>false</d2p1:IsWorkCost>
          <d2p1:LineNumber>0</d2p1:LineNumber>
          <d2p1:MaterialCosts>0</d2p1:MaterialCosts>
          <d2p1:PercentVat>0</d2p1:PercentVat>
          <d2p1:ProjectId>String</d2p1:ProjectId>
          <d2p1:Quantity>0</d2p1:Quantity>
          <d2p1:Text>String</d2p1:Text>
          <d2p1:UnitAbbreviation>String</d2p1:UnitAbbreviation>
          <d2p1:UnitAbbreviationEnglish>String</d2p1:UnitAbbreviationEnglish>
          <d2p1:UnitId>String</d2p1:UnitId>
          <d2p1:UnitPrice>0</d2p1:UnitPrice>
          <d2p1:WorkCostType>0</d2p1:WorkCostType>
          <d2p1:WorkHours>0</d2p1:WorkHours>
        </d2p1:EAccountingDtos.InvoiceLineQueryResponse>
      </d2p1:Rows>
      <d2p1:SendType>None</d2p1:SendType>
      <d2p1:TermsOfPaymentData>
        <d2p1:AvailableForPurchase>false</d2p1:AvailableForPurchase>
        <d2p1:AvailableForSales>false</d2p1:AvailableForSales>
        <d2p1:Id>String</d2p1:Id>
        <d2p1:Name>String</d2p1:Name>
        <d2p1:NameEnglish>String</d2p1:NameEnglish>
        <d2p1:NumberOfDays>0</d2p1:NumberOfDays>
        <d2p1:TermsOfPaymentTypeId>0</d2p1:TermsOfPaymentTypeId>
        <d2p1:TermsOfPaymentTypeText>String</d2p1:TermsOfPaymentTypeText>
      </d2p1:TermsOfPaymentData>
      <d2p1:TermsOfPaymentId>String</d2p1:TermsOfPaymentId>
      <d2p1:TotalAmount>0</d2p1:TotalAmount>
      <d2p1:TotalVatAmount>0</d2p1:TotalVatAmount>
      <d2p1:VatSpecification>
        <d2p1:EAccountingDtos.VatSpecificationQueryResponse>
          <d2p1:AmountInvoiceCurrency>0</d2p1:AmountInvoiceCurrency>
          <d2p1:VatAmountInvoiceCurrency>0</d2p1:VatAmountInvoiceCurrency>
          <d2p1:VatPercent>0</d2p1:VatPercent>
        </d2p1:EAccountingDtos.VatSpecificationQueryResponse>
      </d2p1:VatSpecification>
    </d2p1:EAccountingDtos.InvoiceQueryResponse>
  </Results>
  <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Meta>
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
</QueryResponseOfEAccountingDtos.InvoiceQueryResponseWg5EthtI>