Vai al contenuto principale
POST
Create Manual Order

Autorizzazioni

Authorization
string
header
obbligatorio

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Parametri della query

lang
string | null

Force content language (it|en|sq)

Corpo

application/json

POST /admin/orders: in più la chiave del doppio clic e il totale del preventivo.

customer
ExistingCustomerIn · object
obbligatorio

Un cliente con account del negozio, attivo e non anonimizzato.

delivery
ShipDeliveryIn · object
obbligatorio

Spedizione: fatturazione uguale alla spedizione quando manca (come il checkout).

payment
PaymentIn · object
obbligatorio

mode in R2a: cod o bank_transfer (ORD-16), paid («già pagato», ORD-32); il link con R5. Un altro valore: 422 order.payment_method_not_allowed.

Solo con paid (per gli altri modi non contano):

  • method: come sono arrivati i soldi, cash · card_pos · bank_transfer (bonifico ricevuto); un altro valore, o nessuno, è 422 order.payment_method_not_allowed;
  • reason: obbligatorio (blocco order.payment_reason_required), perché da Pagato lo stato non torna indietro e uno sbaglio si corregge solo con un rimborso;
  • reference: il riferimento del bonifico o della ricevuta del POS, nella riga del registro dei pagamenti;
  • fiscal: lo scontrino (orders/receipt.py), obbligatorio e mai preselezionato con Nextera attivo (blocco order.fiscal_choice_required); now senza Nextera attivo è il blocco 409 order.fiscal_now_unavailable;
  • delivered_now: «Consegnato subito» al banco, l'ordine nasce Consegnato.
idempotency_key
string<uuid>
obbligatorio
expected_total
obbligatorio
channel
enum<string> | null
Opzioni disponibili:
phone,
whatsapp,
email,
in_store,
other
business_invoice
BusinessInvoiceInput · object | null

B2B invoice details captured at checkout for THIS order (order-level snapshot). Independent from the account default, so guests and one-off company purchases work too. When present the order becomes a B2B receipt; an Albanian company sends tax_id (NIPT), a foreign one vat_number (VAT).

lines
LineIn · object[]
Maximum array length: 100
notes
string | null
Maximum string length: 1000
internal_note
string | null
Maximum string length: 2000
email_customer
boolean
predefinito:false
locale
string | null
Maximum string length: 5

Risposta

Successful Response

{"data": StaffOrderOut, "meta": …}; 201, o 200 per un replay.

data
StaffOrderOut · object | null
meta
ManualOrderMeta · object | null
error
string | null
error_code
string | null