Marty Zigman - The NetSuite Expert

Conversations with Marty Zigman

Certified Administrator • ERP • SuiteCloud

Prolecto Labs Accelerator Templates

Solve for NetSuite Negative Accounts Receivable due to Deposit Applications

Accounting NetSuite Reporting



This article is relevant if NetSuite deposit applications are generating accounts receivable credits.

Background

Our firm is widely recognized as a leader in NetSuite customer deposit accounting, primarily due to our 2016 breakthrough that enabled generating NetSuite invoices for requesting pre-earned payments without causing undesired balance sheet impacts.

We work with numerous eCommerce companies running NetSuite for fulfillment and accounting operations. In many cases, we advise on the merits of customer deposit accounting. The shift in mindset from traditional accounts receivable processes can take some accounting professionals time to adjust. However, once they understand the underlying principles, they recognize the benefits of streamlined cash operations and effective management of customer deposit liabilities. By avoiding using accounts receivable credits, we ensure accurate liability presentation for unearned revenue—without requiring NetSuite’s Advanced Revenue Management (ARM) module.

Given the high transaction volumes typical in eCommerce, accounting controls often focus on cash reconciliation and explaining variances from expectations. Additionally, monthly close procedures emphasize accurately explaining the customer deposit liability account’s balance and activity.

In a system adhering strictly to customer deposit accounting principles, accounts receivable credits should never appear on the balance sheet or accounts receivable aging.  Yet, one client discovered unexpected accounts receivable credits, prompting an investigation to determine the cause and implement corrective actions.  Some of this insight was due to tools we provided to generate consolidated accounts receivable with customer deposit aging.

Discovery of Accounts Receivable Credits in NetSuite Customer Deposit Operations

This client processes approximately 3,000 transactions daily, generating $100M USD in annual revenue. To manage this volume, a high degree of automation has been implemented, streamlining both fulfillment and accounting. With such heavy automation, the system operates largely “under IT control.”  However, when transaction adjustments are needed, accounting personnel, with good intentions, often intervene directly.

In one instance, a customer contacted the company, insisting she did not receive the full discount on her order. The following sequence of events unfolded:

Sequence of Transaction Events

1. Customer Deposit on 2/23: a customer deposit of $345.30 was recorded through the eCommerce system, reflecting the cash payment.

  Dr Cash 345.30
    Cr Customer Deposit 345.30

2.  Invoice Creation on 2/24: after the goods were shipped, an invoice was generated for $345.30. Automation applied the customer deposit to the invoice as expected.

  Dr Accounts Receivable 345.30
    Cr Sales 345.30

  Dr Customer Deposits 345.30
    Cr Accounts Receivable 345.30

3. Customer Call on 3/10: The customer contacted the company, claiming her discount was not applied. The bookkeeper decided to modify the invoice to reflect the missing discount, reducing the invoice amount from $345.30 to $214.84.

The bookkeeper, with an unknown misunderstanding of the automation and business process flows, assumed that reducing the invoice amount would free up the remaining cash for other purchases.  However, this action caused an unintended subsequent accounting issue.

Invoice Before Modification:

  Dr Accounts Receivable 345.30
    Cr Sales 345.30

Invoice After Modification:

  Dr Accounts Receivable 214.84
  Dr Sales Discounts 130.46
    Cr Sales 345.30

Since the deposit application remained unchanged, this resulted in a $130.46 credit balance in accounts receivable.  This is a situation that cannot occur in normal operations.

4. Books Closed: despite the anomaly, the books were subsequently closed. Given the high transaction volume and the risk of synchronization issues, reopening the books was not an option.

This sequence highlights a key risk in high transaction environments: the manual modification of transactions in an automated system caused an accounting inconsistency. Understanding the automation and system workflows is critical to prevent such errors. It’s not unusual to see this in such systems; it reveals the need for strong accounting controls to help discover “out-of-band” practices.

Discovery and Analysis of the Situation

