# List of proforma invoices

Returns the list of proforma invoices. Supports the 
Paging.

Endpoint: GET /api/proforma-invoices
Version: 1.0.0
Security: shoptetAccessToken, shoptetPrivateApiToken

## Query parameters:

  - `isValid` (boolean)
    filtering according to document validity
    Example: true

  - `orderCode` (string)
    filtering according to number of order.
    Example: "2018000012"

  - `creationTimeFrom` (string)
    filtering items created after or same as requested datetime. ISO
8601 format ("2017-12-12T22:08:01+0100").
    Example: "2017-02-28T17:04:47+0100"

  - `creationTimeTo` (string)
    filtering items created before or same as requested datetime. ISO
8601 format ("2017-12-12T22:08:01+0100")
    Example: "2017-02-28T17:04:47+0100"

  - `varSymbol` (string)
    filtering according to variable symbol of proforma invoice
    Example: "666"

  - `itemsPerPage` (integer)
    Returned items per page. Default value is 20. Max value is 100.
    Example: 50

  - `page` (integer)
    Page number to return. Default value is 1.
    Example: 3

## Header parameters:

  - `Content-Type` (string, required)

## Response 200 fields (application/json):

  - `data` (object, required)

  - `data.proformaInvoices` (array, required)

  - `data.proformaInvoices.code` (string, required)
    proforma invoice number. Caution! This does not have to be just a number, it can also contain letters, a dash, etc.

  - `data.proformaInvoices.varSymbol` (number,null, required)
    variable symbol

  - `data.proformaInvoices.isValid` (boolean, required)
    is the proforma invoice valid?

  - `data.proformaInvoices.orderCode` (string,null, required)
    purchase order number (can be null). Caution! This does not have to be just a number, it can also contain letters, a dash, etc.

  - `data.proformaInvoices.creationTime` (string,null, required)
    date of issue, in ISO 8601 format

  - `data.proformaInvoices.billCompany` (string,null, required)
    company name

  - `data.proformaInvoices.billFullName` (string,null, required)
    full name

  - `data.proformaInvoices.price` (object, required)
    price information

  - `data.proformaInvoices.price.vat` (string,null, required)
    VAT value, two decimal places

  - `data.proformaInvoices.price.toPay` (string,null, required)
    total price to pay

  - `data.proformaInvoices.price.currencyCode` (string, required)
    Currency code. List of available currencies within the e-shop can be found in endpoint GET /api/eshop.

  - `data.proformaInvoices.price.withoutVat` (string,null, required)
    price excluding tax

  - `data.proformaInvoices.price.withVat` (string,null, required)
    price including tax

  - `data.proformaInvoices.price.exchangeRate` (string, required)
    currency rate of the receipt for the default currency of the shop. This value is saved together with the price and reflects the historical value valid in the instant of the order creation. If the shop changes the default currency, the value still refers to the original currency!

  - `data.proformaInvoices.price.invoicingExchangeRate` (string)
    currency rate of the receipt for the default currency of the shop. This value is saved together with the price and reflects the historical value valid in the instant of the order creation. If the shop changes the default currency, the value still refers to the original currency!

  - `data.proformaInvoices.price.partialPaymentAmount` (string,null)
    can be value expressed in percents or as exact money value expression (with up to two decimal places) - depends on partialPaymentType value

  - `data.proformaInvoices.price.partialPaymentType` (string)
    'percents' = partial payment as percentage from total price | 'absolute' = exact expression of partial payment in money

  - `data.proformaInvoices.changeTime` (string,null, required)
    date of last change, in ISO 8601 format

  - `data.paginator` (object)

  - `data.paginator.totalCount` (integer, required)
    total number of available records

  - `data.paginator.page` (integer, required)
    current page

  - `data.paginator.pageCount` (integer, required)
    total available of pages

  - `data.paginator.itemsOnPage` (integer, required)
    number of currently returned records

  - `data.paginator.itemsPerPage` (integer, required)
    required number of records per page

  - `errors` (array,null, required)

  - `errors.errorCode` (string, required)
    Short text error identification

  - `errors.message` (string, required)
    Descriptive error message

  - `errors.instance` (string, required)
    Identification of the entity referenced

  - `metadata` (object, required)

  - `metadata.requestId` (string, required)
    Request identifier. Useful for logging/reporting purposes.


