Laskut

Tällä sivulla käsitellään laskun hakua ja luontia.

Lasku malli

  • Name
    customer_id
    Type
    integer
    Description

    Uniikki tunniste asiakkaalle, johon lasku liittyy.

  • Name
    user_id
    Type
    integer
    Description

    Uniikki tunniste käyttäjälle, johon lasku liittyy.

  • Name
    invoice_date
    Type
    date
    Description

    Laskun päivämäärä muodossa YYYY-MM-DD (vuosi-kuukausi-päivä).

  • Name
    invoice_due_date
    Type
    date
    Description

    Laskun eräpäivä muodossa YYYY-MM-DD (vuosi-kuukausi-päivä).

  • Name
    vat_code
    Type
    string
    Description

    ALV-koodi laskulle. Toistaiseksi käytössä vain KOMY (Kotimaan myynti) ja RAMY (Rakentamispalvelun myynti). Lue lisää ALV-koodit

  • Name
    invoice_lines
    Type
    array
    Description

    Taulukko laskurivielementeistä, jotka liittyvät tähän laskuun. Katso alapuolelta laskurivi malli

Laskurivi malli

  • Name
    name
    Type
    string
    Description

    Nimi.

  • Name
    quantity
    Type
    integer
    Description

    Määrä

  • Name
    unit_price
    Type
    double
    Description

    Yksikköhinta.

  • Name
    vat_percent
    Type
    double
    Description

    ALV-prosentti.

  • Name
    unit_type
    Type
    string
    Description

    Yksikkötyyppi.

  • Name
    is_vat_included
    Type
    boolean
    Description

    Sisältyykö ALV laskuriviin.

  • Name
    line_start_date
    Type
    datetime
    Description

    Laskurivin alkamispäivä ja -aika.

  • Name
    line_end_date
    Type
    datetime
    Description

    Laskurivin loppumispäivä ja -aika.


GET/api/v1/invoices

Listaa laskut

Tämä päätepiste mahdollistaa laskujen hakemisen.

Pyyntö

GET
/api/v1/invoices
<?php
$client = new Client();
$headers = [
  'Api-Key' => '{api-key}',
  'Api-Secret' => '{api-secret}',
  'Api-Identifier' => '{api-identifier}'
];
$request = new Request('GET', 'https://uusi.palkkaonline.fi/api/v1/invoices', $headers);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();

Vastaus

{
  "invoices": [
    {
        "id": 18,
        "invoice_number": null,
        "user_id": 3,
        "customer_id": 10,
        "payment_id": 3,
        "invoice_date": "2022-06-17T21:00:00.000000Z",
        "invoice_due_date": "2022-07-03T21:00:00.000000Z",
        "invoice_total_alv0": "3719.23",
        "invoice_total": "3719.23",
        "comment": null,
        "invoice_status_code": "PAID",
        "debt_collection": 0,
        "vatcode_id": 1,
        "credited_invoice_id": null
    },
    {
        "id": 25,
        // ...
    },
    {
        "id": 29,
        // ...
    }
  ]
}

POST/api/v1/invoices

Luo lasku

Tämä päätepiste mahdollistaa uuden laskun luomisen.

Pakolliset parametrit

  • Name
    user_id
    Type
    integer
    Description

    Uniikki tunniste käyttäjälle, johon lasku liittyy.

  • Name
    customer_id
    Type
    integer
    Description

    Uniikki tunniste asiakkaalle, johon lasku liittyy.

  • Name
    invoice_date
    Type
    date
    Description

    Laskun päivämäärä muodossa YYYY-MM-DD (vuosi-kuukausi-päivä).

  • Name
    invoice_due_date
    Type
    date
    Description

    Laskun eräpäivä muodossa YYYY-MM-DD (vuosi-kuukausi-päivä).

  • Name
    invoice_lines
    Type
    array
    Description

    Taulukko laskurivielementeistä, jotka liittyvät tähän laskuun. Katso alapuolelta laskurivi malli

Valinnaiset parametrit

  • Name
    vat_code
    Type
    string
    Description

    ALV-koodi laskulle. Toistaiseksi käytössä vain KOMY (Kotimaan myynti) ja RAMY (Rakentamispalvelun myynti). Jos ei anneta niin käytetään oletuksena KOMY.

  • Name
    vat_percent
    Type
    double
    Description

    Laskurivin ALV-prosentti. Jos laskun ALV-koodi on "KOMY" oletuksena käytetään 24%, mutta sen lisäksi voidaan tähän muuttamalla antaa 14%, 10%, 0%. "RAMY" ALV-koodilla oletuksena käytetään 0%. Lue lisää.

Pyyntö

POST
/api/v1/invoices
<?php
$client = new Client();
$headers = [
  'Api-Key' => '{api-key}',
  'Api-Secret' => '{api-secret}',
  'Api-Identifier' => '{api-identifier}'
];
$body = '{
    "invoice_date": "2023-09-15",
    "invoice_due_date": "2023-09-30",
    "customer_id": 562,
    "user_id": 1,
    "vat_code":"KOMY",
    "invoice_lines": [
      {
          "name": "Tuote 1",
          "quantity": 5,
          "unit_price": 25.00,
          "vat_percent": 0.24,
          "unit_type": "kpl",
          "is_vat_included": 1,
          "line_start_date": "2023-09-15",
          "line_end_date": "2023-09-30"
      },
      {
          "name": "Tippi",
          "quantity": 1,
          "unit_price": 100.00,
          "vat_percent": 0.0,
          "unit_type": "tunti",
          "is_vat_included": 0,
          "line_start_date": "2023-09-15",
          "line_end_date": "2023-09-18"
      }
    ]
}';
$request = new Request('POST', 'https://uusi.palkkaonline.fi/api/v1/invoices', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();

Vastaus

{
    "message": "Invoice and invoice lines created successfully",
    "invoice": 10315
}

GET/api/v1/invoices/:id

Hae lasku

Tämä päätepiste mahdollistaa laskun hakemisen id:llä.

Pyyntö

GET
/api/v1/invoices/10311
<?php
$client = new Client();
$headers = [
  'Api-Key' => '{api-key}',
  'Api-Secret' => '{api-secret}',
  'Api-Identifier' => '{api-identifier}'
];
$request = new Request('GET', 'https://uusi.palkkaonline.fi/api/v1/invoices/10311', $headers);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();

Vastaus

{
    "invoice": {
        "id": 10311,
        "invoice_number": 12668,
        "user_id": 1,
        "customer_id": 562,
        "payment_id": null,
        "invoice_date": "2023-09-14T21:00:00.000000Z",
        "invoice_due_date": "2023-09-29T21:00:00.000000Z",
        "invoice_total_alv0": "200.81",
        "invoice_total": "225.00",
        "comment": null,
        "invoice_status_code": "UNSENT",
        "credited_invoice_id": null,
        "debt_collection": 1
    }
}