Place order
place_orderPlace the order and start its payment. First confirm the order, its total and the terms of sale (/pg/terms.html on the store) with the shopper; send accept_terms true only after their explicit yes. With a confirmed email (path A) the order is placed at once and the answer gives the payment step: payment.url to open, bank-transfer instructions or a voucher, plus pay_link (valid 30 days). Before confirmation (path B) the shopper pays first: open payment.url; the order is placed and their account made when the payment succeeds, and the cart is frozen until then. If another order just took stock, the answer is stock_changed with the changes and ready values: tell the shopper and place again with them only after they agree. Never call the order paid before check_payment says paid. Needs the order reference from start_order (Authorization: Bearer mo1_… or the ref argument). Send a fresh op_id (16 to 40 letters, digits, - or _) with each change: a repeat with the same op_id within 10 minutes answers the first result and never changes the order twice.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| add | No | Replacements the shopper accepted after stock_changed | |
| ref | No | Order reference (mo1_…) from start_order, only when the client cannot send it as Authorization: Bearer | |
| op_id | No | A fresh id per change (16 to 40 letters, digits, - or _); repeating it within 10 minutes answers the first result without changing the order again | |
| accept_terms | Yes | true only after the shopper explicitly accepted the terms of sale | |
| expect_total | No | The grand total in EUR the shopper agreed to (ready.expect_total) | |
| payment_method | No | A key from view_checkout, when not set yet or to change it | |
| accept_stock_changes | No | Place again after stock_changed, from ready |