gold bitcoin

Cryptocurrency, blockchain, Bitcoin, Dogecoin, Ethereum, Shiba Inu, whatever, the whole cryptocurrency thing can be a mess to understand. Matt Levine at Bloomberg has the best guide I’ve found to explain it all. It’s straightforward, well laid out, and about as easy to understand as it gets. Sadly, it’s behind the Bloomberg paywall, but still highly recommended.

Fun with Fraud – Two Strikes

mother and daughter on grass

Frank Vukovits and I do a session together highlighting internal threats. Internally we refer to it as Mark & Frank telling fraud stories. We might start just calling it that externally as well. We have another one for you today, a tale of a second chance gone very wrong.

Bonnie Sweeten stole as much as $1 million from her employer (amounts vary in different reports) and claimed she and her daughter were kidnapped but they were found in a luxury suite at Disney World. She was convicted and sentenced to 8 years in prison. After she got out, an excavating firm then gave her a job as…wait for it… a bookkeeper. She stole from the company by writing company checks to herself and fraudulently using the company credit card. I swear you can’t make this stuff up.


Mom Who Faked Her Own Kidnapping and Went to Disney World is Bippidi Boppidi Booked Again #LegalEagle #Disney #disneyworld #crime #hoax #BucksCounty

♬ original sound – Legal Eagle

Help! My Auditor wants a report for Workflow approval information in Microsoft Dynamics GP

We get this request a lot. GP does a good job of showing individual workflow details, but full reporting is newer. Cheryl W. has a great article covering reporting on workflow for Dynamics GP. She includes standard reports and building a Smartlist Designer report.

I you really don’t want to f*ck it up, it needs an internal control.

When we talk about controls at Fastpath, people often think about fraud prevention. If the company is publicly traded, the conversation may center around ensuring the accuracy of the financial statements. But there are some very public scenarios where significant screw-ups could have been prevented by functioning internal controls. Now I have a new example. Buckle up, it’s a doozy.

The long version is here: (subscription may be required). A non-subscription description is here:

The short version is Barclays bank wanted to issue about $20 billion in securities in 2019. Because of past transgressions, they had to register these securities with the SEC and include an upper limit. As they approached the $20 bn deadline, they would need to register to issue additional securities above that amount. No big deal, just paperwork. Financial institutions have lots of analysts and lawyers who can do paperwork. 

The expectation was that someone, somewhere in Barclays would track the issuance of these securities and raise their hand when they got near the $20 bn limit even if that tracking process was just a spreadsheet. Anyone who has ever used a spreadsheet to track stuff over multiple years knows that this idea is fraught with problems. We all see where this is going…except we’d all be wrong. They didn’t use a spreadsheet to track issuances. They didn’t use a database. They didn’t even use a piece of paper. This is not the case of a failed internal control that failed, but of a non-existent internal control. No one tracked the issuance of these securities.

“Over the course of these efforts, it became clear to all involved that there was no internal control in place to track in real time the amount of securities offered and sold against the amount of securities registered.”

Instead, Barclays issued $36.4 bn of securities, about 80% more than authorized. This is technically securities fraud because Barclays sold unregistered securities. There was no intent to defraud. It was simply a paperwork mistake. A very expensive mistake. Barclays is being fined $200 million. Everyone who bought these securities above the initial $20 bn limit has an option to unwind their transaction. If they made money, they have an option to keep it. If they lost money, they can ask for it back. This was less of a problem when the stock market was roaring, but as the market has fallen, Barclays has received requests to unwind $7.7 bn, a little under half of the excess, and they are looking at estimated losses of £1.7 bn.

Not every company has this specific risk. But every company has important things that need to be managed where, failing that, very bad things happen. The nature of managing risk is that those items need controls too. 

Fastpath is hiring

I have been on every side of the ERP world. I have been a customer and a consultant multiple times. I’ve implemented and supported both sides of the fence. Six years ago I moved to the Independent Software Vendor (ISV) world with Fastpath and I wish I had made the move sooner.

If you like helping people but are tired of the travel, if 6-18 months on the same project doesn’t excite you, or if you’ve finally had your fill of month-end close, we have a spot for you.

Fastpath is growing and we have two positions open in Client Services. We are looking for a Client Education Manager and Associate. We like to hire smart people and see all the cool things they can do, so both positions are remote. These are training positions, but our training sessions tend to be short, focused, and often consultative. It’s the fun of helping people, without the travel and massive time commitment.

