Braintree Webhook для сбоя платежа субторговой точке

Согласно документации, я понял, что когда мы высвобождаем средства из условного депонирования, если возникнут какие-либо проблемы с субторговцем, если мы настроим веб-перехватчик для Disbursement Exception, то мы будем уведомлены об этом. Braintree нажмет на URL-адрес конечной точки, который мы настроили в панели управления с параметрами запроса, я хочу найти, для каких транзакций и субмерчанта возникает проблема. Из этого документа ясно, что идентификаторы транзакций, которые они будут отправлять параметры запроса, но нигде в документе нет четкой информации о субторговцах.

Я попробовал даже пример полезной нагрузки, полезная нагрузка не отражает фактическую параметры запроса. Чтобы узнать, какие параметры будут отправлены Braintree, когда произойдет Disbursement Exception, я создал субпродавца в песочнице, используя PHP SDK с destination как Braintree_Test_MerchantAccount::$bankRejectedUpdateFundingInformation, после чего я создал несколько транзакций продажи, в которых средства должны быть освобождены от условного депонирования для нового создания субпродавца. Уже два дня я жду, когда Braintree перейдет по URL-адресу конечной точки, который я настроил в панели управления, когда он попытается перевести средства субпродавцу, но Braintee никогда не попадет по URL-адресу конечной точки, и статус условного депонирования по-прежнему равен Release Pending.

Вкратце мой вопрос: как узнать, для какого субмерчанта происходит исключение выплаты, когда веб-перехватчик Braintree попадает на URL-адрес конечной точки?


person Mahesh.D    schedule 15.03.2017    source источник


Ответы (1)


Полное раскрытие информации: я работаю в Braintree. Если у вас есть дополнительные вопросы, обращайтесь в поддержку.

В случае исключения выплаты итоговая полезная нагрузка веб-перехватчика по-прежнему будет содержать объект disbursement. Объект выплаты будет иметь параметр merchantAccount, который содержит информацию об учетной записи субторговой точки, для которой произошла ошибка, включая id, идентификатор учетной записи субторговой точки. Вот соответствующая страница в документации для разработчиков Braintree.

В коде это выглядит так: после того как вы проанализировали уведомление веб-перехватчика и подтвердили, что $webhookNotification->kind это Braintree_WebhookNotification::DISBURSEMENT_EXCEPTION, тогда вы можете использовать

$webhookNotification->disbursement->merchantAccount->id

чтобы получить идентификатор. В объекте выплаты вы также можете получить причину сбоя с помощью exceptionMessage, список транзакций в неудавшейся выплате с помощью transactionIds и предлагаемый следующий шаг с помощью followUpAction.

Если вы используете последнюю версию Braintree PHP SDK (в настоящее время 3.22.0), то в образце уведомления для $webhookNotification->disbursement->merchantAccount->id будет установлено значение shopping_account_token.

person zepp    schedule 15.03.2017