X2, отправка платежа, Signer установлен, ошибка -5
#1 Пользователь
Отправлено 04 июля 2007 - 00:39
Возникает ошибка при использовании X2.
В http://www.webmoney....rse/index.shtml указано, что retval = -5 это "неверное значение поля w3s.request/trans/pursedest". Однако, не понятно, что там может быть неправильного, т.к. указан наш же номер кошелька, указан правильно, запрос проверен.
Наиболее вероятно, что ошибка связана с подписью. Собственно, в retdesc так и пишется: "Неверная подпись:REQN step=17". Узнать бы, что за step = 17. По нему можно узнать, что именно в подписи не так?
Подпись формируется в соответствии с тем же http://www.webmoney....rse/index.shtml: reqn + tranid + pursesrc + pursedest + amount +period + pcode + desc + wminvid, все это склеивается без разделителей, передается в Signer. Конкретные значения полей для примера: 118348435259406 + 1 + 'R194556783276' + 'R542080476076' + 0.01 + 0 + '' + 'test1' + 0, что без плюсов, пробелов и кавычек превращается в 1183484352594061R194556783276R5420804760760.010test10 перед передачей в Signer
Пример с X9 работает на сервере корректно. Подпись там проще, 2 поля. Модуль для X2 переделывался из этого самого примера с X9. В общем, и запрос передается корректно, и ответ приходит. В мелочи какой-то проблема.
Будем благодарны за ответ настоящему Гуру ;-)
#2 Продвинутый пользователь
Отправлено 04 июля 2007 - 02:23
Дайте сюда полный ХМЛ запрос и полный ХМЛ ответ.
ПС. правило "номер перевода в системе учета отправителя; любое целое число без
знака, должно быть уникальным (два перевода с одним и тем же tranid
невозможен)" соблюдаете?
#3 Пользователь
Отправлено 04 июля 2007 - 03:14
Ничего не понятно. Кусками накидали код и ошибки.
Дайте сюда полный ХМЛ запрос и полный ХМЛ ответ.
<?xml version="1.0"?> <w3s.request> <reqn>118349359798916</reqn> <wmid>086866180559</wmid> <sign>2c12909e64fa12bddfe991ff53224d432fbb5ddbf475c21da4693999485556b20be94350e6411d0612aa48f9b65aebe951b8d0f000b2f1cbbc89112ee887c210004e</sign> <trans> <tranid>1</tranid> <pursesrc>R194556783276</pursesrc> <pursedest>R542080476076</pursedest> <amount>0.01</amount> <period>0</period> <pcode></pcode> <desc>test1</desc> <wminvid>0</wminvid> </trans> </w3s.request>
<?xml version="1.0"?><w3s.response><reqn>118349359798916</reqn> <retval>-5</retval> <retdesc>Неверная подпись:118349359798916 step=17</retdesc> </w3s.response>
ПС. правило "номер перевода в системе учета отправителя; любое целое число без знака, должно быть уникальным (два перевода с одним и тем же tranid невозможен)" соблюдаете?
Неа Не было еще ни одного перевода. Кроме того, есть ошибка -3 (неверное значение поля w3s.request/trans/tranid). Вот появится, значит, время соблюдать
#4 Знаток
Отправлено 04 июля 2007 - 15:09
#5 Продвинутый пользователь
Отправлено 04 июля 2007 - 16:01
попробуйте чтоли такое же сделать с долларовыми кошельками.Неа Не было еще ни одного перевода. Кроме того, есть ошибка -3 (неверное значение поля w3s.request/trans/tranid). Вот появится, значит, время соблюдать
Честно говоря, я пока не вижу источника ошибки.
#6 Пользователь
Отправлено 04 июля 2007 - 21:35
-5 ("value of w3s.request/trans/pursedest is incorrect") означает только одно - значение тега w3s.request/trans/pursedest не понравилось системе. Может тег неверно задан (например e - русская) или вам только кажется что вы в нем передаете номер кошелька. Копайте в этом направлении.
Тут, собственно, копать негде: асфальт. Понятное дело, что я сделал copy-paste. Есть здесь где-нибудь "е" русская? Да откуда вообще ей взяться. В кошельках вообще буквы не перепутать. Если бы была ошибка в структуре запроса, на это есть специальный код ошибки -100
#7 Пользователь
Отправлено 04 июля 2007 - 21:40
попробуйте чтоли такое же сделать с долларовыми кошельками.Неа Не было еще ни одного перевода. Кроме того, есть ошибка -3 (неверное значение поля w3s.request/trans/tranid). Вот появится, значит, время соблюдать
Честно говоря, я пока не вижу источника ошибки.
С долларовыми кошельками пробовали, tranid тоже меняли. Не работает. Ошибка там же.
<?xml version="1.0"?> <w3s.request> <reqn>118356008106533</reqn> <wmid>086866180559</wmid> <sign>cdfe563dbc52ea60da4829674e39869899141ae6f00308ab7c8ddda1c87ab122f40def3b0827a76abc81003bef787ae8d661ef798f2a626e6c9a905eb5a440b8005e</sign> <trans> <tranid>3</tranid> <pursesrc>Z227566907439</pursesrc> <pursedest>Z661190557363</pursedest> <amount>0.01</amount> <period>0</period> <pcode></pcode> <desc>test1</desc> <wminvid>0</wminvid> </trans> </w3s.request>
<?xml version="1.0"?><w3s.response><reqn>118356008106533</reqn> <retval>-5</retval> <retdesc>Неверная подпись:118356008106533 step=17</retdesc> </w3s.response>
#8 Пользователь
Отправлено 04 июля 2007 - 21:43
> -5 нет пароля к ключу в ini файле
Предположение тоже не верно, т.к. абсолютно корректно работает на сервере пример с X9, взятый с сайта Webmoney. Он, конечно, использует тот же Signer, тот же ini файл.
#9 Пользователь
Отправлено 05 июля 2007 - 16:16
Люди добрые, помогите, чем можете
Нам нужно много-много денег раздавать. В каком направлении хоть думать-то???
#10 Продвинутый пользователь
Отправлено 05 июля 2007 - 18:41
Есть здесь на форуме решение на АСП.НЕТ можете попробовать его.
Если подходит ПХП - то тут я бы смог предложить рабочий вариант. В АСП увы не силён
#11 Пользователь
Отправлено 05 июля 2007 - 20:01
Так понимаю, вы пробуете решить задачу на АСП?
Есть здесь на форуме решение на АСП.НЕТ можете попробовать его.
Если подходит ПХП - то тут я бы смог предложить рабочий вариант. В АСП увы не силён
Нет, у нас все на PHP...
У вас есть рабочий вариант X2 на PHP? Мур... Мы с вами дружим )
#12 Пользователь
Отправлено 07 июля 2007 - 03:16
У кого есть работающий X2 на PHP?
Задача проста: Signer, корневой сертификат, ini-файл, все необходимые модули - ВСЕ установлено и работает корректно. Какая-то ерунда с подписью, вероятно. Нужен свежий взгляд или код
#13 Продвинутый пользователь
Отправлено 07 июля 2007 - 17:18
Тогда вот, попробуйте:Так понимаю, вы пробуете решить задачу на АСП?
Есть здесь на форуме решение на АСП.НЕТ можете попробовать его.
Если подходит ПХП - то тут я бы смог предложить рабочий вариант. В АСП увы не силён
Нет, у нас все на PHP...
У вас есть рабочий вариант X2 на PHP? Мур... Мы с вами дружим )
http://my-tools.net/wmxi/
Там в комплекте есть примеры.
На данный момент есть репорт про баг скриптовой версии МД4 на 64-разрядных процессорах, хоть вроде и исправлял. Поэтому посмотрим, заработает или нет.
#14 Новичок
Отправлено 20 июля 2007 - 00:13
#15 Новичок
Отправлено 30 июля 2007 - 15:18
#16 Новичок
Отправлено 30 июля 2007 - 15:38
#17 Участник
Отправлено 22 августа 2007 - 00:50
Причин для ругательств не вижу. так как всё сделано в соответствии с докумнтацией.
Вот склееная строка из которой делаю подпись
11877349942629831R792021985788R23648577080110.063587848Hello0
А вот xml запрос (подпись вырезал, больно она длинная для форума)
<w3s.request>
<reqn>118773499426298</reqn>
<wmid>290198826697</wmid>
<sign>25e30e...a00ee</sign>
<trans>
<tranid>31</tranid>
<pursesrc>R792021985788</pursesrc>
<pursedest>R236485770801</pursedest>
<amount>10.06</amount>
<period>3</period>
<pcode>587848</pcode>
<desc>Hello</desc>
<wminvid>0</wminvid>
</trans>
</w3s.request>
Ответ аналогичен как у автора темы.
#18 Участник
Отправлено 23 августа 2007 - 05:29
#19 Участник
Отправлено 30 августа 2007 - 06:08
Я вроде и читать умею, и процедуру запроса сделал как было нгаписанно, и с виду не придерёшся, всё кажется верным. НО, но не работает!
А какая будет реакция, если интерфейс не включен?
#20 Участник
Отправлено 07 сентября 2007 - 18:44
Ctrl-Ins + Shift-Ins - зло, можно где-то, что-то не усмотреть и не подкорректировать!
Совет всем кто сталкнётся с подобной ошибкой - СМОТРИТЕ КУДА ОТПРАВЛЯЕТЕ ЗАПРОС!