Согласно документации Сбера пытаюсь передать данные корзины при регистрации заказа и получаю ошибку написал в поддержку, но ответ поставил меня в тупик.
Данные запроса:
{
["userName"]=> "****"
["password"]=> "****"
["amount"]=> 500
["currency"]=> 643
["orderNumber"]=> 38206
["orderBundle"]=> {
["customerDetails"]=> { ["email"]=> "****@mail.ru" }
["cartItems"]=> {
["items"]=> { {
["positionId"]=> 1
["name"]=> "Bone"
["quantity"]=>{
["value"]=> 1
["measure"]=> "шт."
}
["itemCode"]=> "13-2"
["itemPrice"]=> 200
}
{ ["positionId"]=> 2
["name"]=> "Pear"
["quantity"]=> {
["value"]=> 1
["measure"]=> "шт."
}
["itemCode"]=> "97-2"
["itemPrice"]=> 300
}
}
}
}
["phone"]=> "7926*******"
["email"]=> "******@mail.ru"
["sessionTimeoutSecs"]=> 86400
["returnUrl"]=> "https://www.****"
["failUrl"]=> "https://www.****"
}
получаю ошибку
"result":{"errorCode":"8","errorMessage":"[orderBundle] Ошибка Unrecognized token 'Array': was expecting ('true', 'false' or 'null')"}}
если убрать из него orderBundle то всё работает.
Ответ службы поддержки:
Некорректно передан oderBundle:
May 27, 2024 @ 09:27:06.640
POST https://securepayments.sberbank.ru/payment/rest/register.do
password:****; amount:500; orderNumber:38203; sessionTimeoutSecs:86400; phone:7926*******; currency:643; orderBundle:Array; failUrl:https://www.***; userName:***; returnUrl:https://www.***; email:***@mail.ru; Content-Type:multipart/form-data; boundary=------------------------119021b3628e56d8;
Вы передали orderBundle:Array; - а не массив с данными.
Не могу понять что не так, как передать массив с данными?