Hey there, Developer! This section of the documentation is all for you. It’s technical. It discusses how Commerce is built (and in some cases why, too), and will show you how to extend and enhance it further.
There are basically two ways that you can extend Commerce as a developer.
- Modules. Modules are standalone pieces of code that interact with events that Commerce triggers. These events range from “payment received” to “loading top nav menu in the merchant dashboard”, and allow you to plugin to behaviour and stuff getting displayed.
- Extended Models. With an extended model you can override specific behaviour contained in the model classes, like shipping price calculation, coupon handling or a whole bunch of other things.
Other pages in this section explain some core concepts that can be used in both situations (the comSimpleObject base class and MODX adapter), and also how certain core objects can be used (like Products and Transactions).