At Fastpath, a Client Education Manager develops and delivers training to our clients. This is an active training role. We deliver training remotely in 1-hour sessions. The Client Education Manager will also oversee training performed by Client Education Associates. You can see the full description here.

The Client Education Associate delivered training to customers and helps them understand how to get the most out of Fastpath. The full description is available here:

I’ve worked with some really great teams in the past and I’ve worked for some really great people. This company and this team are my favorite. Frankly, we simply treat people like adults. If you’re ready for something new, please apply.

Vote for My DynamicsCon Session

I’m speaking again this year at DynamicsCon, but instead of GP, I’m looking at 50 Security Tips for BC in the Cloud. Whether you are running Business Central today or looking at moving tomorrow, understanding security and how to get the most out of it is an important piece. In this session we’ll tear through 50 tips around BC security and send you home with plenty of resources to help.

To make this happen, I need your votes. Please follow this link to vote for my session:

Factoring Prospective Receivables? WTH?

In case you’ve missed the Greensill Capital masterpiece debacle. Here are couple of articles with good, clear explanations to help you get caught up.

Greensill didn’t just finance Bluestone’s supply chain

Imaginary invoices are hard to collect

The quick version is Greensill financed receivables (factoring) and payables (reverse factoring). For receivables, they paid the company now at a discount and collected the full amount from the customer later. For payables, they paid on time and collected from the company at a premium later. This isn’t new. My perception, having been involved with factoring a little, is that it tends to be either a well-established practice in certain industries or a bit of a last-ditch lender. But it is short-term financing with collateral. The collateral is the receivable obligation and typical terms are 30-90 days. Definitely short-term.

In Greensill’s case with Bluestone, they appear to be lending against PROSPECTIVE customers and FUTURE invoices. What? I picture a pitch like this: “Look Mr. CFO. We know you don’t sell to Bob’s Bait and Sushi Limited right now, but someday they may decide to do business with your company. How much do you think they would spend? $10 million? Ok, we’ll loan that to you on 90-day terms. Just pay us the discount (interest). If you don’t pay it back in 90 days because not only have you not sold them anything, no one has even called up Bob’s, we’ll roll the loan for another 90 days.”

As Matt Levine put it in Greensill didn’t just finance Bluestone’s supply chain:

Greensill basically gave Bluestone a payday loan for a job Bluestone hadn’t yet applied for.

It appears as though Greensill also managed to package this mess up and securitize it, selling it as receivables loans to Credit Suisse. That part of the story is murky, but it’s hiding in there. Part of the murk is also an apparent conflict of interest at Greensill involving metals magnate Sanjeev Gupta and his collection of companies, called GFG Alliance.

Now Greensill is insolvent and Grant Thornton has been called in to help. Apparently, they are stumbling across these prospective receivables and try to collect them. It’s not going well.

As of now, it’s not even fraud…yet. The securities sold could constitute fraud if Credit Suisse was unaware of the “prospective” part. Bluestone is suing because it believed this was long-term financing, but there’s no mention of how they booked the transactions on their financial statements. And there’s enough murkiness here that I suspect fraud will rear its ugly head eventually. For all this, we learn that somehow a fake receivable isn’t a fake receivable if everybody agrees beforehand they are fake and you just change the name.

The last paragraph of Imaginary invoices are hard to collect was perfect so I’ll quote it in full:

I do not envy Grant Thornton. Their job right now is pretty much going around to companies, presenting them with invoices, and getting laughed out of the room: “That’s not our invoice, we’ve never even heard of Liberty Commodities or Greensill, get outta here.” And then they go back to Greensill with their findings and get laughed out of the room again: “Of course it’s not their invoice, they were just a potential customer, how could you be so naive?” And then Grant Thornton has to tentatively ask, “Well, okay, but then who is going to pay this invoice?” And then there is a long awkward silence.

Don’t Default to Excel

