Thanks, apmuthu. If you don't mind - I would very much like to hear from other FA users as well.

Thanks

Thank you, apmuthu for your enthusiasm and willingness to help. Your explanation of Tag functionality is very clear. Unfortunately it is not obvious to me how your post is relevant to the original question. You are probably lucky that your clients send advance payment (step 2 in your sequence) without any invoice. But as I asked in original post

If the payment terms (let's call it "Due NOW") is of prepayment type, shouldn't I be able to generate invoice before delivery?

If you don't mind explaining how your sequence (that doesn't have invoice before delivery) address this question, I would greatly appreciate. And if it's impossible, and prepayment type is for future down payment functionality (coming in 2.4) - that's fine as well.

apmuthu wrote:

Use the Tag feature to tag both invoice numbers to one delivery note number.

Thanks, apmuthu for your reply. It may be obvious for an expert in FrontAccounting - but for a new FA administrator, could you please elaborate. How would using Tag feature allow one to generate two invoices? As I am sure you know, once I create invoice, I can't change any line item values. Would using Tag feature change that?

Thanks again for your patience with what is probably obvious questions...

apmuthu wrote:

Treat as advance payment and make invoice on account (credit type)

Thanks, apmuthu for your reply. It may be obvious for an expert in FrontAccounting - but for a new FA administrator, could you please elaborate. I can't find anything that resembles advance payment in the application or in the documentation. How would I enter advance payment in the system?

Probably, once I understand the advanced payment functionality, "make invoice on account (credit type)" will be obvious as well - but at this time I have no idea what you are referring to.

Sorry for being so dense... Hopefully, your answers will help other people as well

They are are in your main installation directory. you should either make it writeable by web server (just during installation), or if it is impossible create ("touch") those files and make them writeable

I saw it was discussed several times before; but I don't think I saw this prepayment payment type before 2.3.17 (maybe it was there; and I just missed it); so I'll ask again.

