diff --git a/readme.md b/readme.md index 0642a33..1a9db34 100644 --- a/readme.md +++ b/readme.md @@ -166,7 +166,25 @@ Plan::fetch($plan, $params); Plan::update($plan, $params); ``` -### Subscriptions **TODO** +### Subscriptions +```php +use Myckhel\Paystack\Support\Subscription; + +Subscription::create($params); + +Subscription::list($params); + +Subscription::fetch($plan, $params); + +Subscription::enable($params); + +Subscription::disable($params); + +Subscription::link($code, $params); + +Subscription::sendUpdateSubscription($code, $params); +``` + ### Products **TODO** ### Payment Pages **TODO** ### Invoices **TODO** diff --git a/src/Http/Controllers/SubscriptionController.php b/src/Http/Controllers/SubscriptionController.php new file mode 100644 index 0000000..4e5c7c3 --- /dev/null +++ b/src/Http/Controllers/SubscriptionController.php @@ -0,0 +1,15 @@ +all()) + : Subscription::$method(request()->all()); + } +} diff --git a/src/Support/Subscription.php b/src/Support/Subscription.php new file mode 100644 index 0000000..c60e89e --- /dev/null +++ b/src/Support/Subscription.php @@ -0,0 +1,85 @@ + 'plan,list', 'get,plan/{plan}' => 'plan,fetch', 'put,plan/{plan}' => 'plan,update', + // subscriptions + 'post,subscription' => 'subscription,create', + 'get,subscription' => 'subscription,list', + 'get,subscription/{subscription}' => 'subscription,fetch', + 'post,subscription/enable' => 'subscription,enable', + 'post,subscription/disable' => 'subscription,disable', + 'get,subscription/{code}/manage/link' => 'subscription,link', + 'post,subscription/{code}/manage/email' => 'subscription,sendUpdateSubscription', ]; $controls = [ @@ -77,6 +86,7 @@ 'dva' => DedicatedVirtualAccountController::class, 'apple' => ApplePayController::class, 'plan' => PlanController::class, + 'subscription' => SubscriptionController::class, ]; collect($routes)->map(function ($route, $index) use ($controls) {