Не удалось обработать заказ со справочным кодом [xxx], PayU Laravel - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь получить свою подпись для реализации webcheckout payu Я думаю, что ошибка в поле подписи, у меня есть ключ api, определенный в контроллере

<form method="post" action="https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/">
  <input name="merchantId" type="text" value="508029">
  <input name="accountId" type="text" value="512321">
  <input name="description" type="text" value="{{ $plans->description }}">
  <input name="referenceCode" type="text" value="{{ $plans->id }}">
  <input name="amount" type="text" value="{{ $plans->price }}">
  <input name="tax" type="text" value="0">
  <input name="taxReturnBase" type="text" value="0">
  <input name="currency" type="text" value="COP">
  <input name="signature" type="text" value="md5($apy_key." ~ "."508029 "."~ ".$plans->id."~ ".$plans->price."~ "."COP ")">
  <input name="test" type="text" value="1">
  <input name="buyerEmail" type="text" value="test@test.com">
  <input name="responseUrl" type="text" value="https://poligonourbano.soluttolabs.com/">
  <input name="confirmationUrl" type="text" value="http:// www.test.com/confirmation">
  <input name="Submit" type="submit" value="Enviar">
</form>

Функция контроллера:

public function planView() {
  $apy_key = "4Vj8eK4rloUd272L48hsrarnUA";
  $plans = Plan::findOrFail(2);

  return view('plans', compact('plans', 'apy_key'));
}

1 Ответ

3 голосов
/ 10 июля 2020

Проблема действительно связана с тем, как вы создаете подпись

, когда вы помещаете md5($apy_key."~"."508029"."~".$plans->id."~".$plans->price."~"."COP") в "", это считается строкой, которую вы должны обернуть в md5 с помощью {{ }}.

Пожалуйста, попробуйте создать подпись в контроллере и передать ее как значение в представление, это не лучшая практика для обработки любых logi c в представлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...