Я пытаюсь настроить интеграцию Braintree в своем приложении Symfony 4 PHP.
Я использовал composer, чтобы требовать и установить последнюю версию Braintree SDK, и добавил учетные данные тестирования в файл env.
Настройка клиента
https://developers.braintreepayments.com/start/hello-client/javascript/v3
Затем я добавил код клиента в свой шаблон веточки для пользовательского интерфейса.
<div id="dropin-container"></div>
<button id="submit-button">Request payment method</button>
<script>
var button = document.querySelector('#submit-button');
braintree.dropin.create({
authorization: 'CLIENT_TOKEN_FROM_SERVER',
container: '#dropin-container'
}, function (createErr, instance) {
button.addEventListener('click', function () {
instance.requestPaymentMethod(function (err, payload) {
// Submit payload.nonce to your server
});
});
});
</script>
И включил этот скрипт в блок js
<script src="https://js.braintreegateway.com/web/dropin/1.14.1/js/dropin.min.js"></script>
Настроить сервер
https://developers.braintreepayments.com/start/hello-server/php
Следующим шагом является созданиеклиентский токен
$clientToken = $gateway->clientToken()->generate([
"customerId" => $aCustomerId
]);
, а затем отправить токен клиенту и т. д.
Вопрос
У меня вопрос, куда поместить код на стороне сервера вмое приложение Symfony 4?
Создаете ли вы сервис Braintree.php в src / Services и помещаете весь PHP-код Braintree туда или в контроллер, или некоторые в оба?