Pienissimo Public API (1.0.0)

Download OpenAPI specification:Download

Introduzione

Questa documentazione elenca le funzioni pubbliche con cui è possibile inviare e ricevere dati dalla piattaforma Pienissimo.

operazioni disponibili

  • get: ottieni dei record
  • post: crea un nuovo record
  • put: aggiorna un record (crea uno nuovo se non trovo l'esistente)
  • patch: aggiorna un record
  • delete: elimina un record

Autenticazione

Ogni chiamata API deve essere accompagnata da un token che viene fornito dalla nostra assistenza al cliente, l'autenticazione è di tipo Bearer/token

bearer

Security Scheme Type: HTTP
HTTP Authorization Scheme: bearer
Bearer format: JWT

clienti

customers

crea un nuova anagrafica cliente

Request Body schema: application/json
required
firstname
string
lastname
required
string
email
string
phone
required
string
marketing_consent
boolean
marketing_consent_date
string
notes
string
address
string
zip
number
city
string
state
string
country
string
date_of_birth
string

format YYYY-MM-DD

Responses

Request samples

Content type
application/json
{
  • "firstname": "string",
  • "lastname": "string",
  • "email": "string",
  • "phone": "string",
  • "marketing_consent": true,
  • "marketing_consent_date": "string",
  • "notes": "string",
  • "address": "string",
  • "zip": 0,
  • "city": "string",
  • "state": "string",
  • "country": "string",
  • "date_of_birth": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "firstname": "string",
  • "lastname": "string",
  • "email": "string",
  • "phone": "string",
  • "marketing_consent": true,
  • "marketing_consent_date": "string",
  • "created_at": "string",
  • "notes": "string",
  • "address": "string",
  • "zip": 0,
  • "city": "string",
  • "state": "string",
  • "country": "string",
  • "date_of_birth": "string",
  • "source": "string",
  • "registration_date": "string",
  • "last_modified_at": "string"
}

prodotti

products

Ottieni la lista dei prodotti

query Parameters
offset
number
Default: 0

record di partenza da cui ricevere i dati

limit
number
Default: 20

numero massimo di record restituiti partendo dall'offset

sort_direction
string
Default: "ASC"
Enum: "ASC" "DESC"

direzione dell'ordinamento

Responses

Response samples

Content type
application/json
[
  • {
    }
]

product

crea un nuovo prodotto

Request Body schema: application/json
required
external_id
required
string
price
number
food_cost
number
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": "Acqua frizzante Dei monti 1L"
}

Response samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "id": 234,
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": {
    }
}

product/{id}

modifica un prodotto della piattaforma tramite il suo id

path Parameters
id
required
string
Request Body schema: application/json
required
external_id
required
string
price
number
food_cost
number
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": "Acqua frizzante Dei monti 1L"
}

Response samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "id": 234,
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": {
    }
}

product/{id}

elimina un prodotto tramite il suo id

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "record deleted"
}

product/{id}

aggiorna un prodotto tramite il suo id

path Parameters
id
required
string
Request Body schema: application/json
required
external_id
string
id
number
price
number
food_cost
number
name
string
object (Desc)

Responses

Request samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "id": 234,
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": {
    }
}

Response samples

Content type
application/json
{
  • "external_id": "XA223WE",
  • "id": 234,
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": {
    }
}

ordini

orders

Ottieni una lista di ordini

Authorizations:
bearer
query Parameters
offset
number
Default: 0

record di partenza da cui ricevere i dati

limit
number
Default: 20

numero massimo di record restituiti partendo dall'offset

sort_direction
string
Default: "ASC"
Enum: "ASC" "DESC"

direzione dell'ordinamento

Responses

Response samples

Content type
application/json
[
  • {
    }
]

order

Ottieni una lista di ordini

path Parameters
id
required
number

id univoco dell'ordine

Responses

Response samples

Content type
application/json
[
  • {
    }
]

scontrini

Importazione scontrini

scontrini

