How to record a lease-to-own sale so your margin is right
Ring the full ticket, record the provider as the tender, and post the gap between the ticket and the deposit as a fee — not as a discount on the item.
A customer bought a $1,299 washer on Tuesday. Acima approved it, you delivered Thursday, and the following Monday $1,140 landed in the bank. Your sales report says $1,299 and your bank says $1,140. Neither is lying. The $159 gap is the provider's merchant discount on that deal, and where you put it decides whether the margin on that washer is right or quietly wrong for the rest of the year.
The short answer
Ring the sale at your ticket price. Record the provider by name as the tender. When the remittance lands, post the difference between the ticket and the deposit as a cost of that sale, in its own expense account. Do not lower the price of the washer to make the deposit match.
What a lease-to-own sale actually is
Four parties, one washer. The provider buys the merchandise from you and leases it to the customer. Acima's merchant page states it plainly — "we buy the product from you and lease it to the customer with clear paths to ownership". Snap says the same from the customer's side: "Snap purchases the merchandise upfront so they own it. You take it home and lease it from Snap."
Three things follow, and all three change what you type:
- You are paid by the provider, not by the customer. The customer may hand you an initial payment at the counter, but the rest of the money comes from a company, in a lump, on their schedule.
- The agreement is with the provider, not with you. Payment plans, late fees, early buyouts and collections are theirs. Acima's FAQ says a customer can "terminate the lease at any time, without penalty" and "return the merchandise at any time"; Progressive Leasing's how-it-works page says "At anytime, you may purchase early or return merchandise and cancel lease". None of that is an event in your books.
- Once they fund it, the unit is theirs. It is not yours and it is not yet the customer's. That matters on a return, and it is the one people get wrong.
Why the ticket and the deposit never match
Three separate reasons stack up, and all three are normal.
Timing. Funding is usually triggered by delivery or pickup, not by the sale. Acima tells merchants that "most transactions will be paid within two business days of the merchandise being delivered or picked up by the customer". A washer rung Saturday and delivered the following Thursday funds the week after, so at month end you have revenue in one month and the cash in the next. That is a gap, not an error.
The merchant discount. The provider keeps a percentage of the amount they fund. The rate is set in your merchant agreement and is negotiated store by store, so do not go looking for a published number — look at your own contract. In the example above it is $1,299 − $1,140 = $159 on that deal. The deposit arrives net. Nobody sends you an invoice for it.
The customer's initial payment. Snap notes that "depending on where you live you may be required to make an initial payment at the time of transaction". Ask each provider whether that payment is collected by you at the counter or by them in their app. If you collect it, it is a tender on your ticket. If they collect it, it is not — and recording it anyway double-counts the sale.
What to record at the point of sale
- Ring it at full ticket. $1,299, the same price as a cash customer. The ticket is what you sold the washer for; the fee is what it cost to get paid.
- Select the provider by name as the tender. Not "Other", not "Credit Card". You want to be able to ask, in March, what Acima cost you last year.
- Put the approval or lease number in the payment note. This is the number the provider's support line asks for three months from now, when a deposit is short and nobody remembers the customer.
- Take the customer's down payment as its own tender line — cash, card, whatever it was — if you collected it.
- Leave the financing payment open until the money arrives. Marking it paid on the day of sale is what makes the next three weeks confusing.
- Fulfil the order when the unit leaves the floor. That is the step that deducts stock, and it is usually the same event that triggers funding.
The split tender, which is the normal case
A partial approval is not a dead sale. A $1,099 approval on a $1,299 ticket is one sale with two tenders:
| Line | Amount | |---|---| | Washer, ticket price | $1,299.00 | | Cash taken at the counter | $200.00 | | Lease approval covering the balance | $1,099.00 | | Recorded sale | $1,299.00 |
The sale is still $1,299. You record two payments against it: $200 cash today, $1,099 financing. When the remittance for the $1,099 lands it will be net of the provider's discount, and the gap between $1,099 and that deposit is the fee — the same move as before, on a smaller base.
What to record when the funding lands
- Match the deposit to the order. The approval number in the payment note is how you find it.
- Mark the financing payment paid, for the amount the provider actually sent.
- Post the gap as an expense, to an account you use for nothing else — "Financing and lease-to-own fees" is a fine name. Not a discount, not a price adjustment, not "miscellaneous".
- Expect batched deposits. One wire can cover three orders from three different days. Split it across all three.
- Expect reversals inside a deposit. A lease that unwound last week can come out of this week's remittance, which makes a deposit look mysteriously short. It usually is not short; it is netted.
What goes wrong
The failure mode is booking the sale at the funded amount. You rang $1,140 because $1,140 is what the bank shows. Now the bank reconciles perfectly and four other things are wrong: revenue is understated by $159, the washer looks $159 more profitable than it was, your commission base is short if you pay on gross, and if your state taxes the retail sale at the counter, your taxable base is the wrong number.
This one survives for years because it makes the reconciliation easier. The error hides inside the thing you would normally use to catch errors.
How to spot it in five minutes. Open your P&L and look for the financing-fee expense account. If it does not exist, or reads $0.00 for the year, you have been netting fees into revenue on every lease-to-own sale you have ever taken. Then pull three lease tickets and compare what you rang against the signed lease amount. If they match, you are fine. If the rung amount matches the deposit instead, you have found it.
Four more that show up in practice:
- Delivered, never funded. The delivery confirmation was not submitted, so funding was never triggered. The tell is an order with a lease tender and no matching deposit two weeks later. That is the report to run monthly.
- A return, where the provider owns the unit. The customer can hand the washer back without involving you. What happens to your money depends on the clawback window in your merchant agreement — read it before you need it.
- An early buyout months later. The customer paid the provider off. Nothing happens in your books. Nothing should.
- Deposits that never tie to one ticket. If the provider remits weekly, match the week rather than forcing deposit to order one-for-one.
Sales tax
How a lease-to-own sale is taxed varies by state and by how the provider structures the agreement. In some states the store charges tax on the retail sale at the counter; in others the provider collects tax on the lease payments over time. Your merchant agreement and your state's department of revenue decide which applies, and a provider changing its structure can change the answer. Confirm it with your accountant — no software, ours included, keeps you compliant.
How UpChannels handles this
Seven lease-to-own providers are first-class tenders by name — Snap, Acima, Progressive, Koalafi (Okinus), American First, Katapult and FlexShopper — plus a generic financing option, so a payment is stored under the provider it actually came from rather than as "Other". An order takes up to three payments, each with its own method, amount, status and note, so a $200 down payment and a $1,099 lease approval are one order instead of three workarounds. Cost and margin are captured on every order, and profit shows up in the P&L.
The boundary, stated plainly. UpChannels records the tender and the provider. It does not track a lease funding lifecycle — there is no sold → delivered → funded → deposited state machine, and a payment's status is one of six generic values. It does not net the provider's discount for you; posting that fee as a cost is a bookkeeping step you take. Naming a provider here means it is a tender you can select, not a partnership.
Sources
All fetched and checked 12 September 2026. Provider behaviour changes, so this guide is re-checked quarterly.
- Acima, Merchants — ownership model and funding within two business days of delivery or pickup.
- Acima, FAQs — the customer's agreement, early purchase, terminating and returning the merchandise.
- Snap Finance, How it works — who owns the merchandise, and the initial payment at the time of transaction.
- Progressive Leasing, How it works — early purchase and return rights.
Read next
- How to reconcile a Stripe payout against your books
A payout is a batch, not a day. It nets fees, refunds and disputes over a window that never matches your sales day. Match the batch, post the fee as an expense.
- How to price delivery zones and haul-away fees
Work out the fully loaded cost of one stop, draw zones off drive time instead of map radius, price haul-away as its own line, and cap free delivery by zone.
- Move your stock off spreadsheets without losing serial numbers
Your stock comes across as a CSV. Your customer history does not. Clean the file before you import, run catalog and quantities as two passes, and count on day one.