Tried DeepSeek for answer to creating Extension for FrontAccounting. Attached results. It is wrong to state that module.php is required in the extension.

https://frontaccounting.com/wbt/media/download_gallery/clientinfo.zip
The file test_cl_info.php should be modified from:

<?php
/**********************************************
Author: Joe Hunt
Name: Test Client Info
Free software under GNU GPL
***********************************************/
$page_security = 3;
$path_to_root="../..";
.....

to

<?php
/**********************************************
Author: Joe Hunt
Name: Test Client Info
Free software under GNU GPL
***********************************************/
$page_security = "SA_OPEN";
$path_to_root="./";
.....

and placed in the FA application root.

All new extensions in FA 2.4 do not use the file module_info.inc at all.

ChatGPT has got it wrong.

ChatGPT answers: How to create a new module in FA?
Also refer https://www.flpages.com/2020/07/frontaccounting-customization.html

https://www.perplexity.ai
Ask Perplexity AI:

How do I setup Malaysian Sales Tax in FrontAccounting?

Perplexity AI:

To set up Malaysian Sales Tax (SST) in FrontAccounting, you need to configure taxes, tax groups, and item tax types1. Here's a step-by-step guide:

: Create a new account for import tax (e.g., 2151) and classify it under current liabilities16.
: Configure the tax rates used for Item Tax Types and Tax Groups1.
: Set tax rates for different customer groups, such as domestic or export sales1. To access this, go to Setup tab and select Access Setup. Enable Tax Groups under the Banking & GL Config heading1.
: Define groups of tax rates applicable to specific goods sold. Item tax types contain all tax rates that are not explicitly exempted1.

    :
        Ensure you have an Accrued Account for tax collection to avoid booking payments directly against the Tax Accounts1.
        Enter a Journal Entry (JE) to clear the Tax Accounts and transfer the balances to the Accrued Tax Account at the end of the reporting period (e.g., monthly)1.
        When you pay the tax via Bank Payment, debit the Accrued Tax Account and credit your bank account1. If you receive a tax refund, use Bank Deposit and book the transaction accordingly1.

:

: In Sales => Sales Types, if the Tax included box is checked, FrontAccounting assumes that tax is already included in the item price and will not display tax on sales orders or invoices1.
: To include multiple taxes on a single invoice, define the respective percentages in the settings module. Then, go to tax group and select the default customer tax group and click the check boxes in tax section to include multiple tax1.
: Ensure a branch record is created for each customer, either automatically or manually, as taxation depends on where the real business activity is performed, which is selected at the branch level1. The switch $auto_create_branch in config.php determines whether branch records are created automatically1.

    : To report taxes, run the Tax Report within the FrontAccounting system for the relevant period1. The Tax Transaction Details are stored in the trans_tax_details table1.

:

: The current sales tax in Malaysia ranges from 5% to 10%. A rate of 5% is applied to products like milk, dairy, and prepared foods, while a 10% rate applies to goods like sugar, spirits, and electrical appliances3.
: In the Malaysian context, the Item Master should be the basic tax setting, configured for both Input and Output Tax Codes2.
: Sales Tax invoices must include specific information such as the invoice serial number, date, registered manufacturer details, buyer details, description of goods, discounts, taxable amounts, tax rates, and total amounts in Ringgit Malaysia (MYR)4.

Use ChatGPT to support FA for your users:

Go to https://www.chatgpt.com
Type in:
How do I configure GST for India in FrontAccounting application?

ChatGPT said:

Configuring GST for India in FrontAccounting involves a few steps to ensure that the application is set up correctly to handle GST (Goods and Services Tax) for transactions. Follow these steps:
1. Set Up GST Tax Categories

In India, there are different GST rates, such as 5%, 12%, 18%, and 28%. These need to be set up in FrontAccounting.

    Navigate to the "Taxes" section in the application:
        Go to "System" → "Taxes" → "Tax Categories".
        Add the different tax categories that correspond to the Indian GST rates. You will typically need categories like:
            GST 5%
            GST 12%
            GST 18%
            GST 28%
            IGST (for interstate transactions)

    In each tax category, specify the percentage rate and whether it’s CGST, SGST, or IGST.

2. Set Up GST Accounts

You'll need specific accounts for GST purposes to track the collection and payment of GST, as well as Input and Output GST.

    Navigate to the "Chart of Accounts":
        Go to "Accounts" → "Chart of Accounts".
        Create separate accounts for:
            GST Output (Sales GST) – For the GST collected on sales.
            GST Input (Purchase GST) – For the GST paid on purchases.
            CGST, SGST, and IGST – If you need separate accounts for each type of GST (this is necessary for compliance).

3. Configure Tax Calculation Method

Next, you need to configure the tax calculation method for your items and services.

    Navigate to "Items" → "Item Master".
    Add your inventory items or services with the appropriate tax category for GST.
        Select the tax category for each item (5%, 12%, 18%, etc.), depending on the GST rate applicable to the product/service.
        FrontAccounting will use these settings to calculate GST during invoicing.

4. Configure GST on Sales and Purchases

