PayPal
add_action(‘wp_enqueue_scripts’, ‘fel_enqueue_paypal’);
function fel_enqueue_paypal() {
wp_enqueue_script(‘paypal’, ‘https://www.paypal.com/sdk/js?client-id=’ . get_option(‘fel_paypal_client_id’));
wp_enqueue_script(‘fel-paypal’, FEL_PLUGIN_URL . ‘js/paypal-payment.js’);
}
// Dans le formulaire
echo ‘‘;
// Traiter le paiement PayPal
add_action(‘wp_ajax_process_paypal_payment’, ‘fel_process_paypal_payment’);
function fel_process_paypal_payment() {
check_ajax_referer(‘fel_paypal_nonce’);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, ‘https://api.sandbox.paypal.com/v2/payments/captures/’ . $_POST[‘orderId’]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, get_option(‘fel_paypal_client_id’) . ‘:’ . get_option(‘fel_paypal_secret’));
$response = curl_exec($ch);
$result = json_decode($response);
if ($result->status === ‘COMPLETED’) {
update_inscription_paid($_POST[‘inscriptionId’], $result->id);
wp_send_json_success([‘message’ => ‘Paiement PayPal réussi’]);
}
curl_close($ch);
}
