Skip to content
Ludy

Customers, deals and bookings in one place.

Ludy CRM keeps your contact list, follows each sales deal through its stages and lets clients pick a time to meet you. A contact is the same customer or vendor that Ludy Accounting already uses.

Open source under the AGPL. Ludy CRM is in the self-hosted edition. On Ludy Cloud: coming soon.

Gạo Sạch MekongExample data
  • New1 deals
    ₫18,000,000
    • Fragrant rice for a restaurantNhà hàng Sen Vàng₫18,000,000Expected close 30/11/2026
  • Contacted2 deals
    ₫292,000,000
    • ST25 rice, 10 tonnesĐại lý Phương Nam₫250,000,000Expected close 15/11/2026
    • Weekly rice deliveryCửa hàng Bình An₫42,000,000Expected close 20/11/2026
  • Quote sent1 deals
    ₫120,000,000
    • Wholesale rice, winter cropCửa hàng Hoa Mai₫120,000,000Expected close 10/11/2026
  • Negotiation1 deals
    ₫480,000,000
    • Q4 supply contractCông ty Thực phẩm An Phát₫480,000,000Expected close 05/11/2026
  • Won1 deals
    ₫96,000,000
    • ST25 rice, October batchĐại lý Phương Nam₫96,000,000Expected close 12/10/2026
  • Lost0 deals
    ₫0

    No deals

Four jobs, one list of customers

Each job is its own screen, and they share one list of contacts.

  1. Add a contact

    Create contacts one by one, or import an Excel or CSV file after previewing every row.

    In the list
  2. Open a deal

    Pick the customer, enter the amount and the expected close date.

    At the first stage
  3. Book a meeting

    Send the booking page, and the client picks a free time.

    Booking confirmed
  4. Close

    Move the deal through the stages until Won or Lost.

    Won or Lost

What Ludy CRM does today

Four jobs: keep contacts, follow deals, take bookings, connect your calendar.

Contacts

One list for customers and vendors, shared with Ludy Accounting.

  • A contact is a person or a company, the same party that the invoices in Ludy Accounting use
  • Search by name, email, phone or tax code, typed without diacritics
  • Each contact has its deals, its notes (when Ludy Notes is on) and its own timeline
  • Import from an Excel or CSV file: preview every row as new, duplicate or invalid before importing, and nothing already on file is overwritten. An import cannot be undone
  • Saved views, private or shared
Import contacts from a filekhach-hang.xlsx
Example data
  1. 1. Choose a file
  2. 2. Map columns
  3. 3. Preview
  4. 4. Done

Nothing has been written to the contact list yet. Look it over, then press Import.

  • 2 new rows
  • 1 duplicate row
  • 1 invalid row
RowNameResult
1Nhà hàng Sen VàngNew
2Cửa hàng Bình AnNew
3Hợp tác xã Tân HồngSame tax codeDuplicate
4Đại lý Phương NamInvalid emailInvalid
A row that matches an existing contact:
Skip it and keep the existing contact

Deals and the sales pipeline

Follow each deal through stages that you set.

  • Each deal has a customer, an amount in dong, an owner, an expected close date and a reason if it is lost
  • A drag and drop board by stage, with a card count and a total in each column. On a phone or from the keyboard, use the stage selector on the card
  • Owners and admins name, add, remove and reorder the stages
  • Filter by status, owner, close date and amount, then save it as a private or shared view
  • If two people edit at once, the second to save is told and nothing is overwritten
Example data
The stages of the sales pipeline

Won and Lost always come last and cannot be deleted.

  1. Stage 1New
  2. Stage 2Contacted
  3. Stage 3Quote sent
  4. Stage 4Negotiation
  5. Won stage: Won
  6. Lost stage: Lost
Filter deals
  • Open
  • Me
  • Due soon (next 7 days)
Saved views
  • Mine, Private
  • In negotiation, Shared

A booking page for clients

Clients pick a free time themselves, with no account.

  • Each type of meeting has a public booking page, with times shown in the client’s time zone
  • Team meeting types: round robin for whoever is free, or only the times when the whole team is free
  • Working hours and days off for each person; public holidays and Tet are built in through 2028
  • A confirmation email with a calendar file, reminders 24 hours and 1 hour before, and a single-use link for the client to reschedule or cancel. It needs a mail server that the installer has configured
  • A client who books is matched to a contact or created as one, and it lands on the timeline
Example data
Wholesale rice consultation
30 minutes, at the Long An warehouse
Free times, week of 19/10
  • Mon 19/1009:0010:3014:00
  • Tue 20/1008:3014:00, Picked15:30
  • Wed 21/1009:30
  • Thu 22/10Fully booked
New bookingConfirmed
Gạo Sạch Miền Tây Co., Ltd.
14:00, Tue 20/10/2026

Google Calendar and Vy

Connect your calendar so busy times are never double booked.

  • Connect Google Calendar: busy times block bookings, and only times are read, never titles. It needs Google keys that the installer has configured
  • You can turn on writing new bookings to Google Calendar; the title holds the meeting type and the client’s name
  • A subscription address to see your bookings in Google Calendar, Outlook or Apple Calendar
  • Vy reads a client’s message, picks real free times and drafts a reply with the booking link. You read it and send it yourself. It needs an AI model that the installer has configured
Example data
Google CalendarExternal calendar of Chị HoaConnected
Reads busy times, never titles
Yes
Write bookings into this calendar
On
Last synced
14:05 18/10/2026

A client writes "is Tuesday afternoon OK?": Vy suggests 14:00 or 15:30, and Chị Hoa checks and sends the reply.

What Vy does in Ludy CRM

Vy helps with scheduling. The contact list and the deals are yours to manage.

Vy does

  • Suggests meeting times from a client’s message and drafts the reply
  • When a client cancels, the appointment scheduler agent (if you add it to the org chart) writes the 3 nearest free times into a task and passes it to the person in charge

Vy does not

  • Book a meeting or send an email on its own
  • Write to the contact list or the deals

Who Ludy CRM is for

For people who sell and take appointments with clients.

Solo founders and small businesses

Customers, deals and bookings in one place, instead of spreadsheets and scattered messages.

Accountants and accounting firms

A customer here is also a customer in Ludy Accounting, so invoices and contacts share one list.

People who self-host

Open source under the AGPL, and the data stays on your server. You need a mail server to send confirmation emails.

Questions about Ludy CRM

Is Ludy CRM as complete as a big CRM?

Not yet. Ludy CRM has contacts, deals, a board by stage and bookings. It has no email capture, no sales forecast and no automated email sequences.

Do my customers from Ludy Accounting show up in the CRM?

Yes. A contact is the same party the invoices use, so the customers and vendors you already have appear in the contact list.

Does importing contacts overwrite what I already have?

No. A duplicate row is skipped or only fills empty fields. You preview every row before importing, and an import cannot be undone.

Do I need Google Calendar?

No. The booking page works without Google. Connecting Google Calendar only blocks your busy times, and it needs Google keys that the installer has configured.

Does Ludy email confirmations to clients?

Yes, once the installer has configured a mail server. Without one, Ludy sends no email.

Try Ludy CRM with your own customers

Self-host for free with a single docker compose command. If you already have an account, sign in.