I’m a big fan of Excel. Heck, I’m such a fan I’ve written a couple of books around it. I have a tool built on it. It is unequivocally the glue that holds financial departments, and in some cases organizations, together. Sometimes though, people take that too far. All too often users lean into Excel because it’s familiar. Instead of learning the application sending data to Excel, they simply export to Excel. Why is this bad? Let me count the ways.

  1. Excel isn’t as good as a dedicated tool. I see this where systems have tools dedicated to a task and instead of using those tools users choose Excel. A great example of this is bank reconciliations. ERP systems have dedicated bank rec modules. They are designed with appropriate controls, imports from bank records, and math that always works. Still, a fair number of people choose to skip using bank rec modules and do it via Excel. It’s always messy. It’s easy to get the math wrong. It’s also not something that auditors are a fan of because Excel sheets are more prone to manipulation. I’ve seen at least one person fired for this when flaws in their Excel sheet were exposed.
  2. Excel may add work. This happens when users reflexively export to Excel without understanding the core system. Many times I’ve seen users export data and build a big report from scratch in Excel. This process gets repeated month after month. Later, sometimes years later, they realize that the system actually has the report they needed and they could have avoided all the wasted effort.
  3. Excel can add complexity. Similar to the last item, I see users export data from multiple reports and pull data together with vlookups. In the process, they build a mess because they don’t understand the underlying data. Just because data can be connected a certain way, doesn’t mean it is connected that way. There may other elements required for an appropriate connection. Explaining the mess tends to be hard on the ego of folks who created the mess. It’s exhausting convincing them that their Excel model is wrong. Excel is not always the best choice for connecting data, that’s why databases exist. There’s a second part to this as well. If you’ve ever inherited someone else’s Excel sheet, you understand how difficult it can be to simply understand, not mention untangle, what they’ve done.
  4. Excel can include errors. This one is pretty obvious. We’ve all made an Excel math error, formula error, something, heck multiple somethings. Experienced folks build checks and balances into their sheets and that adds another level of complexity. Sometimes this gets overblown, but it takes a lot of work to protect a sheet against errors.

I have absolutely nothing against Excel. I use it a lot, but I don’t default to it. Excel shouldn’t be a primary tool. It should be a fallback when a primary tool falls short. Take the time and energy to figure out primary systems and use Excel to fill in the gaps.

Why are you still using the GP Stock Status Report?

couple carrying cardboard boxes in living room

It’s a valid question. Why are you still using the GP Stock Status Report? or even the Historical Stock Status Report?

The Stock Status Reports aren’t designed to tie to General Ledger. The Historical Inventory Trial Balance (HITB) is designed to tie to GL.

From Microsoft’s own: How to determine, maintain, and report accurate costing in Inventory, pg 9

In conclusion, we recommend that customers do not use the Inventory Historical Stock Status report to adjust or balance to the general ledger. The report was not designed for that purpose. While FIFO/LIFO perpetual inventories may be very close in balancing, there are issues still pending that would keep this report from balancing to the general ledger.

HITB has been out since GP 10 SP2, way back in 2008, yes 2008. HITB becomes a teenager this year. Despite this, I still see a lot of people still using the Stock Status Report. It’s long past time to move off Stock Status and on to HITB.

Dynamics GP: Slow-Moving Inventory

couple carrying cardboard boxes in living room

I realized the other day that I’ve only posted this code in a reply, never as its own post, so I’m adding this now.

Slow-moving and obsolete inventory is traditionally a measure of inventory destined for markdown and ultimately write-off if not addressed. The nature of what is slow-moving and obsolete varies dramatically. Fresh bread is slow-moving if it hasn’t sold in a couple of days, heavy equipment could be months. Each organization determines what is slow-moving or obsolete.

This code compares inventory items to sales to determine items with quantities on hand that have not sold with the timeframe set in the date area.

dbo.IV00101 INNER JOIN
dbo.IV00102 ON dbo.IV00101.ITEMNMBR = dbo.IV00102.ITEMNMBR
FROM dbo.SOP30300
ON dbo.SOP30300.SOPNUMBE = dbo.SOP30200.SOPNUMBE
AND dbo.SOP30300.SOPTYPE = dbo.SOP30200.SOPTYPE
CONVERT(DATETIME, ‘2019-03-01 00:00:00’, 102) AND CONVERT(DATETIME, ‘2021-02-28 00:00:00’, 102))
AND (dbo.IV00102.QTYONHND > 0)

Note: I had this in my set of scripts with no notations, that usually means I wrote it, however, I see that I posted a link to a version of this written by Mohammed Doud. The link is now gone so I’m not sure if this is his version or mine and I don’t want to take the credit if it’s his. Either way, it’s useful.

%d bloggers like this: