FFL Checkout for Magento
Adds licensed FFL dealer selection to your Magento checkout. A firearm bought online ships to a federally licensed dealer, not to the customer, so the customer picks that dealer before paying.
The module is FflMonkey_Checkout and its Composer package is fflmonkey/module-checkout.
What it does
#- Adds a dealer picker. In the shipping step of Luma's checkout, when the cart holds an item that ships to a dealer. The customer searches by ZIP, shop name or FFL number, uploads a dealer's license, decides later, or collects at the shop.
- Quotes shipping in two legs. The firearm to the dealer and everything else to the customer, with each method priced as the two added.
- Refuses an order it cannot fill. No dealer, an expired license, or no SOT for an NFA item.
- Opens a transfer with each firearm order. Your website emails the dealer a request, and the dealer accepts or declines on a page of your website.
- Adds screens to your admin. Transfers, Dealer Licenses and Account, in the Magento admin.
What you need
#- Magento Open Source or Adobe Commerce 2.4.6 to 2.4.9
- PHP 8.1 or newer
- Luma's checkout. Hyvä Checkout and headless storefronts get no picker.
- Command line access to the website, with Composer
- Cron running, because the reports, the dealer's request and the reminders all go from it
- An FFL Monkey account with a subscription, which you start in the Magento admin
Install
#Step 1: Add the package to Composer
#Download the zip above and put it on the server. Then run this from your Magento root:
mkdir -p ~/fflmonkey-packages
cp fflmonkey-module-checkout-*.zip ~/fflmonkey-packages/
composer config repositories.fflmonkey artifact ~/fflmonkey-packages
Step 2: Install the module and turn it on
#composer require fflmonkey/module-checkout
bin/magento module:enable FflMonkey_Checkout
bin/magento setup:upgrade
bin/magento cache:flush
Step 3: Compile, in production mode only
#bin/magento setup:di:compile
bin/magento setup:static-content:deploy
Step 4: Start cron, if it is not running yet
#bin/magento cron:install
Connect your website
#In the Magento admin, open FFL Monkey > Checkout and connect your website. A website whose Data Feed module is connected skips the sign-in.
Updates
#Magento does not offer updates for this copy. To update, put the new zip in the same folder and update the package, then run the commands in Step 2 from setup:upgrade on:
composer update fflmonkey/module-checkout
What it does not do yet
#Your own license copies are not attached to the dealer's request, because Magento's mail builder has no attachments.
Help
#When a message ends in a reference such as Reference: MG-..., the same reference is in var/log/fflmonkey_checkout.log. Send it to us when you contact us. Read more on the FFL Checkout page.