importa sulla piattaforma gli incassi e alimenta la BI
Importante:
L'integrazione dell'anagrafica prodotti (acquisendo quindi l'id prodotto di Pienissimo) è operazione fondamentale da restituire con il flusso degli scontrini, in modo da associare in singolo importo al prodotto venduto. In questo modo le informazioni disponibili sulla nosta BI saranno molto più dettagliate.

Request Body schema: application/json
required
required
Array of objects (ScontrinoPostDto)

Responses

Request samples

Content type
application/json
{
  • "data": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

cliente

id
required
number
firstname
string
lastname
required
string
email
string or null
phone
required
string
marketing_consent
boolean
marketing_consent_date
string
created_at
required
string
notes
string
address
string
zip
number or null
city
string
state
required
string
country
string
date_of_birth
string
source
string
registration_date
required
string
last_modified_at
required
string
{
  • "id": 0,
  • "firstname": "string",
  • "lastname": "string",
  • "email": "string",
  • "phone": "string",
  • "marketing_consent": true,
  • "marketing_consent_date": "string",
  • "created_at": "string",
  • "notes": "string",
  • "address": "string",
  • "zip": 0,
  • "city": "string",
  • "state": "string",
  • "country": "string",
  • "date_of_birth": "string",
  • "source": "string",
  • "registration_date": "string",
  • "last_modified_at": "string"
}

scontrino

receipt_source
string
Default: "P"
Enum: "P" "O"

provenienza scontrino, P = prenotazione, O = ordine

receipt_type
required
string
Default: "isTotal"
Enum: "isTotal" "isDutch" "isSplit"

tipo di scontrino

  • isTotal = Scontrino unico
  • isDutch = alla romana (diviso in parti uguali)
  • isSplit = separaconto
custom_order_id
required
number

numero ordine

custom_receipt_id
required
number

numero scontrino

custom_order_row_id
required
number

numero riga scontrino

competence_date
required
string

data di competenza

order_date
required
string

data di creazione ordine. Formato AAAA-MM-GG

order_time
required
string

ora di creazione. Formato HH:MM

name
string

nome cliente

surname
string

cognome cliente

email
string

email cliente

phone
string

telefono cliente

total_order
required
number

totale ordine

payment_type
required
string
Default: "Contanti"
Enum: "Contanti" "Carta"

tipo pagamento

create_by
string

nome cameriere

total_seats
required
number

numero coperti

total_vat
required
number

importo iva

description
string

descrizione piatto

pieces
number

quantità

product_id
number

codice prodotto

total_price
number

prezzo totale

unit_price
number

prezzo unitario

unit_food_cost
number

costo unitario

{
  • "receipt_source": "P",
  • "receipt_type": "isTotal",
  • "custom_order_id": 0,
  • "custom_receipt_id": 0,
  • "custom_order_row_id": 0,
  • "competence_date": "string",
  • "order_date": "string",
  • "order_time": "string",
  • "name": "string",
  • "surname": "string",
  • "email": "string",
  • "phone": "string",
  • "total_order": 0,
  • "payment_type": "Contanti",
  • "create_by": "string",
  • "total_seats": 0,
  • "total_vat": 0,
  • "description": "string",
  • "pieces": 0,
  • "product_id": 0,
  • "total_price": 0,
  • "unit_price": 0,
  • "unit_food_cost": 0
}

prodotto

external_id
string
id
number
price
number
food_cost
number
name
string
object (Desc)
{
  • "external_id": "XA223WE",
  • "id": 234,
  • "price": 1.5,
  • "food_cost": 0.5,
  • "name": "Acqua frizzante",
  • "description": {
    }
}

ordine

id
number
name
string
lastname
string
payment_type
string
Default: "Contanti"
Enum: "Contanti" "Online" "Carta di credito" "stripe" "satispay" "paypal"
payment_status
string
Default: "non pagato"
Enum: "pagato" "non pagato"
order_status
string
Default: "non confermato"
Enum: "non confermato" "confermato" "in lavorazione" "in consegna" "consegnato"
order_type
string
Enum: "asporto" "delivery" "diretto"
order_date
string
order_total
number
city
string
address
string
zip_number
string
notes
string
delivery_cost
number
object
{
  • "id": 0,
  • "name": "string",
  • "lastname": "string",
  • "payment_type": "Contanti",
  • "payment_status": "pagato",
  • "order_status": "non confermato",
  • "order_type": "asporto",
  • "order_date": "string",
  • "order_total": 0,
  • "city": "string",
  • "address": "string",
  • "zip_number": "string",
  • "notes": "string",
  • "delivery_cost": 0,
  • "order_rows": {
    }
}