Я интегрировал Stripe connect с помощью composer и получаю все файлы с поставщиком и файл автозагрузки с папкой stripe с папкой в папке, и он работает нормально для основного php при оплате. Детали платежа сохраняются в учетной записи песочницы, нажимая api и token api, ноТо же самое не работает при интеграции его в WordPress сайт, только маркер API работает на самом деле, я использую кнопку типа отправить для платежной формы и обеспечивает действие, такое как URL-адрес, а затем sucess page-name, и выдает страницу с ошибкой, не найденную, если я попаду на эту страницу успехаснова он выполнит часть ошибки.В ядре php я передаю только действие формы, например sucess.php и на странице sucess, включая stripe vendor / autoad, как требуется, затем файл stripe composer работает правильно.
<form action="<?php echo site_url();?>/index.php/stripe-sucess" method="POST" id="paymentFrm">
<p>
<label>Name</label>
<input type="text" name="name" size="50" />
</p>
<p>
<label>Email</label>
<input type="text" name="email" size="50" />
</p>
<p>
<label>Card Number</label>
<input type="text" name="card_num" size="20" autocomplete="off" class="card-number" />
</p>
<p>
<label>CVC</label>
<input type="text" name="cvc" size="4" autocomplete="off" class="card-cvc" />
</p>
<p>
<label>Expiration (MM/YYYY)</label>
<input type="text" name="exp_month" size="2" class="card-expiry-month"/>
<span> / </span>
<input type="text" name="exp_year" size="4" class="card-expiry-year"/>
</p>
<button type="submit" id="payBtn">Submit Payment</button>
</form>
<script type="text/javascript">
//set your publishable key
Stripe.setPublishableKey('pk_test_uFOdE1YPIXhbssFt1FwH9RGQ');
//callback to handle the response from stripe
function stripeResponseHandler(status, response) {
if (response.error) {
//enable the submit button
$('#payBtn').removeAttr("disabled");
//display the errors on the form
$(".payment-errors").html(response.error.message);
} else {
var form$ = $("#paymentFrm");
//get token id
var token = response['id'];
// alert(token);
//insert the token into the form
form$.append("<input type='hidden' name='stripeToken' value='" + token + "' />");
//submit form to the server
form$.get(0).submit();
}
}
$(document).ready(function() {
//on form submit
$("#paymentFrm").submit(function(event) {
//disable the submit button to prevent repeated clicks
$('#payBtn').attr("disabled", "disabled");
//create single-use token to charge the user
Stripe.createToken({
number: $('.card-number').val(),
cvc: $('.card-cvc').val(),
exp_month: $('.card-expiry-month').val(),
exp_year: $('.card-expiry-year').val()
}, stripeResponseHandler);
//submit from callback
return false;
});
});
paymentRequest.on('token', function(ev) {
// Send the token to your server to charge it!
fetch('/charges', {
method: 'POST',
body: JSON.stringify({token: ev.token.id}),
headers: {'content-type': 'application/json'},
})
.then(function(response) {
if (response.ok) {
// Report to the browser that the payment was successful, prompting
// it to close the browser payment interface.
ev.complete('success');
} else {
// Report to the browser that the payment failed, prompting it to
// re-show the payment interface, or show an error message and close
// the payment interface.
ev.complete('fail');
}
});
});
</script>