Mergi la conținut

Commerce API

Comenzi validate și concurență controlată

Launch recalculează totalul exclusiv din catalogul comerciantului, validează disponibilitatea, modificatorii și locația, apoi păstrează istoricul complet al statusurilor.

POST
Commerce /orders
orders:write

Creează comanda folosind `external_reference`, `expected_total_minor` și o cheie de idempotency stabilă.

POST
Commerce /orders/{order}/transitions
orders:write

Aplică o tranziție validă cu `expected_version`; un conflict `409` trebuie recitit, nu retrimis orb.

POST
Commerce /orders/{order}/payment-status
orders:write

Leagă starea operațională a comenzii de plata Monedo asociată.

Vizibilitatea comenzilor

Portalurile merchant trebuie să afișeze comenzile cu cardul numai după `authorized` sau `captured`. Evenimentele `pending` pot fi păstrate intern pentru checkout și reconciliere, dar nu se publică operatorilor. Comenzile cash-on-delivery sunt vizibile înainte de încasare deoarece plata are loc la livrare.
bash
curl -X POST https://api.monedo.eu/commerce/v1/orders \
  -H "Authorization: Bearer $MONEDO_API_KEY" \
  -H "Monedo-Merchant-Id: MERCHANT_BUSINESS_ID" \
  -H "Monedo-Version: 2026-08-28" \
  -H "Idempotency-Key: order-1042-create" \
  -H "Content-Type: application/json" \
  -d '{
    "external_reference": "order_1042",
    "location_id": "LOCATION_ID",
    "customer": { "name": "Ana Popescu", "phone": "+40700000000" },
    "fulfillment": { "type": "delivery", "notes": "Etaj 2" },
    "payment": { "method": "card", "status": "paid", "payment_intent_id": "pi_mnd_..." },
    "expected_total_minor": 4890,
    "lines": [{ "product_id": "PRODUCT_ID", "quantity": 1 }]
  }'