Skip to content
Add Microdata to your Laravel Cashier invoices
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Add Microdata to your Laravel Cashier invoices (supporting JSON-LD)

Software License

This package provides an easy way to add Microdata (in JSON-LD format) to your Laravel Cashier invoices.


PHP 7.0 and later.


You can install this package via Composer. Run the following command:

composer require einfacharchiv/laravel-cashier-microdata


Add the following snippet to your invoice notification toMail method and adjust the values to your environment. $this->invoice is your \Laravel\Cashier\Invoice (or alternatively \Stripe\Invoice). The methods setSeller, setBuyer, and setUrl are optional.

// ...

public function toMail($notifiable)
            'company' => config(''),
            'first_name' => config('app.vendor.first_name'),
            'last_name' => config('app.vendor.last_name'),
            'street_address' => config('app.vendor.street_address'),
            'city' => config(''),
            'zip' => config(''),
            'state' => config('app.vendor.state'),
            'country' => config(''),
            'vat_id' => config('app.vendor.vat_id'),
            'email' => config(''),
            'website' => config(''),
            'company' => $notifiable->billing_company,
            'first_name' => $notifiable->billing_first_name,
            'last_name' => $notifiable->billing_last_name,
            'street_address' => $notifiable->billing_street_address,
            'city' => $notifiable->billing_city,
            'zip' => $notifiable->billing_zip,
            'state' => $notifiable->billing_state,
            'country' => $notifiable->billing_country,
            'vat_id' => $notifiable->vat_id,
            'email' => $notifiable->email,
            'website' => $notifiable->website,
        ->setUrl(route('', $this->invoice->id));

    // return (new MailMessage())...

// ...

And add the following snippet to your resources/views/vendor/mail/html/layout.blade.php before the </body> tag.

    <!-- ... -->

    {!! \einfachArchiv\LaravelCashierMicrodata\Invoice::getInstance() !!}


Contributions are welcome.

We accept contributions via Pull Requests on Github.

Find yourself stuck using the package? Found a bug? Do you have general questions or suggestions for improvement? Feel free to create an issue on GitHub, we'll try to address it as soon as possible.

If you've found a security issue, please email instead of using the issue tracker.

Happy coding!



The MIT License (MIT). Please see License File for more information.

You can’t perform that action at this time.