Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Остановимся подробнее на опции mps.<mpsId>.getInformation.class. Класс, прописанный в данной строке конфигурации, должен реализовать метод getResponceParameters интерфейса ru.bitel.bgbilling.modules.mps.server.bean.ws.paynet.ResponceParameters и возвращать java.util.Map<String, String>. Список возвращаемых параметров определяется по договоренности с платежной системой. Ниже представлен пример реализации для случая, когда необходимо вернуть в платежную систему информацию о балансе договора.

Блок кода
languagejava
titleПример реализации интерфейса ResponceParameters
collapsetrue
package ru.bitel.bgbilling.modules.mps.paynet;

import java.sql.Connection;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import ru.bitel.bgbilling.common.BGException;
import ru.bitel.bgbilling.modules.mps.server.bean.ws.paynet.ResponceParameters;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.Utils;
import bitel.billing.server.contract.bean.BalanceUtils;


public class GetResponceParameters
    implements ResponceParameters
{

    @Override
    public Map<String, String> getResponceParameters( Connection con, Setup setup, int contractId )
        throws BGException
    {
        Map<String, String> result = new HashMap<String, String>();
        try(BalanceUtils bu = new BalanceUtils( con ))
        {
            result.put( "balance", Utils.formatBigDecimalSumm( bu.getBalance( new Date(), contractId ) ));
        }
        return result;
    }
}

В paynet необходимо передать данные для аутентификации, которые прописываются в параметрах mps.<mpsId>.login и mps.<mpsId>.passw. Также необходимо передать url web-сервиса, к которому будут обращаться для уведомления о поступлении платежа. Url выглядит следующим образом:

панель
http://<server_host>:<server_port>/bgbilling/mpsexecuter/mps-ws/ru.bitel.bgbilling.modules.mps.paynet/<mps_mid>/ProviderWebService/<mpsId>?wsdl

где:

  • <mps_mid> - код модуля MPS
  • <mpsId> - код протокола в конфигурации модуля

Также следует обратить внимание на то, что биллинг ожидает, что для идентификации абонента используется номер его договора, который передается в параметре clientId.

Обязательным условием со стороны paynet является наличие HTTPS.