If the payment terms (let's call it "Due NOW") is of prepayment type, shouldn't I be able to generate invoice before delivery? I created a sales order, set payment terms to Due NOW, but I still see the option for delivery, and no option for invoicing...

Am I missing something?
(Joe, I saw your note that you are out of the office; so I'll dig the code in the meantime)

I am trying to figure out, how would I use two [invoice] numbers? When I create an invoice for delivery, I can't modify the values there, can I? So, if the total is, say, $10,000 - how can I specify that this is an invoice for $5,000?

I would be OK creating two invoices with two different numbers, as long as it's applied to a single Sales order / delivery.

Hopefully, I am not hijacking this thread...

On related note, there is no way to set up "installment" payment method, right?

Interesting, I am struggling with what seems to be a very similar task as OP for professional services (consulting) context. Say, the project is $1M (I wish, but hey - men can dream smile ). And there is a payment schedule - maybe $100K at signing, $250K two months later, etc. So, I would like to send invoices and receive payments (including, of course, GL transactions, account balances, etc) along the way.

Is it possible out of the box? or with some modifications?

Or I completely misunderstood OP and it's a different situation?

Excellent! Thank you. I didn't realize that I need to copy repXXX itself as well, since I wasn't planning to make changes there. Once I did that, find_custom_file indeed found it in company/0/reporting, and used my custom doctext and header2.

Thank you. That was amazingly quick! On a related note, pdf_report says

 // leave layout files names without path to enable including
// modified versions from company/x/reporting directory
include("includes/doctext.inc");
include("includes/header2.inc");

however, include_path doesn't include company subdirectory, and therefore only stock doctext gets included. Is it a setting that I can specify to override core files without modifying them?

Thanks

I may have misunderstood something important. When the program talks about "templates" (like, template invoice or template delivery) I thought it is the template ("look and feel") of Invoice PDFs, etc. However, this thread https://frontaccounting.com/punbb/viewtopic.php?id=3198 indicates that it's something completely different. And documentation is skimpy on this topic.

Therefore, a broader question: what is the best (easiest) way to customize the look and feel of the PDF that comes out of the "Print Invoice"? Is it the PHP code of report (107 in this case)? or there is some "template" that variable information is put on top (like Smarty)? Or something else?

Interestingly, we tried yet another accounting system (PhreeBooks), and it works in the same way as WebERP and FA. Namely, you can only enter invoice after you received the goods.

In all other aspects we liked FA much better than the others. In fact, we ran into a few very pleasant surprises (the final was that there is a configuration option to see both Codes and Short Descriptions in the item drop-down lists). Also, the quality of documentation (including clear English) and the speed of responses exceeded all expectations.

Thank you guys - you are the best!

OK, Thanks.

Probably last question: do you feel that FA has the functionality that I am looking for, and I am just not getting it? Or FA doesn't have the functionality that I am describing?

Maybe for simplification, the functionality in question is recording a payment in the system that is linked to PO before receiving goods.

Joe,
I've actually spent several hours with the accountant and I am channeling her frustrations. OK, let's try again.

joe wrote:

The payment you do is recorded both in the bank account and accounts receivable as well as the general ledger.

No questions and no disagreement there.

joe wrote:

Allocation means that you take the initial payment and allocate the invoice(s).

Duly noted.

Both these points are indisputably correct, but unrelated to my question. Let me ask the question this way:

1. Is it possible to put a payment in the system before receiving goods that will be tied to purchase order?
2. Is it possible to set up the system, so that it - before receiving goods - prevents the user from making the second payment for the same purchase order?
3. Is it possible to enter an invoice for the purchase order before receiving goods.

All three are simple yes/no questions.

Personally, as a developer with 20+ years of experience, I love the system. It's written in a well-thought way; easy to debug, and probably easy to enhance. But if the accountant says that she needs this functionality, and I can't show her how to do it - then for us it's like functionality doesn't exist. And all my admiration with code doesn't mean much.

Maybe we are using the word "allocate" in different ways... for me it means allocation of payments to GL accounts - something that, - as I said - is least of my concerns at this stage.

What I am concerned about is recording the payment; so my bank account transactions match my bank statements. Am I understanding correctly that it is impossible to record a payment before receiving the goods? (if it isn't - I can take it... just say one way or another)

We tried both FA and WebERP - and it seems impossible in either systems... Are we that unique in paying upfront? hmm

16

(2 replies, posted in Accounts Payable)

Thank you... I was right in the middle of debugging this. I wish I could say that I was very close to resolving it myself - but that probably wouldn't be true smile

17

(2 replies, posted in Accounts Payable)

I am not sure if it is supposed to work this way. To me it looks like a bug... I had a Direct Invoice, so something was generated behind the scene. Fine - that's how I expected.

But now I create a PO. After I complete the entry I can "View" or "Print" the order. On "View" screen I see PO# 6, and reference #5. In the PDF that is generated if I press "Print" I see Purchase Order No.5. Then on delivery and on Invoicing I also see PO# 6. So, is it just a bug in the report that generates PO to send to the vendor?

Also, my accountant is confused by all the reference numbers. Is it fair to say that it is a "technical thing" and the accountant doesn't need to worry about those?

joe,

For clarity, let's say I create a PO on July 1st for $250. I get the invoice on July 3rd for $300 ($250 + $50 shipping). I pay right away (on the 3rd), and receive the goods on the 20th. So, while your sequence has goods arrive as #3, and invoice arrive as #4 - in our business invoice arrives several weeks before goods. Similar to how we as consumer purchase online: we pay Amazon at the time of the order; not after we receive the shipment.

Therefore, I have two problems with this workflow (and that's before I get my head around allocations, which will probably never happen). Probably, I misunderstand something.

First, when I receive the invoice and make the payment. There is no correlation of the payment to the purchase order. What happens if the vendor sends another invoice on the 5th? There is nothing in the system that will hint me that I already paid for this PO.

Second, when the goods arrive there is always a reference to my PO since PO lists line items. If some items are on back order, those line items are marked as such. There may or may not be a reference to vendor invoice (more likely not). If I have 40-50 invoices that are not in the system (because the goods have not arrived yet) - how can I pick one to match the shipment? The only way is to open each invoice from that vendor (ok, from specific vendor there may be 5-10), and see which one applies to the PO that is on the shipping memo.

Is there no support for the workflow that I described? In our business 80 per cent of our purchases happen that way. And 100 per cent of our sales, including sales to businesses. There got to be some way to implement it...

Sure. A few things to point out (more for my curiosity):

  • Isn't it too late at line 470? By this time empty parameter is already set in $this->SCRIPT_ENCODING, and it is $this->SCRIPT_ENCODING which is an empty parameter that is passed in $fromenc. As my analysis shows in original post, that initial value is wiped out around line 163 (obviously, my analysis may be wrong)

  • The file is huge (~27 thousand lines; 1MB). Hard for me to say what part is significant.

  • I don't see the way to upload a file here. But you can get it from http://www.rabinovich.org/.outgoing/bug4177.tar.gz

Hmm... you are right. I could swear I didn't see the vendor description in the PDF yesterday hmm

I am getting the following error in the log in a few places:

0:admin:JsHttpRequest.php:470: mb_convert_encoding(): Illegal character encoding specified

Looks like the problem is in JsHttpRequest::setEncoding (line 163). When $enc being passed is empty, the default value of $this->SCRIPT_ENCODING (which is respectable "windows-1251") is overwritten by an empty string.

And apparently mb_convert_encoding doesn't like an empty string. It's OK with missing third parameter, but not empty one.

When I wrapped "parse an encoding" in

if (!empty($enc)) { ... }

block, it seems to be working fine. Obviously, with English-only installation it is difficult to test how it behaves when encoding is actually set, but it works on my machine wink

The way this bug comes to the user - instead of a confirmation "Company was updated successfully" or similar, the user sees an orange warning sign

I set up Supplier's Description on Purchasing Pricing page. However, I can't figure out how to use it on the purchase order. I assume, it should be possible - otherwise, why would one need this field in the first place. But I can't see it either on the screen, or on the purchase order itself.

I can see somebody is asking about vendor reference but I think it's different. I am running ver. 2.3.16.

Wow! That was amazingly fast! Thank you.

Let me make sure I understand what you are saying (I think I do - but it's helpful to repeat it in my own words). Once I get the invoice and know how much to pay, I keep invoice "in the inbox", and go to "Payments to suppliers" to create a payment, right? Once the goods actually arrive, I get the invoice from the inbox, enter GRN and invoice. Right?

(I'll leave it to the accountant to decide whether to allocate at the time of the payment or at the time of receiving goods)

Hi, I am trying to implement the following workflow.

  1. I create a PO,

  2. Vendor sends me Pro-Forma Invoice (usually with shipping charges; occasionally tax or customs charges separated out). Sometimes immediately (if their system can generate it automatically); usually in a few hours or a few days

  3. I pay, and send remittance advice

  4. A few days or weeks later I get the goods.

I can't figure out how to implement such workflow. Is it possible?