Skip to content

Revenue Operations

How revenue operations chases failed payments, reconciles invoices and approves spend across Stripe, NetSuite and Ramp.

Invoice reconciliation

Reconciling a daily Stripe payout against the NetSuite bank deposit

Each weekday morning the billing analyst opens the Stripe payouts page, picks yesterday's settled payout, exports the unified balance transactions and posts a matching deposit in NetSuite. The Stripe processing fees are split out to GL 6700-8 as a separate expense line rather than netted into the deposit. Any payment line on the payout that does not have a matching NetSuite invoice is flagged for orphan investigation the same morning rather than parked in a suspense account.

Invoice reconciliation

Investigating an orphan Stripe payment without a NetSuite invoice

When the daily payout reconciliation flags a Stripe payment with no matching NetSuite invoice, the AR specialist pulls the customer email from Stripe, searches NetSuite for typo variants of that email, checks whether the payment came through a manual Checkout link rather than the customer portal and reaches out to the originating cardholder if no cause is found within ten minutes. The orphan is never parked in a suspense account.

Invoice reconciliation

Voiding a duplicate NetSuite invoice and refunding the Stripe charge

When the orphan investigation reveals two invoices raised for the same charge, the AR specialist voids the duplicate invoice in NetSuite rather than issuing a credit memo, then refunds the Stripe charge with the reason set to `duplicate` and emails the customer a one-line apology with the kept invoice number for reference. The voided invoice is exited from the recognition schedule the same day.

Failed payments

Retrying a failed Stripe subscription charge on a three-day cadence

When a Stripe subscription charge fails with `card_declined` or `insufficient_funds`, the billing analyst lets Stripe Smart Retries fire the immediate retry but takes manual control after that. The charge is retried at three working day intervals with the cadence paused on Fridays and resumed Monday. The retry stops after three manual attempts in favour of a personalised dunning email or a recognition pause depending on the customer's monthly recurring revenue tier.

Failed payments

Sending a personalised dunning email to a high-value customer in arrears

When a customer with monthly recurring revenue above $5,000 has had a charge fail and the manual retry has not recovered it, the senior RevOps manager suppresses Stripe's automated dunning email and sends a personalised email from her own address to the named accounts payable contact at the customer with the invoice number, the amount, the failure reason in plain language and a single link to update payment method. Automated dunning is left enabled for accounts below the threshold.

Failed payments

Pausing NetSuite revenue recognition after a customer enters dunning

After two failed Stripe charges on the same subscription, the FP&A analyst pauses revenue recognition for the customer in NetSuite by setting the recognition schedule status to Hold and adding a hold reason of `dunning`, then exits the customer from the new pipeline reports until the dunning resolves. Recognition resumes the day a successful charge clears, not the day the customer commits to pay.

Spend approval

Approving a Ramp transaction with the right NetSuite GL code

When a Ramp transaction lands in the approval inbox, the team owner reviews the receipt, the vendor and the line items, then approves the transaction with the GL code mapped to the team owner's department rather than the cardholder's. Pre-fill rules on the cardholder's spend programme set the default code so approvers normally just confirm and approve, but the rule allows override for cross-charging.

Spend approval

Rejecting a Ramp expense with an illegible or missing receipt

When a Ramp transaction arrives in the inbox without a legible itemised receipt, the spend operations lead rejects the transaction with the reason `missing_itemised_receipt`, sends a friendly Ramp comment asking the cardholder to retake the photo with line items visible and notes the rejection on the cardholder's spend record. A second rejection on the same cardholder in the same calendar month escalates the case to the senior RevOps manager.

Spend approval

Provisioning a Ramp virtual card for a SaaS vendor with a monthly cap

When a new SaaS subscription is approved, the spend operations lead provisions a Ramp virtual card with a monthly cap set at 110% of the contracted monthly fee, GL code pre-filled to GL 6610 Software & SaaS, the contract PDF attached and the vendor name normalised to the legal entity name. The card is locked to the vendor's domain so it cannot be used elsewhere.

Month-end close

Closing the month with a Stripe to NetSuite tie-out report

On the second working day of the month the FP&A analyst runs a Stripe to NetSuite tie-out report that walks the Stripe in-transit balance to the NetSuite undeposited funds balance, lists every dunning customer with held recognition and resolves any variance above $5 before signing off the close. The close is not signed until the in-transit and undeposited funds balances tie within the float threshold.

Questions

Frequently asked questions

Speak to the founder

Henry Denton, founder of FusedFrames

Get a demo. Watch a live capture, then an AI agent query the result.

Ask anything. Pricing, security or integrating with your stack.

No purchase obligation

Start capturing

Record in minutes. Install once and work as normal.

Plug AI agents in. One API call from any AI agent stack.

Refund on unused credits if you cancel