Dokumentasi
Penggunaan
Mendukung
Penting
Laravel 11 akan menjadi versi terakhir yang didukung untuk v3.0. v4 sedang aktif dikerjakan, dan akan dirilis pada akhir Oktober 2024. Untuk v4, berikut adalah perubahan yang diperkenalkan:
Dibutuhkan PHP 8.1+.
Laravel 10 dan seterusnya diperlukan.
Integrasi SDK JS PayPal.
Plugin Symfony.
Dokumentasi paket dapat dilihat dengan mengklik link berikut:
https://laravel-paypal.readthedocs.io/en/latest/
Dokumentasi lama dapat ditemukan di tautan berikut:
https://srmklive.github.io/laravel-paypal/docs.html
Berikut adalah beberapa cara untuk mengakses penyedia PayPal:
// Impor namespace kelas terlebih dahulu, sebelum menggunakannya secara langsung, gunakan SrmklivePayPalServicesPayPal sebagai PayPalClient;$provider = new PayPalClient;// Melalui fasad. Tidak perlu mengimpor namespace$provider = PayPal::setProvider();
File konfigurasi paypal.php terletak di folder config . Berikut isinya saat diterbitkan:
return ['mode' => env('PAYPAL_MODE', 'sandbox'), // Hanya bisa berupa 'sandbox' atau 'live'. Jika kosong atau tidak valid, 'live' akan digunakan.'sandbox' => ['client_id' => env('PAYPAL_SANDBOX_CLIENT_ID', ''),'client_secret' => env('PAYPAL_SANDBOX_CLIENT_SECRET', ''),'app_id ' => 'APP-80W284485P519543T', ],'live' => ['client_id' => env('PAYPAL_LIVE_CLIENT_ID', ''),'client_secret' => env('PAYPAL_LIVE_CLIENT_SECRET', ''),'app_id' => env('PAYPAL_LIVE_APP_ID', ' '), ],'pembayaran_aksi' => env('PAYPAL_PAYMENT_ACTION', 'Penjualan'), // Hanya dapat berupa 'Penjualan', 'Otorisasi' atau 'Pesanan''mata uang' => env('PAYPAL_CURRENCY', 'USD'), 'notify_url' => env('PAYPAL_NOTIFY_URL', ''), // Ubah sesuai kebutuhan aplikasi Anda.'locale' => env('PAYPAL_LOCALE', 'en_US'), // memaksa bahasa gateway yaitu it_IT, es_ES, en_US ... (hanya untuk pembayaran cepat)'validate_ssl' => env('PAYPAL_VALIDATE_SSL', true), // Validasi SSL ketika membuat klien api.];
Anda dapat mengganti konfigurasi API PayPal dengan memanggil metode setApiCredentials
:
$config = ['mode' => 'live','live' => ['client_id' => 'PAYPAL_LIVE_CLIENT_ID','client_secret' => 'PAYPAL_LIVE_CLIENT_SECRET','app_id' => 'PAYPAL_LIVE_APP_ID', ],'Payment_action' => 'Penjualan','currency' => 'USD','notify_url' => 'https://your-site.com/paypal/notify','locale' => 'en_US', 'validasi_ssl' => benar, ];$penyedia->setApiCredentials($config);
Setelah mengatur konfigurasi API PayPal dengan memanggil metode setApiCredentials
. Anda perlu mendapatkan token akses sebelum melakukan panggilan API apa pun
$penyedia->getAccessToken();
Secara default, mata uang yang digunakan adalah USD
. Jika Anda ingin mengubahnya, Anda dapat memanggil metode setCurrency
untuk menyetel mata uang yang berbeda sebelum memanggil metode API terkait:
$penyedia->setCurrency('EUR');
Harap perhatikan bahwa dalam contoh di bawah, panggilan ke
addPlanTrialPricing
bersifat opsional dan dapat dihilangkan saat Anda membuat langganan tanpa masa uji coba.
setReturnAndCancelUrl()
bersifat opsional. Jika Anda menyetel url, Anda harus menggunakan domain asli. misal localhost, project.test tidak jalan.
$response = $provider->addProduct('Produk Demo', 'Produk Demo', 'LAYANAN', 'PERANGKAT LUNAK') ->tambahkanPlanTrialPricing('HARI', 7) ->addDailyPlan('Rencana Demo', 'Rencana Demo', 1,50) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '10-12-2021');
$response = $provider->addProduct('Produk Demo', 'Produk Demo', 'LAYANAN', 'PERANGKAT LUNAK') ->tambahkanPlanTrialPricing('HARI', 7) ->tambahkanRencana Mingguan('Rencana Demo', 'Rencana Demo', 30) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '10-12-2021');
$response = $provider->addProduct('Produk Demo', 'Produk Demo', 'LAYANAN', 'PERANGKAT LUNAK') ->tambahkanPlanTrialPricing('HARI', 7) ->tambahkanRencana Bulanan('Rencana Demo', 'Rencana Demo', 100) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '10-12-2021');
$response = $provider->addProduct('Produk Demo', 'Produk Demo', 'LAYANAN', 'PERANGKAT LUNAK') ->tambahkanPlanTrialPricing('HARI', 7) ->tambahkanPaket Tahunan('Paket Demo', 'Paket Demo', 600) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '10-12-2021');
$response = $provider->addProduct('Produk Demo', 'Produk Demo', 'LAYANAN', 'PERANGKAT LUNAK') ->addCustomPlan('Rencana Demo', 'Rencana Demo', 150, 'BULAN', 3) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '10-12-2021');
$respon = $ini->klien->addProductById('PROD-XYAB12ABSB7868434') ->tambahkanBillingPlanById('P-5ML4271244454362WXNWU5NQ') ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', $tanggal_mulai);
Versi ini mendukung Laravel 6 atau lebih tinggi.
Jika ada masalah, silakan buat masalah di bagian Masalah.
Jika Anda ingin berkontribusi:
Garpu repositori ini.
Terapkan fitur Anda.
Hasilkan permintaan tarik.