Bank reconciliation for NSF payment journal entries - odoo

Normally in case of any check bounced due to non-sufficient funds, statement will show that two lines and NSF charges.
Now in Odoo system we already reserves that payment journal entries and it is showing as reconciled with my reversal move line.
Ideally there should be way to reconcile both original payment with positive statement line and reversal move line with negative statement line.
Is there a way to achieve this without manipulating or removing statement line?

Related

Update draft invoice from API, Unbalanced exception

Our customers have a subscription on our services.
The subscription generates an draft invoice and one of the product on the draft I want to change the quantity off. This product quantity is different every month and our external software know this number.
What I’ve do through the API/XMLRPC.
We find the draft in the 'account.move' model then search the 'account.move.line' for our product. Then here we change the amount and we write the 'account.move.line' back.
Here we get an exception 'Cannot create unbalanced journal entry. <...>.'.
I can’t believe we have the recalculate all the financial values. Isn’t this something the API should do?

How can I find out the status of a statement in chargify? I.e. if it is paid of not?

How can I find out the status of a statement in chargify? I.e. if it is paid of not?
I found this documentation. It says:
Chargify Statements give you and your customers a breakdown of Subscription charges, payments, credits, and activity on a period-by-period basis. A Statement is similar to an “Invoice” because it is marked as currently paid or unpaid. Statements display all account activity for a specific usage period.
So, I would expect there to be a marking field which would tell me if the statement is paid, but I can not find such field. I tried to find the field in the documentation I linked above and in the query result I have in my system.
In my system I tried to rely on the ending_balance_in_cents field. I.e. when it is 0 I deem the statement as paid, otherwise as unpaid. But the problem is that the Chargify does not think the same way. It has the following statement:
As you can see the statement is Paid, even though the Ending Balance is not 0.
It looks like the payment came in after the statement closed. Try looking at the settled_at date and see if that helps determine if the statement is now paid.
https://reference.chargify.com/v1/statements/statements-intro#statement-output-attributes

SQL Point of sale how does a return work

Im new to POS systems. I have to create a very simple one for a few stores. Here is my SQL Server DB Schema:
The question that I have is how to handle returns.
In the real world how does a return works? Is a return a new sale but with a negative balance? If so then I would need to add to my sale table a "transactiontype" field (sale, return, etc.) and also a "referencesaleuid" field so the new sale (that will be a return) can reference the original sale ticket.
How to handle returns is a business decision.
For one example, we have worked with retailers of larger ticket items that needed to match returned products back to the original line item. So if a customer walked out of the store with two widgets and later returned one widget then we needed to be able to link the returned SKU back to the original transaction and SKU.
As another example, we have worked with retailers of smaller ticket items where returns were treated negative transactions.
I would suggest consulting closely with the business managers to find out what they would like to do in order to manage the business best.

VBA: track new equity (name) in a transaction statement

We have an investment account, with mainly equities. We can download transaction history in xlsx format.
The table format looks like this
Date Activity Symbols/description Price
10/29 Buy FLY/leasing LTD 13.92
10/22 Sell BRFRF/BURFORD cap 1.99
10/20 Buy BRFRF/BURFORD cap 1.92
10/17 NameChg JGWPT/JGWPT Holding
10/13 Buy JGW/JG Wentworth 5.31
Now, I am going to write a VBA module to
generate a list in a separate tab (worksheet) to keep the UNIQUE Symbols -- the names of equities in my portfolio.
Only work for the 'buy' or 'sell' transactions, all other activities should be ignored
Any time the transaction history is updated, the code can check for any new symbols (I don't care whether it is fully automatic, or click button), and add to the list.
I am sure I can do it with a lot conditional statements and loops, but I believe there must be some better ways.
Any idea would be helpful. Thanks so much.
Split Symbols/Description on the "/" Text to Columns. Make sure you preserve the price.
Use Microsoft Query on the Excel file in question to pull the relevant information into a table in the second sheet.

Fortran 90 OPEN file

I've been working on my project about bank account transactions (withdraw, deposit, check cashed, and balance inquiry) using "account.txt".
My TA said that I have to use temporary file. This temporary file will read line by line to find what the user is looking for. However, I did not understand this temporary OPEN file at all. Does anyone explain what that is, and if it's possible, would you attach example of it?
Here are the project instructions:
This project is about writing a program to perform transactions on bank accounts. You will be given a file which contains all the accounts in the bank (the file is named “account.txt”). Your program is to provide an interactive menu for users to perform transactions on these accounts. Your program needs to update the account file after each transaction. The user may perform transactions on accounts that are not available. Your program needs print an error message on the screen and return to the menu. In addition, your program needs to print whether a transaction is successful. For unsuccessful transaction, your program will print out the reason for the failed transaction.
Your program needs to be able to handle the following transactions:
Deposit money into an account
Withdraw money from an account
Check cashed against an account
Balance inquiry of an account
There is a limit on how many checks can be cashed against a saving account. The limit is 2 checks per month. There is a $0.25 penalty for each check cashed over the limit. If there is enough fund to cash the check but not the penalty, the transaction should go through and the resulting balance would be zero.
Here is the format in the account file for one account (data fields are separated by exactly one space):
Account type, S for saving, C for checking (1 character)
Account number of 5 digits
Last name of account holder (15 characters)
First name of account holder (15 characters)
Balance of the account in the form xxxxx.xxx
An integer field indicating how many checks have been cahsed this month (three digit)
An interest rate in the form of xx.xx (e.g. 10.01 = 10.01%)
For names with fewer than 15 characters, the data will be padded to have width of 15 characters.
Here is an example of the account file:
C 12345 Smith John 100.000 10 0.00
S 45834 Doe Jane 3462.340 0 0.30
C 58978 Bond Jones 13.320 5 0.00
*Creating temporary file
There is a way in FORTRAN to create a temporary file. Use:
OPEN(UNIT = , STATUS = "SCRATCH", ...)
There is no need to provide (FILE = ””). By using a temporary file, you can copy the accounts from the account file to the temporary file. Then when you copy the data back from the temporary file to the account file, perform the necessary transactions. Your program should not copy accounts between these two files if a transaction is to be failed.
Please forgive my english, I'm Japanese.
The are saying that a statement such as:
OPEN (7, ACCESS = 'DIRECT',STATUS = 'SCRATCH')
You can create a temporary file--one that will only live until you close it, and not be saved to disk. This file needs no name (it's never going to be referred to by name) just a unit number (in my example 7).
You can use this file to hold the account information temporarily during a transaction. You need this because, when you are inserting rows into the real file, and you don't want to overwrite subsequent data. So they are saying:
Copy everything to a temporary file
If the transaction succeeds, copy the data back to the main file but
Omit rows that are to be deleted
Add in the rows that are to be inserted
Does that help?