Skip to main content
Spree is a very flexible platform allowing you to customize every part of it, to suit your business needs. There are several ways you can achieve this:
There’s a lot of Store settings you can change in the admin panel.Changing currency, shipping zones, languages - it’s very easy to do.Go to Admin > Configuration > General Settings
Spree Admin Store Settings
Configuration allows you to tweak Spree’s behavior without having to modify the source code.Spree comes with a handful configuration options you can change:
Configuration KeyDescriptionDefault Value
allow_checkout_on_gateway_errorContinues the checkout process even if the payment gateway error failed.false
address_requires_phoneDetermines whether a phone number is required for Addresses.true
alternative_shipping_phoneDetermines if an alternative phone number should be present for the shipping address on the checkout page.false
allow_guest_checkoutDetermines if guests can proceed to checkout without creating an account.true
always_include_confirm_stepDetermines if the confirmation step is always included in the checkout process, regardless of the payment method.false
auto_captureDepending on whether or not Spree is configured to “auto capture” the credit card, either a purchase or an authorize operation will be performed on the card (via the current credit card gateway).false
auto_capture_on_dispatchCaptures payment for each shipment in Shipment#after_ship callback, and makes Shipment.ready when payment authorized.false
companyDetermines whether or not a field for “Company” displays on the address form.false
credit_to_new_allocationDetermines if a new allocation is created anytime store credit is added. If not set, it will update the store credit’s amount in place.false
disable_sku_validationDetermines if the built-in SKU uniqueness validation is disabled.false
disable_store_presence_validationDetermines if Store presence validation for Products and Payment Methods is disabled.false
expedited_exchangesDetermines if an exchange shipment is kicked off upon return authorization save. Requires payment profiles to be supported on your gateway and a configured delayed job handler.false
expedited_exchanges_days_windowThe number of days the customer has to return their item after the expedited exchange is shipped to avoid being charged.14
restock_inventoryDetermines if inventory should be restocked when an order is canceled or returnedtrue
return_eligibility_number_of_daysThe number of days after purchase within which a return can be initiated.365
send_core_emailsDetermines if core emails should be sent. This includes order confirmation and shipment tracking emails.true
show_products_without_priceDetermines if products without a price are shown in the storefront and Storefront APIfalse
tax_using_ship_addressDetermines if tax information should be based on shipping address, rather than the billing address.true
track_inventory_levelsDetermines if inventory levels should be tracked when products are purchased at checkout. This option causes new InventoryUnit objects to be created when a product is bought.true
To change these you need to edit your config/initializers/spree.rb file.For example, to disable the expedited_exchanges feature, you would add the following line:
Spree.config do |config|
  config.expedited_exchanges = false
end
I