Adds a 'checkout' to a SilverStripe site which links to an Estimate and adds the ability to setup and pay

Installs: 2 343

Dependents: 5

Suggesters: 0

Security: 0

Stars: 0

Watchers: 4

Forks: 2


1.1.5 2021-03-10 17:19 UTC

This package is auto-updated.

Last update: 2024-05-07 19:19:34 UTC


Adds a checkout process, to allow users to pay for an Estimate using configured omnipay payment gateways.

Also allows you to overwrite the process so you can add more custom payment integration.


Install this module using composer:

composer require silvercommerce/checkout


By default, this module works with silvercommerce/shoppingcart out of the box. But it is fairly simple to use it to create payment workflows for a custom estimate if required.

Paying for a custom estimate

If you want to create a payment flow for a custom estimate, you simply have to create the estimate, add some items, add it to the checkout and then redirect. This can be done with a simple bit of code.

The example below has a custom controller that creates an estimate from a pre-defined product and then redirects to the checkout:

use SilverStripe\Core\Injector\Injector;
use SilverCommerce\Checkout\Control\Checkout;
use SilverCommerce\OrdersAdmin\Factory\OrderFactory;

class ProductRedirectController extends PageController
    public function init()

        $product = $this->Product(); // Instance of SilverCommerce\CatalogueAdmin\CatalogueProduct
        $factory = OrderFactory::create();

        $checkout = Injector::inst()->get(Checkout::class);