Замовляючи фотосесію через API, не можна було сказати, якого товару вона стосується. На обліковому записі з кількома товарами вирішувало сортування — перемагала найстаріша описана фотографія. У відповіді цього не було видно, а результат достатньо часто виходив правильним, щоб виглядати навмисним, тож інтеграція, яка працює з кількома товарами, не мала як переконатися, за генерування якого саме щойно заплатила.
Виклик тепер приймає productId — і це той самий ідентифікатор товару, який видає решта цієї поверхні, тож значення, прочитане з одного виклику, працює в сусідньому. Товар, якого немає на обліковому записі, відхиляється із зазначенням причини, замість того щоб тихо поступитися місцем автоматично обраному. Якщо не вказати жодного, поведінка лишається попередньою.
Кожна відповідь тепер повідомляє, що було визначено. Блок source подає товар, зображення і спосіб, у який кожне з них було обране, — зокрема й у виклику, який лише запитує про готовність облікового запису і нічого не замовляє.
Повторення виклику більше не загрожує другою оплатою. Досі повторення після завершеного замовлення поводилося так, ніби нічого раніше не відбувалося, і замовляло знову. Якщо зображення з попереднього замовлення ще чекають на вашу оцінку, виклик тепер відхиляється і нічого не витрачається; надісланий ще раз із confirmReorder він замовляє так само, як раніше. Невдалі та скасовані замовлення й надалі пропускають повторення без змін — саме це робить повтор після справжньої відмови безпечним.
Ще дві відмови закривають випадки, які раніше завершувалися оплатою без жодного результату: виклик, який перейменував би товар на обліковому записі, де ще нічого не описано, а товарів більше ніж один, і виклик, що потрапляє на товар, аналіз якого не вдався. Обидва відмовляють до запису й обидва стосуються лише конкретного товару — інші товари облікового запису замовляють як звичайно.