Overview
Order requests let shoppers ask for something the merchant makes or sources for them: a tailored outfit, a cake for a date, or an item that is not in the catalogue. Nothing is charged. The merchant reviews the request, replies with a price, and turns it into an order.
Two kinds of form
A product can carry a request form, returned by Get Product as request_form. Its mode decides the flow:
A product with an open price is also requestable, with or without a form. The store can also have a custom request form for anything not in the catalogue. Get Request Form returns it, and Create Request uses it for items sent without a variant_id.
Answering questions
Each field in fields has a key and a type. Send one answer per question, with the same key and the value for its type:
Options can carry prices. On a BUY_NOW cart line the chosen options are added to the unit price and shown as add_on, and the line’s answers list what the shopper chose.
Dates and daily limits
needed_by is the date the shopper needs the order by. It must fall between today and two years ahead, and no earlier than the longest lead time of the items. When a form is limited, the merchant takes only so many orders a day. Call Get Request Availability with the form’s id to grey out full days in your date picker; a full day is refused with 422.
Pictures
Upload each picture with Upload Request Picture before sending the request, then send the returned ids in photos (for the whole request) or in a PHOTO answer’s files. Pictures are PNG, JPG, GIF, WEBP or AVIF, at most 10 MB, sent as a data URI. Use each id once, within 24 hours.
Signed-in shoppers
Send shopper-token on Create Request to link the request to the shopper’s account. A MEASUREMENTS answer with save_as is then also saved to the account, and Save Measurements, List Measurements and Delete Measurements manage those sets so the shopper does not type them again.
Limits
A request holds up to 10 items, 5 links and 5 pictures. A shopper can send 5 requests and upload 30 pictures in 15 minutes.

