Skip to content

Easily show information about Stripe charges and balances in your Nova dashboard

License

Notifications You must be signed in to change notification settings

tsjason/nova-stripe

 
 

Repository files navigation

Laravel Nova Stripe Dashboard

This package makes it easy to see high-level information about your application's Stripe balance and charges in a Nova dashboard.

Looking to manage your users' Stripe subscriptions with Laravel Cashier? Check out Nova Cashier Manager.

This package is in alpha and under very active development, but check out the to-do section below for features we plan to add soon!

Dashboard index page

Charge detail page

Installation Instructions

Install via Composer:

$ composer require tightenco/nova-stripe

If you have not already done so, in your config/services.php file, set up your Stripe key/secret:

'stripe' => [
    'key' => env('STRIPE_KEY'),
    'secret' => env('STRIPE_SECRET'),
],

and add these values to your .env file:

STRIPE_KEY=
STRIPE_SECRET=

From there, you can register your tools in app/Providers/NovaServiceProvider:

public function tools()
{
    return [
        new \Tightenco\NovaStripe\NovaStripe,
    ];
}

Alpha To-Dos

Charges Index

  • Improve balance card design
  • Add ability to filter by livemode
  • Add ability to filter by status
  • Add ability to sort fields
  • Add perPage dropdown
  • Add ability to search charges

Charge Detail

  • Calculate Stripe processing fee / net amount
  • Add "Refund" button
  • Better handling of booleans (green dot like regular Nova Boolean)
  • Labels for statuses
  • Handle Metadata more like a Textarea field
  • Refactor to use existing Nova fields instead of a bespoke one

Customers

  • Add an index of customers
  • Add a customer detail page

General Housekeeping

  • Add some PHPUnit tests
  • Add some Dusk tests
  • Better handling of currency symbols
  • Break navbar item into any applicable sub-items (Charges, Customers, etc.)

Possible Beta To-Dos

  • Add some pretty graphs showing earnings
  • Investigate creating pseudo-resources (not relying on actual Laravel models) in order to use less custom/hard-coded code
  • Add ability to update charge
  • Add Payout information
  • Add Stripe Connect account management
  • Build cards / resource tools that can be used in Nova resources (User / Transaction / etc.?)
  • Better integration with Cashier

About

Easily show information about Stripe charges and balances in your Nova dashboard

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 59.2%
  • JavaScript 27.4%
  • Vue 8.9%
  • PHP 4.5%