Make sure that GST is applied correctly when creating sales and purchase invoices.

    Sales Invoice:
        When creating a sales invoice, select the correct GST tax category for the items sold.
        The system will automatically calculate and display the GST based on the rate configured for each item.

    Purchase Invoice:
        Similarly, for purchase invoices, ensure you select the correct GST tax category to record the GST paid.

5. Configure GST Reporting

To file GST returns, you’ll need to generate GST reports.

    GST Return Report:
        FrontAccounting can generate reports to show sales and purchases with GST details.
        Go to "Reports" → "Tax Reports" → "GST Report". This will give you a breakdown of the tax amounts for your records.
        You can generate GST Summary or GST Detail reports that help you with tax filings.

6. GST Filing Period

Ensure that the fiscal year in FrontAccounting is set up to match India's GST filing cycle (monthly or quarterly). You can specify the dates for each period as required.
Additional Tips:

    GST Invoices: Ensure the GST numbers (GSTIN) are added to invoices, especially for inter-state transactions.
    Tax Adjustment: If you need to adjust tax amounts, FrontAccounting provides options to modify tax rates for specific transactions.

If you're unsure about specific GST requirements, consult with a local tax professional who understands the nuances of India’s GST system.

Thanks. Committed

8

(18 replies, posted in Modules/Add-on's)

Committed

9

(18 replies, posted in Modules/Add-on's)

Wonder what the line for SHA1sum is in the _init/config file ?
As I have added woo_orders to my repo the pull request was not needed now.

10

(18 replies, posted in Modules/Add-on's)

Unofficial Extensions repo:
https://github.com/apmuthu/FA24extensions/tree/master/Extensions/woo_orders

All opening balances in amounts are made through a journal entry that is balanced. All inventory opening balances too can be done through a dummy sales / purchase account that can be settled as paid/received onto the suspense account in a balanced manner. Mere creation of stock on hand will not have its value balanced off.

12

(12 replies, posted in Installation)

PHP / MySQL vagaries in encoding and function constructs and crypto hashes and some function definitions and rounding off errors besides Apache versions

13

(12 replies, posted in Installation)

Please make sure that any master changes have compatibility with Windows as well.

14

(2 replies, posted in Reporting)

Costing method used can be stated in the report.

15

(12 replies, posted in Installation)

Lines 416 and 481 have both parameters in admin/db/maintenance_db.inc

Also in the CoA sql/en_US-new.sql we have SET NAMES latin1; and it may be utf8 for other language CoAs.

Please list the changes you have made.

16

(2 replies, posted in Setup)

FA has some fixes for PHP 8 and deployment notes from users on PHP 8.3 would be welcome.

17

(18 replies, posted in Modules/Add-on's)

SCOTT WHEELER, President, NOVERHEAD SOFTWARE, LLC, 132 Woodcrest Dr Loveland, OH, 45140-7756 United States/
In 2011: 6971 TICONDEROGA TRAIL EDEN PRAIRIE OH 55346

https://www.cartspan.com/
513-708-1317

https://frontaccounting.com/punbb/viewtopic.php?pid=43386#p43386

CartSpan itself is a Microsoft Windows based application that resides on your local desktop.  CartSpan will communicate with its own standard PHP script (ionCube encoded) to accomplish the integration work.

18

(18 replies, posted in Modules/Add-on's)

Zip and attach herein and send to @joe.
Fork and send pull request to the unofficial Extensions repo as well.
Also it should state the version of WP it was tested on and whether PHP8 constructs undermine legacy PHP versions of FA in usage.

19

(8 replies, posted in Items and Inventory)

There are 2 tables - stock_category and stock_master -  that have the field mb_flag in FA default installation. The former has it as dflt_mb_flag.

There are a total of 53 files with the field mb_flag in them in the core FA.

mb_flag values:
F => Fixed Asset
B =>Purchased -  Default in the tables, used only in reports rep3*.php as item.mb_flag='B' OR item.mb_flag='M'
M => Manufactured
D =>Service (S old flag)

Which file has mb_flag='A' ?

@joe: Should this be included?

Try to create another item of inventory type for the old one without inventory and proceed thereafter and see if you can back enter the old ones in the latter and then edit the invoices, salesorders and others that affect inventory thereafter

Those in EU will have time for this only when the Ukraine war is over and everyone feels safe there.

When re-ordering the arguments to functions, the appropriate function definitions should also be aligned accordingly.

24

(6 replies, posted in Items and Inventory)

Make the choice in the form for the said report. See attachment.

Deprecated is just a warning and can be suppressed in the php,ini.

Solution : Rename your function name emailcomm() to __construct()

Explanation: In previous versions of PHP, if PHP cannot find a __construct() function for a given class, it will search for the old-style constructor function, by the name of the class, but now old style constructors are DEPRECATED in PHP 7.0, and will be removed in a future version. You should always use __construct() in new code. Read php manual

   function __construct() {
      // copy your old constructor function code

https://stackoverflow.com/questions/47549783/php-deprecated-methods-with-the-same-name-as-their-class-will-not-be-constructo