Add Microdata to your Laravel Cashier invoices

v1.0.1 2019-02-28 12:30 UTC

This package is auto-updated.

Last update: 2020-12-28 16:35:13 UTC


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('app.vendor.company'),
            'first_name' => config('app.vendor.first_name'),
            'last_name' => config('app.vendor.last_name'),
            'street_address' => config('app.vendor.street_address'),
            'city' => config('app.vendor.city'),
            'zip' => config('app.vendor.zip'),
            'state' => config('app.vendor.state'),
            'country' => config('app.vendor.country'),
            'vat_id' => config('app.vendor.vat_id'),
            'email' => config('app.vendor.email'),
            'website' => config('app.vendor.website'),
            '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('invoices.show', $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 support@einfacharchiv.com instead of using the issue tracker.

Happy coding!



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