> For the complete documentation index, see [llms.txt](https://help.rinsebase.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.rinsebase.com/troubleshooting.md).

# Troubleshooting

Fixes for the problems cleaning companies run into most often. Each one lists the likely cause and the fix, grouped by area. If none of these help, see [Contact support](#contact-support) at the end.

## Crew login

### Crew member can't log in

Start on **Team → Roster**. The badge on each crew card tells you where the problem is.

| Likely cause                                              | Fix                                                                                                                                                                                      |
| --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Badge says **No email — can't log in**                    | Crew log in with an email address. Click **+ Add email to invite** (or **✏ Edit profile**), save the email, then send the invite. Until you do, they can't see any job assigned to them. |
| Badge says **Invite expired — resend**                    | Invite links stop working after 30 days. Click **↺ Resend invite** to send a fresh link.                                                                                                 |
| Badge says **Invite sent** and they never finished        | They haven't opened the invite yet. Ask them to check spam, or click **↺ Resend invite**.                                                                                                |
| They're typing a different email from the one you invited | They have to use the exact address on their crew card. Fix the card with **✏ Edit profile** if it's wrong.                                                                               |
| Badge says **Joined** and they forgot their password      | Click **🔑 Send password reset**. That button only appears after they've accepted the invite. The reset link also makes that email their sign-in address.                                |
| Their account is deactivated                              | Click **Activate** on their crew card.                                                                                                                                                   |

### "Email or password is incorrect" in the crew app

| Likely cause                           | Fix                                                                                                                                                       |
| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Wrong password, or a typo in the email | In the app, tap **Forgot your password?**, enter their email, then enter the verification code from the email and a new password (at least 8 characters). |
| They haven't accepted their invite yet | They have no password yet. Have them open the invite email first, or resend it from **Team**.                                                             |
| "Couldn't reach the server"            | The phone has no connection. Try again on Wi-Fi or with better signal.                                                                                    |

## Crew app

### Photos not uploading

| Likely cause                                             | Fix                                                                                                                                                                                                                                              |
| -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Camera or Photos access is turned off                    | On the phone, go to **Settings → Rinsebase Crew** and turn on **Camera** (and **Photos** to attach from the library).                                                                                                                            |
| No signal at the property                                | Nothing is lost. The photo is saved on the phone with a **waiting to upload** tag. It uploads by itself when the crew member takes another photo, opens the Photos screen again, or brings the app back to the foreground once they have signal. |
| Tag reads **upload failing — tap to retry**              | The server rejected the upload. It isn't a signal problem. The photo is still safe on the phone. Tap to retry, and contact support if it keeps failing.                                                                                          |
| Can't complete the job, with "Photos waiting for signal" | Completing a job needs signal too. Get back into coverage, let the photos upload, then complete.                                                                                                                                                 |

### "Saved on your phone — will sync when you have signal again"

That message isn't an error. Clock-ins, clock-outs and status changes made offline are saved on the phone and sync when the crew member gets signal again. Opening the job or pulling to refresh on the home screen triggers the sync sooner.

### GPS arrival or clock-in not working

| Likely cause                                   | Fix                                                                                                                                                                                                                           |
| ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Location is off for the app                    | **Settings → Rinsebase Crew → Location**. On iPhone choose **Always**. On Android choose **Allow all the time**. Arrival prompts and clock-out reminders need this setting. **While using** only stamps location at clock-in. |
| Crew member isn't within 150 m of the property | The arrival prompt fires only when the phone crosses a 150 m fence around the property. They can still tap **Clock in** by hand.                                                                                              |
| The property's location is only approximate    | If the address couldn't be matched to a street location, Rinsebase doesn't draw an arrival fence for it. Correct the address on the property so it matches exactly.                                                           |
| Auto clock-in never starts the clock           | **Auto clock-in on arrival** is a separate switch under **Settings → Features** (Growth plan and up). Without it, crew get a prompt instead.                                                                                  |

Clocking in manually never needs GPS. If the phone can't get a location, the punch still goes through.

### Not receiving push notifications

| Likely cause                        | Fix                                                                                                                |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| Notifications are off               | **Settings → Rinsebase Crew → Notifications** → turn on.                                                           |
| The phone never registered for push | Push is registered per phone at sign-in. After turning notifications on, have them fully close and reopen the app. |
| They switched to a new phone        | Each phone registers on its own. Have them log in on the new phone with notifications allowed.                     |

### App is in the wrong language

On the **Profile** tab, tap **🇺🇸 English**, **🇲🇽 Español** or **🇧🇷 Português**. The app switches right away. The choice is saved on that phone, so a new phone or a reinstall starts in English.

## Calendar sync

Calendar sync needs the Growth plan or higher. You can check feed status under **Settings → Calendar Sync**.

### New bookings aren't creating cleans

| Likely cause                                                       | Fix                                                                                                                                                                                  |
| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Trial expired, or the account is on Starter                        | Sync only runs on a paid Growth, Pro or Scale plan, or during a live trial. Otherwise it stops without an error. Upgrade under **Settings → Billing**.                               |
| The feed shows **Sync error** (red dot)                            | Click **⟳ Sync now**. If it fails again, the link has probably changed: have your client re-copy the iCal link from their listing, then remove the old feed and connect the new one. |
| The feed shows **No successful sync in over 48 hours** (amber dot) | Click **⟳ Sync now**. If the date doesn't update, re-copy the link as above.                                                                                                         |
| The feed shows **Paused — this feed is switched off**              | That isn't a failure. Archiving a client or property pauses its feeds. Restoring the client (**▶ Restore**) or property turns them back on.                                          |
| The booking is too new                                             | Feeds sync on a schedule. Click **⟳ Sync now** to pull right away.                                                                                                                   |

### A PMS connection stopped working

For clients connected through OwnerRez, Hospitable, Guesty or Hostaway, the client's profile shows a red **⚠ \[PMS name] sync issue** card when something is wrong. Each affected property's page and its row under **Settings → Calendar Sync** show the same reason.

* **Fix:** Ask your client to reconnect. Click **Disconnect**, then **🏠 Connect their booking account**, and send them the new link. They sign in to their own account; you never handle their login.
* **Invite link says "This link is no longer active" or "has expired":** connection invites expire after 30 days. Create a fresh one from the same button.

### Missing or duplicate cleans

Check these in order:

1. **Is sync running?** Look at the status dot for that property's feed in **Settings → Calendar Sync**.
2. **Was the booking cancelled?** When a stay drops out of the feed, its clean is cancelled on the next sync. If a feed has been completely empty for 24 hours, its remaining stays are treated as removed.
3. **Is it a calendar block, not a guest stay?** Blocks (owner stays, direct bookings, holds) only create a clean when **Create cleans from calendar blocks** is on in **Settings → Features** (it's off by default), or when the property is set to always add one. The clean waits for your approval.
4. **Is the property in Rinsebase twice?** Two property records for one address, each with its own feed, will each get a clean. Archive the extra one.

### Clean is at the wrong time

iCal feeds only carry dates. Clean times come from the property's check-out and check-in times (11:00 AM check-out and 3:00 PM check-in when none are set). Set the right times on the property, then click **⟳ Sync now**.

## Invoices and payments

### Invoice didn't reach the client

| Likely cause                                | Fix                                                                                                                                                                                    |
| ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Auto-send invoices** is off (the default) | Invoices created at completion are saved as drafts. Open the invoice and click **📤 Send invoice**, or turn on **Auto-send invoices** in **Settings → Features** (Growth plan and up). |
| The client has no email                     | Sending fails without one. Add an email to the client, then send.                                                                                                                      |
| The client is billed per period             | Clients on a weekly, biweekly, semimonthly or monthly cadence get one invoice when the period closes, not one per clean.                                                               |
| It was sent but they can't find it          | Click **📤 Resend invoice**.                                                                                                                                                           |

Sending an invoice doesn't require Stripe. Stripe only controls whether the client can pay online.

### Client can't pay online

| Likely cause                                                 | Fix                                                                                                                             |
| ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| Stripe isn't connected                                       | **Settings → Billing → Connect Stripe →**.                                                                                      |
| **⚠ Payments need attention**                                | Stripe needs more information. The **Pay** button stays hidden until you click **⚠ Repair setup →** and finish in Stripe.       |
| "Online payments switch on after your first completed clean" | The last step is completing a clean: a crew member clocks out on the job and adds a photo. Invoices still send in the meantime. |
| The invoice is still a draft                                 | Drafts can't be paid. Send it first.                                                                                            |

### Invoice shows **Clearing** for days

The client paid by bank transfer (ACH), and it's settling. Bank payments take a few business days. The invoice turns **Paid** on its own once the payment clears. Don't ask the client to pay again.

**Bank verifying** is different: the client still has to finish verifying their bank account with Stripe before the payment can start.

### Payment recorded in QuickBooks isn't showing

Turn on **Import payments recorded in QuickBooks** in **Settings → Integrations** (QuickBooks sync is Growth plan and up). Rinsebase checks every hour and before any reminder goes out, then marks the invoice paid and stops reminders and late fees.

## Portals

### Client's portal link doesn't work

Open the client in **Clients** and check the **Portal link** box.

| Status                                                          | Fix                                                                                                                                                                |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Expired**                                                     | Set **Expires:** to **Never**, **30 days** or **90 days**. The same link works again. Resending the invite alone won't fix an expired link.                        |
| **Revoked**                                                     | Click **✉ Send portal invite** to create and email a new link.                                                                                                     |
| Portal opens but shows only invoices                            | The client is archived. Archived clients can still see and pay invoices, but their properties and cleans are hidden. Click **▶ Restore** to bring everything back. |
| Client forwarded an old link after you clicked **↻ Reset link** | Resetting replaces the link. Send them the new one with **↺ Resend portal invite**.                                                                                |

The invite button only appears once the client has an email address.

### Property manager sees no properties

| Likely cause                             | Fix                                                                                                                                                                                  |
| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Properties are filed under other clients | The property manager portal shows only properties saved under that property manager's own client record. If you moved properties to separate owner clients, they won't appear there. |
| The properties are archived              | Archived properties are hidden from portals. Restore them from the client's profile.                                                                                                 |
| Wrong link                               | Turn on the **Property Manager** switch on their client profile and share the **Property Manager Portal Link** shown under it.                                                       |

## Scheduling

### Clean wasn't assigned to the default crew

Default crew assignment is all-or-nothing. If any one member of the property's **Default crew** can't take the clean, nobody is assigned. The clean then shows under **Needs crew** in **Jobs**, and the dashboard reads **N jobs ready — assign crew**. A member can't take the clean if they:

* are deactivated
* have approved time off that day (**Team → ◷ Availability**)
* are marked unavailable on that weekday
* are already on another clean at an overlapping time

**Fix:** Assign the clean by hand, or change the default crew. Changing it fills future unassigned cleans automatically.

### Clean is stuck in **Pending approval**

| Likely cause                                                         | Fix                                                                                                |
| -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| Same-day clean with less than 4 hours between check-out and check-in | Tight windows always wait for you. Approve the clean once you've confirmed a crew can make it.     |
| Clean created from a calendar block                                  | Block cleans always need approval. Approve it, or turn off **Create cleans from calendar blocks**. |

## Contact support

If you're still stuck:

* **Live chat:** click the chat bubble on rinsebase.com
* **Email:** we reply within 1 business day at <info@rinsebase.com>

To help us fix it faster, include your company name, what you were trying to do, what happened instead, and a screenshot if you can.

## Related

* [Mobile App Guide](/mobile-app-guide.md)
* [STR & Airbnb Sync](/str-and-airbnb-sync.md)
* [Billing and Payments](/billing-and-payments.md)
* [Client and Property Manager Portals](/client-and-property-manager-portals.md)