The accounting team’s month-end process focused on reconciling customer deposits. At the time, the customer deposit balance appeared accurate at zero, reflecting that the goods had been fully shipped. However, their operations lacked mature processes for monitoring accounts receivable, and a couple of months later, they noticed several customers with accounts receivable credit balances that didn’t make sense.

Their eCommerce business operates entirely on customer deposits, meaning there’s no mechanism to apply accounts receivable credits toward future sales.  This is due, by design, to how the front-end eCommerce system interacts with customers  — it doesn’t support carrying credits forward or applying them automatically unless they are specifically crafted as credit memos (think of this as store credits). As a result, the $130.46 account receivable credit represents an unresolved liability to the customer that originated from a deposit application, but it is miscategorized in a way that won’t be addressed without further manual intervention.  Those good bookkeeper intentions now caused yet more work.

Solving the Accounts Receivable Credit in a Customer Deposit Operation

One potential — but unacceptable — approach was to reopen the books and modify the deposit application record to correctly reflect the $130.46 as available for future transactions.  The idea there was that by modifying the deposit application to be aligned with the corrected invoice, the remaining funds in the customer deposit account would become available — the customer deposit funds are fundamental to the front-end system. However, reopening the books in a high-transaction-volume environment posed significant risks and was immediately ruled out.

The recommended solution leveraged the approach outlined in my 2022 article, How to Convert NetSuite Accounts Receivable Credits to Customer Deposits.

The remediation objective was clear: avoid reopening the books while effectively converting accounts receivable credits (in this case, one that is from a deposit application) into customer deposits. The method detailed in the article involves the following steps:

  1. Create a Clearing Cash Account: this account serves as a temporary bridge for the needed cleanup transactions.
  2. Process a Customer Refund to the Clearing Cash Account: refund the credit balance from accounts receivable to the clearing account, effectively removing it from the aging report.
  3. Create a New Customer Deposit Against the Clearing Account: record the $130.46 as a new customer deposit by debiting the clearing cash account to ensure the liability is properly recognized.
  4. Ensure the Clearing Cash Account is Zeroed Out: after these transactions, the clearing cash account should have a net balance of zero, which will confirm that the transfer was completed cleanly.

This approach not only preserves the integrity of the closed books but also cleans up the accounts receivable aging while properly reflecting the customer liability as a deposit.

Critically, the article explains why simply creating a journal entry to debit accounts receivable and credit customer deposits is inappropriate. While it might “correct” the accounting at a general ledger level, it bypasses sub-ledger integrity, creating new reconciliation and operational issues that will show up in native NetSuite reports. Following the structured clearing account process ensures accounting accuracy and proper sub-ledger management, which NetSuite expects for good reporting.

Keep NetSuite Accounting Books Clean by Superior Automation and Controls

The good news is that in all our years working with the NetSuite accounting system, we have never encountered situations where debits and credits fail to balance.  However, the unique nature of NetSuite’s sub-ledger system (built on transaction types and database roll-up technology) requires careful consideration. It’s critical to respect the architecture driving native reports, such as Accounts Receivable Aging, and avoid over-reliance on good-old journal entries for adjustments.

Instead, we strongly advocate using complete transaction types and crafting adjustment transactions with precision and prescription.  This approach ensures that end-of-month operations remain straightforward and can be explained and reconciled while maintaining accounting accuracy and operational clarity.

Our clients value our deep NetSuite expertise. While we excel in building reliable and scalable automation, we are equally committed to understanding the broader business operations and their accounting implications. This added layer of thoughtfulness sets our firm apart, demonstrating our meticulous approach and genuine care for delivering lasting value.

If you found this article relevant, feel free to sign up for notifications to new articles as I post them. If you are ready to automate and streamline your NetSuite-driven accounting operation, let’s have a conversation.

 

 

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

More Posts - Website - Twitter - Facebook - LinkedIn - YouTube

About Marty Zigman

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

Biography • Website • X (Twitter) • Facebook • LinkedIn • YouTube

Leave a Reply

Your email address will not be published. Required fields are marked *