Loading...
Skip navigation
Please note that this documentation is for the most recent version of this extension. It may not be relevant for older versions. Related documentation can be found in the documentation directory of the extension.

Basket order on request

When you select "Inquiry" at checkout, no binding purchase is initiated. Instead, the customer can submit a shopping cart as a product/price/availability inquiry. The inquiry is managed as a separate process within the system: After the inquiry is submitted, an administrator can respond (e.g., with a quote or follow-up question) and then close the process.

Optionally, a follow-up process can be implemented upon request: for example, converting the inquiry into an order or generating a quote as a PDF. Feel free to contact us!

stateDiagram-v2
    [*] --> prepared : Customer builds cart\nand selects “Request”
    prepared --> requested : Request submitted\nconfirmation email optional
    requested --> answered : Admin answers request\n(offer / follow-up question)
    answered --> processed : Request completed
    %% Optional follow-up process (no status change!)
    note right of answered
      Optional feature that can be
      implemented on request:
      - Convert request into an order
      - Convert request into an offer PDF
    end note

TypoScript Configuration

plugin.tx_shop.settings.basketOrder {
    orderOptions {
        request {
            active = {$themes.configuration.extension.shop.checkout.request.active}
            attachProductFilesToAdminEmail = {$themes.configuration.extension.shop.checkout.request.attachProductFilesToAdminEmail}
            attachProductFilesToCustomerEmail = {$themes.configuration.extension.shop.checkout.request.attachProductFilesToCustomerEmail}
            attachInvoiceToAdminEmail = {$themes.configuration.extension.shop.checkout.request.attachInvoiceToAdminEmail}
            attachInvoiceToCustomerEmail = {$themes.configuration.extension.shop.checkout.request.attachInvoiceToCustomerEmail}
            attachDeliveryNoteToAdminEmail = {$themes.configuration.extension.shop.checkout.request.attachDeliveryNoteToAdminEmail}
            attachDeliveryNoteToCustomerEmail = {$themes.configuration.extension.shop.checkout.request.attachDeliveryNoteToCustomerEmail}
            attachOrderXmlToAdminEmail = {$themes.configuration.extension.shop.checkout.request.attachOrderXmlToAdminEmail}
            storeOrderXmlInFolder = {$themes.configuration.extension.shop.checkout.request.storeOrderXmlInFolder}
            storeOrderXmlInFolderName = {$themes.configuration.extension.shop.checkout.request.storeOrderXmlInFolderName}
            type = request
            checkoutPid = {$themes.configuration.pages.shop.checkout}
            successPid = {$themes.configuration.pages.shop.checkoutSuccess}
            errorPid = {$themes.configuration.pages.shop.checkoutError}
            service = CodingMs\Shop\Service\Checkout\RequestCheckoutService
            button {
                title = tx_shop_label.request_button_title
                label = tx_shop_label.request_button_label
                icon = fa fa-shopping-cart
            }
            fields {
                available = {$themes.configuration.extension.shop.checkout.request.fields.available}
                required = {$themes.configuration.extension.shop.checkout.request.fields.required}
            }
            status {
                prepared {
                    allowed {
                        requested =
                    }
                }
                requested {
                    allowed {
                        answered =
                    }
                }
                answered {
                    allowed {
                        processed =
                    }
                }
                processed {
                    # End, but "allowed" must be defined!
                    allowed =
                }
            }
            email {
                customerConfirmation {
                    active = {$themes.configuration.extension.shop.checkout.request.email.customerConfirmation.active}
                    from {
                        name = {$themes.configuration.extension.shop.email.from.name}
                        email = {$themes.configuration.extension.shop.email.from.email}
                    }
                    to {
                        # Customer address data
                    }
                    template = {$themes.configuration.extension.shop.email.templates.request.customerConfirmation}
                }
                order {
                    active = {$themes.configuration.extension.shop.checkout.request.email.order.active}
                    from {
                        name = {$themes.configuration.extension.shop.email.from.name}
                        email = {$themes.configuration.extension.shop.email.from.email}
                    }
                    to {
                        name = {$themes.configuration.extension.shop.email.to.name}
                        email = {$themes.configuration.extension.shop.email.to.email}
                    }
                    template = {$themes.configuration.extension.shop.email.templates.request.request}
                }
            }
        }
    }
}
Last change: 2026-04-21
Documentation
TYPO3 Shop Extension

TYPO3 Shop by coding.ms

An extensive shop for TYPO3 for realizing Webshops, Online-Shops or Payment-Subscriptions, comparable with tt_products, Cart or Aimeos. It includes PayPal, PayPal-Checkout, Klarna, Stripe, Bookmarks, UPS-API, invoice generation, a backend module, compare feature, graduated prices, plus product variants, filters, and tax and shipping logic for practical shop operations.

Menu

Contact request

You can contact us at any time

Stop! Playing in the meantime?
Stop! Playing in the meantime?
Stop! Playing in the meantime?

Stop! Playing in the meantime?

Break the highscore

Press Start
Contact request
Screenreader label
Security question
J____________R_______
C_9____F____KM____JTX
NJ4___RR3____4_______
__4____S_____8____4YW
__R_________GA2______