> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kordless.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Balance and final payment

> Close out a project, collect the remaining balance, and handle refunds.

When the work is done, you close out the project from the bid's detail page. You enter the actual final total — which may differ from the quoted range if you added work or adjusted the price — and choose how to collect the remaining balance. The deposit already paid is applied toward the total; the balance is what's left.

## Mark a project complete

Open a deposited bid's detail page and scroll to the **Complete job** panel.

<Steps>
  <Step title="Click Mark job complete">
    The completion form opens with the final total pre-filled from the quoted range. Adjust it to the actual amount you're charging — including any added work or adjustments.
  </Step>

  <Step title="Review the breakdown">
    The form shows three numbers: **Total** (what you entered), **Deposit paid** (already collected), and **Balance** (what's still owed). If the deposit covers the total, the balance is zero.
  </Step>

  <Step title="Choose how to collect the balance">
    Pick one:

    * **Create payment link** — generates a Stripe Checkout link for the balance amount. The link is created for your review first; sending it is a separate step.
    * **Collected on site** — records that you collected the balance in person (cash, card, or external transfer). No payment link is generated.
  </Step>
</Steps>

If the balance is zero (the deposit covers the full total), complete the project as **Collected on site** — there's nothing left to collect.

## Send the balance link

If you chose to create a payment link, the link appears on the bid's detail page under **Balance due**. It's not sent automatically — you review it first, then send it.

<Steps>
  <Step title="Review the balance link">
    The balance amount and a copyable link appear in the Balance due panel. The tag shows *Link ready*.
  </Step>

  <Step title="Send it to the homeowner">
    Click **Send to homeowner** to have the agent deliver the link on the homeowner's conversation thread. The tag changes to *Link sent*. Alternatively, click **Copy** to paste the link into your own message.
  </Step>

  <Step title="Wait for payment">
    When the homeowner pays through the Stripe Checkout link, the balance is recorded and the bid moves to *Closed*. The bid's status changes from *Awaiting payment* to *Completed*.
  </Step>
</Steps>

You can also click **Collected on site** at any time if the homeowner ends up paying in person instead of through the link.

## Edit the final total

If you need to correct the total after completing the project — for example, you forgot to include an upsell, or the actual amount was lower — you can edit it.

<Steps>
  <Step title="Click Edit total">
    On the Balance due panel (or the Job complete panel if already settled), click **Edit total**.
  </Step>

  <Step title="Enter the corrected amount">
    Type the new final total. The balance recalculates automatically based on what's already been paid.
  </Step>

  <Step title="Save the revision">
    Click **Save**. If a payment link was already created, it's retired — you'll need to create a new one for the updated balance. If the balance increased, a new link reflects the higher amount.
  </Step>
</Steps>

<Warning>
  Editing the total after a payment link has been sent retires that link. The homeowner can no longer pay through the old link — create and send a new one for the corrected balance.
</Warning>

## Refund a payment

The **Payments** panel on the bid detail page lists every deposit and balance payment, with dates and statuses. You can issue full or partial refunds to the original payment method.

<Steps>
  <Step title="Open the bid detail page">
    Scroll to the **Payments** section.
  </Step>

  <Step title="Click Refund">
    Next to the payment you want to refund, click **Refund**. Choose a full or partial amount.
  </Step>
</Steps>

Refunds return money to the homeowner's original payment method. A refund reduces your revenue but does not create a new homeowner balance — if more is owed after a refund, raise the final total explicitly using **Edit total**.

Refund statuses appear as tags:

* **Paid** — no refund issued.
* **\$X refunded** — partial refund processed.
* **Fully refunded** — the full amount was returned.
* **\$X refund pending** — refund initiated, processing by Stripe.

## What you see in the pipeline

After completing a project with a payment link, the bid shows in **Completed — awaiting payment** until the balance is paid. Once the balance is settled — either through the link or by marking it collected on site — the bid moves to **Closed**.

| Pipeline state                   | What it means                                                            |
| -------------------------------- | ------------------------------------------------------------------------ |
| **Completed — awaiting payment** | Project is done, balance link is sent, waiting for the homeowner to pay. |
| **Closed** (Completed)           | Project is done and fully paid.                                          |
| **Closed** (Expired)             | Bid passed its validity window without being booked.                     |
| **Closed** (Declined)            | You declined the bid.                                                    |

## Next steps

<CardGroup cols={2}>
  <Card title="Today" icon="sun" href="/pool-spa/day/today">
    Your morning feed: what Kordless handled overnight and what needs a decision.
  </Card>

  <Card title="Service calendar" icon="calendar" href="/pool-spa/day/service-calendar">
    Your schedule: service visits, holds, and booked projects.
  </Card>
</CardGroup>
