Захват киберресурса через платёж СНГ

Как я могу отправить запрос захвата в кибер-источник с помощью оплаты Hybris CIS. Ниже приведен метод, который я использую, но он дает мне 102 в качестве кода ответа с ответным сообщением в виде

The following request field(s) is either invalid or missing: auth_request_id

Я могу увидеть запрос захвата при входе в EBCtest, но он не содержит никаких подробностей.

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

CisPaymentRequest cisPaymentRequest=new CisPaymentRequest();
                    //cisPaymentRequest.setParameters(new AnnotationHashMap(getAnnotationHashMap()));
                    cisPaymentRequest.setAmount(new BigDecimal(58.55));
                    cisPaymentRequest.setCurrency("USD");
                    final CisPaymentTransactionResult captureResult = getCisClientPaymentService().capture(CLIENT_REF, "single",new URI("https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor?auth_request_id=831000"),"D99OZS1FU15J", cisPaymentRequest);

2 ответа

Идентификатор отправляемого вами запроса на авторизацию недействителен: auth_request_id=831000

Вот пример допустимого запроса авторизации ID: 5499176942776634304004

Идентификатор запроса авторизации возвращается CyberSource в ответ на запрос авторизации.

Вот как это было решено-

Я изменил URL и исправил идентификатор транзакции

ID авторизации

СТАРЫЙ - https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor?auth_request_id=831000

Исправьте - https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor/831000

Номер транзакции

СТАРЫЙ - D99OZS1FU15J

Правильный - 5512968196316020204007

CisPaymentRequest cisPaymentRequest=new CisPaymentRequest();
                //cisPaymentRequest.setParameters(new AnnotationHashMap(getAnnotationHashMap()));
                cisPaymentRequest.setAmount(new BigDecimal(58.55));
                cisPaymentRequest.setCurrency("USD");
                final CisPaymentTransactionResult captureResult = getCisClientPaymentService().capture(CLIENT_REF, "single",new URI("https://ics2wstest.ic3.com/commerce/1.x/transactionProcessor/831000"),"5512968196316020204007", cisPaymentRequest);
Другие вопросы по тегам