How to accept partial payments on invoices with Stripe

Written by

Denym Bird Denym BirdCo-founder & CEO of Paidnice Denym started Paidnice in 2022 after customers paying late left his own business short on payroll. He has led it to $1 billion collected on time across more than 1 million invoices, and writes about credit control, late fees and getting paid on Xero and QuickBooks. Personally tested

Co-founder & CEO of Paidnice

Denym tested Stripe's three partial-payment routes, the Invoice settings switch, the Charge customer dialog, and the API, covering why the hosted page accepts any amount until a minimum is set.

Denym Bird
Reviewed by Ashley Schroder Ashley SchroderCo-founder of Paidnice Ashley is a co-founder and lead developer of Paidnice and has built accounting software for more than 10 years. He builds the ledger connections that put reminders, late fees and payments into Xero, QuickBooks and ERPs such as NetSuite and Business Central. Before Paidnice he co-founded A2X, ecommerce accounting software for Xero and QuickBooks.

Co-founder of Paidnice

Updated Sep 28, 2026 · 4 min

Summary

Stripe accepts partial payments on an invoice in three ways: an Invoice settings switch that lets the customer choose an amount, a Charge customer dialog in the Dashboard, and a PaymentIntent attached through the API. The invoice stays open until the balance reaches zero. On Xero and QuickBooks Online, Paidnice adds a minimum payment threshold.

  • The Stripe setting: Partial payments on the hosted invoice page are switched on in the Dashboard under Settings, Billing, Invoices; the invoice then shows a partially paid status until it is settled.
  • The minimum: Paidnice sets a minimum, such as 50% of the invoice, and the customer sees a Pay Other Amount button beside Pay In Full.
  • Price: Partial payments are included wherever Stripe is connected, on every Paidnice plan from US$69 a month for Essentials.
Contents▾

This guide covers what Stripe does on its own, and what a connected app adds when the invoice lives in Xero or QuickBooks Online rather than in Stripe Invoicing.

What are partial payments on an invoice?

A partial payment lets a customer pay less than the full invoice amount now and settle the rest later, without a new invoice being raised. The original invoice stays open, its remaining balance falls by the amount paid, and it is marked paid only when that balance reaches zero.

In Stripe the invoice carries an amount_paid and an amount_remaining field, and a customer who has paid part of it sees a "partially paid" status in their customer portal. The same idea applies in Xero and QuickBooks Online, where a payment recorded against an invoice reduces the amount owing and the invoice stays in Awaiting Payment.

Free: Payment reminder email templatesCopy the reminder emails for before, on and after the due date.

How do you accept partial payments in Stripe?

Stripe Invoicing accepts a partial payment through a setting on the hosted invoice page, a manual charge in the Dashboard, or a PaymentIntent attached to the invoice by API. Each route pays any amount up to the invoice's remaining balance.

RouteWho chooses the amountWhere it lives
Hosted invoice pageThe customer, on the page Stripe emails themDashboard, Settings, Billing, Invoices: enable partial payments
Charge customerYou, from a saved payment methodDashboard, Billing, Invoices, open invoice, Charge customer, edit the Amount
APIYour code, one PaymentIntent per paymentCreate a PaymentIntent in the invoice's currency, then call /invoices/{id}/attach_payment

Three limits apply on the Stripe side. Partial payments are not supported on subscription invoices that Stripe charges automatically. An invoice with an open payment cannot be voided or edited. And if two open payments overlap and the customer overpays, Stripe credits the excess to the customer's credit balance and fires an invoice.overpaid event rather than refunding it. Stripe's own page on partial payments for invoices carries the API detail.

A separate mechanism, partial capture, is not a partial payment. When a PaymentIntent is created with capture_method=manual, Stripe holds the authorized amount and the capture call can take less than it, using amount_to_capture. The rest is released, not left owing. That suits a hotel hold or a deposit, not an invoice a customer is paying down over time.

How do partial payments work with Stripe and Paidnice?

Paidnice connects Stripe to the invoices in Xero or QuickBooks Online, so a customer can pay part of an accounting-system invoice from a reminder or the payment portal, and the payment is recorded against that invoice. You set a minimum, such as 50% of the total, and Paidnice keeps chasing only the balance that is left.

Paidnice Stripe settings with the Allow partial payments switch and a minimum payment amount field
  1. Connect your Stripe account in Paidnice.
  2. Switch on "Allow partial payments".
  3. Set the minimum payment, for example 50%.
  4. Save. Every reminder, statement and portal link now offers the option.

The customer sees a "Pay Other Amount" button next to "Pay In Full" when they open the invoice:

Customer invoice view showing Pay In Full and Pay Other Amount buttons

They choose the minimum or anything above it, and Stripe hosts the checkout:

Amount selector for a partial payment, with the minimum enforced
Stripe checkout screen for a partial invoice payment

The minimum is the part Stripe alone does not give you. On the hosted invoice page the customer can enter any amount, so a $10 payment on a $4,000 invoice is a valid partial payment. The Paidnice threshold is a percentage set once in Settings, and the customer cannot pay below it.

Why accept partial payments?

Partial payments get you paid something sooner instead of waiting for the whole invoice, which matters most on larger invoices and with slower-paying customers. A customer who cannot clear $8,000 this month can often clear $4,000, and the invoice that would have sat unpaid is half settled.

  • Cash arrives earlier. Part of the money lands now rather than all of it later.
  • Fewer abandoned invoices. When the only options are pay in full or ignore the email, larger invoices tend to get ignored.
  • Deposits and milestones without a second invoice. A design agency collecting 50% before a project starts, a consultancy billing by phase, an event planner taking a booking deposit.
  • A middle step before a payment plan. A customer who pays part of an invoice unprompted is usually a customer worth offering a payment plan rather than a late fee.

