Интеграция Realex API с DCC не показывает всплывающее окно оплаты в валюте

Я использую интеграцию Realex API с DCC, ниже приведен мой код:

Создание хеша MD5:

$tmp = "$timestamp.$merchantid.$orderid.$amountinCents.$currency.$cardnumber";
$md5hash = md5($tmp);
$tmp = "$md5hash.$secret";
$md5hash = md5($tmp);

Запрос DCC xml:

<?xml version='1.0' encoding='UTF-8'?>
<request type='dccrate' timestamp='$timestamp'>
    <merchantid>$merchantid</merchantid>
    <account>$account</account>
    <orderid>$orderid</orderid>
    <amount currency='$currency'>$amountinCents</amount>
    <card> 
        <number>$cardnumber</number>
        <expdate>$expdate</expdate>
        <type>$cardtype</type> 
        <chname>$cardname</chname>
        <cvn> 
            <number>$cvvno</number> 
            <presind>1</presind> 
        </cvn>
    </card> 
    <dccinfo>
        <ccp>fexco</ccp>
        <type>1</type>
        <ratetype>S</ratetype>
    </dccinfo>
    <autosettle flag='1'/>
    <md5hash>$md5hash</md5hash>
    <tssinfo>
        <address type=\"billing\">
            <country>ie</country>
        </address>
    </tssinfo>
</request>

Запрос аутентификации xml:

<?xml version='1.0' encoding='UTF-8'?>
<request type='auth' timestamp='".$timestamp."'>
    <merchantid>".$merchantid."</merchantid>
    <account>".$account."</account>
    <orderid>".$orderid."</orderid>
    <amount currency='".$currency."'>".$amountinCents."</amount>
    <card>
        <number>".$cardnumber."</number>
        <expdate>".$expdate."</expdate>
        <chname>".$cardname."</chname>
            <type>$cardtype</type> 
        <cvn>
            <number>".$cvvno."</number>
            <presind>1</presind>
        </cvn>
    </card>
    <autosettle flag='1' />
    <md5hash>".$md5hash."</md5hash>
    <dccinfo>
        <ccp>fexco</ccp>
        <type>1</type>
        <rate>".$authrate."</rate>
        <ratetype>S</ratetype>
        <amount currency='".$curr."'>".$amountDcc."</amount>
    </dccinfo>
</request>

И отправив оба xml на " https://epage.payandshop.com/epage-remote.cgi" один за другим, используя curl, процесс оплаты работает нормально. Но это не показывает какое-либо всплывающее окно для клиента, чтобы выбрать валюту для взимания.

Я ищу это окно

вот образец формы для проверки

Можете ли вы дать совет, почему он не отображается или мне нужно внести какие-либо изменения?

1 ответ

Спасибо за ваш вопрос. Во-первых, как я уже упоминал в ответе на предыдущий вопрос, мы настоятельно рекомендуем использовать SHA1 вместо MD5 для хэша транзакции.

Кроме того, этот URL: https://epage.payandshop.com/epage-remote.cgi, является устаревшим, новые:

Живой URL - https://api.realexpayments.com/epage-remote.cgi

URL песочницы - https://api.sandbox.realexpayments.com/epage-remote.cgi

Могу я спросить, на какую документацию разработчика вы ссылаетесь? Я настоятельно рекомендую вам следовать инструкциям в соответствии с последним Realex Developer Hub. (Если есть проблема с концентратором, дайте мне знать).

Наконец, поскольку вы используете DCC через наш API, окно / страница, которую вы описываете, должно быть сгенерировано вашим приложением с использованием значений, возвращаемых из запроса на поиск DCC Rate. Это было описано в шаге 2 здесь вместе с примером PHP: https://developer.realexpayments.com/

Есть ли какая-то конкретная причина, по которой вы не используете нашу страницу размещенных платежей (HPP) для обработки транзакции? Он обрабатывает отображение выбора тарифа для клиента для вас. Вы также выиграете от сокращения объема PCI вашего приложения. Смотрите здесь: https://developer.realexpayments.com/

Лучший,

Seán

Realex Payments

Другие вопросы по тегам