Drypowder Help Center

How payments flow from invoice to GL

The five stages a payment moves through, from customer submission to the Spruce general ledger.

This article explains the full journey of a digital payment through Drypowder, from the moment a customer submits a payment in the Payments portal to the moment it posts to the Spruce general ledger.

The five stages

A payment moves through five stages:

  1. Invoice sync — AR data arrives in Drypowder from Spruce.
  2. Payment submission — The customer pays through the Payments portal.
  3. Payment processing — The payment moves through the banking network.
  4. Settlement — The payment is grouped into a settlement batch.
  5. GL posting — The settlement is posted to the Spruce general ledger.

Each stage is a distinct system boundary, which is why they happen at different times rather than all at once.

Stage 1: invoice sync

Before a customer can pay, their open invoices need to be in Drypowder. For Spruce-integrated dealers, this happens automatically: invoices, balances, credit limits, and customer information sync in real time through ECI's private API. For file-based dealers, AR data arrives when a CSV is uploaded through the Integration page.

This sync is the foundation. If the data is stale, customers see the wrong balance and the AR team works from outdated information.

Stage 2: payment submission

The customer signs in to the Payments portal, selects a supplier (your dealership), and sees their outstanding items grouped by job: invoices, debit adjustments, and credit adjustments. They pick what they want to pay, choose a payment method (ACH or card), and review a preview that shows the total, any fees, and any statement discount.

Dealers who run monthly statements in Spruce also expose a Current Statement view, where the customer can pay the full statement balance in one transaction. When the customer pays the full statement by the discount date, the statement discount is applied on the preview and travels with the payment to GL posting.

When they confirm, Drypowder creates a payment record with a status of Pending and sends the payment request to Moov, the payment processor.

For ACH payments, the customer's bank account must be linked through Plaid first. This is a one-time setup; once linked, the account is saved for future payments.

No money has moved yet at this point. The payment is queued.

Stage 3: payment processing

Moov handles the fund transfer. What happens next depends on the method.

Card payments are authorized and captured in near-real-time. The card network approves the transaction within seconds. Settlement follows later the same business day.

ACH payments are batched and cleared through the Federal Reserve's Automated Clearing House network. This takes 1 to 3 business days. The payment sits in Pending status during this time. The delay is standard for all ACH transactions, not specific to Drypowder.

During processing, the payment can be reviewed by an AR operator. If something looks wrong, the operator can freeze the payment (flagging it for investigation) or terminate it (rejecting it outright).

Stage 4: settlement

Once a payment clears, it moves to Settled status and is grouped into a settlement batch with other related payments. The settlement appears on the Settlements tab of the Payments page.

A settlement tracks posting status separately for three categories:

  • Invoices
  • Credit adjustments
  • Debit adjustments

Each category has its own posted/unposted state. This granularity matters because a single settlement batch may include payments that cover invoices and also apply credits, debits, or a statement discount.

Stage 5: GL posting

The final stage is recording the settlement in the Spruce general ledger. There are two paths.

Auto-post (Spruce integration): Drypowder sends the posting data directly to Spruce through the private API. The posting wizard shows progress and confirms when complete. Timestamps are set automatically.

Manual post (file download): Drypowder generates a CSV posting file that the AR team downloads and uploads to the ERP. After uploading, they return to the settlement to update the posted timestamps.

Once posted, the customer's balance in Spruce reflects the payment. After all categories are posted, the AR operator marks the settlement as Resolved to signal that reconciliation is complete.

Timing summary

StageCardACH
SubmissionSecondsSeconds
ProcessingSeconds to minutes1 to 3 business days
SettlementSame business dayAfter processing completes
GL postingWhen operator postsWhen operator posts

GL posting is not automatic. It happens when an AR operator runs the posting workflow, whether auto-post or manual. Some teams post daily; others post weekly. The timing is up to the dealer.

What can go wrong

Payment stays in Pending. ACH payments take 1 to 3 business days. If a payment is still Pending after 3 business days, something may need investigation.

ACH return after settlement. A customer's bank can return an ACH payment after it has already settled (insufficient funds, closed account). Returns typically surface 2 to 5 business days after settlement.

Frozen payment. If an AR operator freezes a payment, it will not progress to settlement until it is released. This is intentional; it means someone flagged an issue that needs resolution.

GL posting delay. Posting happens when an operator runs the workflow. If settlements are piling up without being posted, the GL will not reflect recent payments. Establishing a daily posting cadence prevents this.

On this page