Skip to main navigation Skip to main content Skip to page footer

Basket order manually

If an order is placed by phone or email, for example, it can easily be created manually. This is advantageous because it allows invoices to be generated automatically, stock levels to be kept up-to-date, and statistics to be maintained.

First, an order record must be created manually and given the status prepared – because only orders with the status prepared can be processed.

Here you can enter the buyer's name and email address. You can also connect to an existing customer via a frontend user – however, the name, email address, and other data such as the address on the Parameters tab must still be entered. Why? Because the customer could update their account information and thus also change our order – and we want to prevent that at all costs.

After saving the initial entry, you then need to compile the shopping cart by creating one or more cart entries and specifying a product, quantity, and price. When you save the order, the order total will update automatically.

Tip:

You can generate and review the delivery note or invoice PDF at any time while filling out the order. Make sure you save the order record beforehand!

Once you have entered all the required information and everything is correct, mark the order as ordered. The next available order number will then be automatically determined and saved in the order record along with the order date. You can now send the invoice.

Tip:

You can also easily create such an order yourself in the frontend by filling the shopping cart and then selecting "Invoice".

stateDiagram-v2

    %% Starting point: original order exists (ordered),
    %% but no payment and no shipment

    [*] --> prepared : Cancellation is being prepared\n(reference to the original invoice)

    prepared --> refunded : Cancellation invoice created\n(new invoice number,\nnegative line items)

    refunded --> processed : Cancellation completed\nno money flow

    %% End state
    processed --> [*]

    %% Notes
    note right of refunded
        - No shipment
        - No payment
        - Pure counter-document / reversal document
    end note

Further actions:

  • Returns: Possible as soon as the goods have been shipped – i.e., in the status shipped or processed.
  • Deletion: Deleting an order is only possible in the status prepared.

TypoScript configuration

plugin.tx_shop.settings.basketOrder {
    orderOptions {
        manual {
            fields {
                available = company, firstname, lastname, phone, email, message, privacyProtectionConfirmed, termsConfirmed, deliveryAddressEnabled, deliveryAddressCompany, deliveryAddressFirstname, deliveryAddressLastname
            }
            status {
                prepared {
                    allowed {
                        ordered  {
                            # There is a basket required in basket-order, otherwise we can't change to ordered!
                            condition {
                                basket = NotEmpty
                            }
                        }
                        # There is no "cancelled" state. If the basket-order is not required, just delete it.
                    }
                }
                ordered {
                    allowed {
                        paid =
                    }
                }
                paid {
                    allowed {
                        shipped =
                    }
                }
                shipped {
                    allowed {
                        processed =
                    }
                }
                processed {
                    # End, but "allowed" must be defined!
                    allowed =
                }
            }
        }
    }
}
Documentation

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
Shopping basket 0 Products

The Demo is build with*

EXT:bootstrap_package for site-package aka theme build on Bootsrap 5.

EXT:modules for user plugins like user-profile, registration, user-addresses, and more.

EXT:shop for the whole shop functionality.

EXT:questions for the FAQ page and FAQs attached in the product detail views.

EXT:glossaries for the glossaries and definitions.

EXT:fluid_fpdf for generating invoices, delivery-notes, product-sheets and more.

EXT:parsedown_extra for rendering the extension documentations from markdown to HTML.

* There are only build-in settings made using site-settings & TypoScript – no templates or other files were changed or overridden!