Is a partial payment the same as splitting a payment?

No. A partial payment is one customer paying less than the full amount now and the rest later. A split payment divides one transaction across several payers or several payment methods at the same time, which is a different Stripe feature and a different question.

Paidnice handles the first case. If a customer wants to pay one invoice half by card and half by bank transfer on the same day, that is two partial payments in sequence, and both are recorded against the invoice.

How do I turn on partial payments in Paidnice?

Open Settings in Paidnice, go to the Stripe payment provider, switch on "Allow partial payments" and set the minimum. Partial payments are included on every plan wherever Stripe is connected, from US$69 a month for Essentials, on both Xero and QuickBooks Online. On QuickBooks, Stripe and PayPal payment links on QuickBooks reminders shows how the link reaches the customer.

The Stripe integration page covers the connection itself. Card, ACH, BACS and Stripe direct debit all run through the same hosted checkout, and card and bank details never reach Paidnice.

Common questions

Does Stripe allow partial payments on invoices?
Yes. Enable partial payments under Settings, Billing, Invoices for the hosted invoice page, charge a partial amount from the Dashboard against a saved payment method, or attach a PaymentIntent to the invoice by API. The invoice stays open until its remaining balance is zero.

Can a customer pay part of a Xero or QuickBooks invoice through Stripe?
Yes, with a connected app. Paidnice adds a Pay Other Amount option to the invoice, enforces a minimum you set, and records each payment against the invoice in Xero or QuickBooks Online.

What happens if a customer overpays a Stripe invoice?
Stripe credits the excess to the customer's credit balance and fires an invoice.overpaid webhook. Refunding it is a separate step.

Is partial capture the same as a partial payment?
No. Partial capture takes less than an authorized hold and releases the rest, so nothing stays owing. A partial payment leaves a balance on the invoice for the customer to pay later.

Read the transcript: How to Accept Part Payments with Stripe

Hi there. In this video, I want to show you how you can accept partial payments via Stripe through Paidnice. So, you might want to do this in the instance where you want to allow your customers to partially pay some of your invoices.

So, not paying the whole thing up front. This can be particularly useful if you want to accept deposits and not have to issue like brand new invoices for this or offer sort of payment plans etc. So anyway, we can do that through Xero QuickBooks and do that with our Stripe integration through Paidnice.

So let me show you how that will work. So first thing you need to do is head on over to your organization settings and set up your Stripe as your payment provider. Now, you can use an existing Stripe account and and then even if you're still using that same Stripe account with Xero QuickBooks, you can still use the same one to bring it on over.

So, we just basically put the push the payment rails through there. Now, you'll set up your your payment accounts for where they will where the payments from Stripe will settle into. Now, if you've set those up with your existing accounting system before, then use the same settlement accounts that you've used.

So a good example is I would not necessarily use the same settlement account as where the money arrives. Have a separate settlement account. That's just for an accounting perspective.

That that just makes things a little bit tidier. Now you can also charge a processing fee with Paidnice. So if you wanted to charge a custom processing fee as a separate line item and have that accounted separately, we can do that too.

You just tick that box and then you can pick this percentage flat rate and then also the fee income account that that that will go into. Now, for allowing partial payments, you'll tick this box here. Now, you can set a minimum payment amount that needs to be paid.

So, an example, it could be 50%, 10%, whichever it may be, but this is the minimum amount that someone must pay against that invoice at this time. So, you just set save there. Now, once that's done, the all of your all of your payment links and portal will have this activated on.

So, let's go find a customer and we will go have a look at what that looks like. So, let's look at say Marine Systems here. Now, we're going to go take a look at their payment portal.

So, they've got an outstanding invoice here. Now, we can see the the invoice that they have here. And we can see that obviously with our with our payment integration, we can see that we can now pay this outstanding invoice.

It's not actually overdue yet, but that would be that would be un like un unblurred if it wasn't wasn't. But we can click on this and we can see here we've got these two payment options. We've got pay in full.

So that will essentially open up and pay the whole thing in full. But if we want to pay other amount, we click on that and you can see here it says minimum payment amount minimum there. And we can see the invoice itself is for $396.

So 50% of that or 75% of that. And so let's say we just want to pay 50%. Click pay.

And now what will happen is the Stripe link will basically populate and we can just pay that partial amount there. So yeah that's that's how partial payments work and yeah thanks

Paidnice features in this article

Share this post

About the editorial team

Written by Denym Bird Co-founder & CEO of Paidnice

Denym started Paidnice in 2022 after customers paying late left his own business short on payroll. He has led it to $1 billion collected on time across more than 1 million invoices, and writes about credit control, late fees and getting paid on Xero and QuickBooks.

Reviewed by Ashley Schroder Co-founder of Paidnice

Ashley is a co-founder and lead developer of Paidnice and has built accounting software for more than 10 years. He builds the ledger connections that put reminders, late fees and payments into Xero, QuickBooks and ERPs such as NetSuite and Business Central. Before Paidnice he co-founded A2X, ecommerce accounting software for Xero and QuickBooks.

Paidnice features in this article

Try Our Free Accounts Receivable Calculators

Optimize your cash flow with our suite of financial tools designed for AR professionals. Calculate DSO, aging analysis, late fees, and more.

Explore Calculators

Start getting paid on time with Paidnice

Connect Xero or QuickBooks and Paidnice prepares draft policies for you. Nothing runs until you approve them.

Rated 5 stars, 160+ reviews · Xero App of the Year