Ку, кароче. Дело такое, что когда я, используя библиотеку **** API, ввожу данные от кошелька (токен в том числе), и перевожу деньги на другой кошель. Первый перевод проходит успешно, остальные тоже успешно (пишет так), но бабки не уходят. В документации написано, что надо умножать UNIX время на 1000 (скрин 1). Делаю так, но номера транзакций не совпадают в ответе с сервера ****. Если я повторно создам запрос, но в коде укажу ID от прошлого запроса, то транзакция проходит (ID сходятся = подтверждается платеж) Скрин 1 $sendMoney = $qw->sendMoneyToQiwi([ 'id' => time().'* 1000', 'sum' => [ 'amount' => 2, 'currency' => '643' ], 'paymentMethod' => [ 'type' => 'Account', 'accountId' => '643' ], 'comment' => 'bd', 'fields' => [ 'account' => '+79111111111' ] ]); Код $sendMoney = $qw->sendMoneyToQiwi([ 'id' => time().'* 1000', 'sum' => [ 'amount' => 2, 'currency' => '643' ], 'paymentMethod' => [ 'type' => 'Account', 'accountId' => '643' ], 'comment' => 'bd', 'fields' => [ 'account' => '+79111111111' ] ]); Вопрос таков, как заставить ID сходиться в одном запросе? Пару часов назад расшифровал ID транзакции в UNIX, уже сам не помню как, но получилось так, что на сервере время на 3 часа отстает от времени на моем сервере, и ID получаются разные. Может в этом дело?
palmdev, Вечером если приеду домой и не забуду - постараюсь найти свой исходник, сам долго ебался с этим, но смог запилить idшники
Как минимум тебя не смущает что ты не умножаешь на 1000? 'id' => time().'* 1000', time() умножается на строку '* 1000' Или я что то не так понял?)
Если ты хочешь что бы time() умножился на 1000 2 строка должна выглядеть так: 'id' => time() * 1000, Если у тебя какие то ошибки то давай их сюда
Ля, да изи же. Они в мануале сами накосячили. Этот id олжен быть уникальным. Просто умножай unix на рандомное число и все будет норм
А если отправить следующую транзакцию, менее чем через секунду, time() не изменится, и получается, что ты создаешь транзакцию с таим же id
Может у тебя на сервере стоит московское время (UTC +3), а на сервере **** UTC +0? Попробуй в самом начале кода это написать. date_default_timezone_set("UTC"); Код date_default_timezone_set("UTC");