Project Overview
To create a digital system for managing library operations such as book inventory, issuing and returning books, applying fines, tracking librarian activity, and sending automated reminders — all within Salesforce using standard and custom objects, automation, reports, and dashboards.
Managing books, members, due dates, and fines manually can be time-consuming and error-prone for libraries. This Salesforce-based system was created to:
• Streamline the issuing and returning of books
• Automatically handle late returns and apply fines
• Send reminders to members before due dates
• Track librarian activity and member engagement
• Provide clear reports for better management decisions
How It Works
Step 1: Book Issue Process
• A record in Issue__c is created when a member borrows a book
• Includes: Book, Member, Issue Date, Due Date, Returned status
Step 2: Auto Fine on Late Return
• A Record-Triggered Flow runs when a book is returned (Returned__c = True)
• If Return_Date__c > Due_Date__c, a Fine__c is created
• Fine is calculated at ₹10 per late day
Step 3: Return Reminder Email
• A Scheduled Flow checks daily for books due in 2 days
• Sends a reminder email to the member to return the book
Step 4: Librarian Tracking
• Each Issue__c record is linked to a Librarian__c
• Picklist role (Admin, Assistant, Volunteer) helps track staff involvement
• Fine is auto-calculated, reducing manual errors
• Book return reminders improve return rate
• Easy tracking of book inventory and librarian roles
• Dashboards help management monitor library usage
• Automation saves time and increases efficiency
Standard and Custom Objects
We have customized the following standard objects in Salesforce:
• Contact
Below is the list of custom objects that we need to create in the system.
• Book
• Issue
• Fine
• Librians
Setup Custom and Standard Objects
Contact (Standard): Stores detailed customer information and helps associate support cases with real individuals.
We have customized the Contact object as follows:
Data Type | Field Name | Value | Precision |
---|---|---|---|
Text | First Name | NA | Customer’s first name |
Text | Last Name | NA | Customer’s last name |
NA | Primary email address for communication | ||
Phone | Phone | NA | Customer’s phone number |
Picklist | Salutation | Mr., Mrs., Ms., Dr. | Courtesy title used in formal communication |
Text | Account Name | NA | Company or organization associated (B2B only) |
Mailing Address | Mailing Address | NA | Customer’s complete address |
Lookup (User) | Owner | NA | Salesforce user responsible for managing the contact |
Date | Created Date | NA | Date the contact record was created |
Date | Last Modified Date | NA | Last time the contact details were updated |
Books (Custom): The Book object is created to represent individual books in the library. It stores key details like the title, author, genre, language, and availability status.
We have customized the Books object as follows:
Data Type | Field Name | Value | Precision |
---|---|---|---|
Text | Book Name | NA | Contain Books name. |
Text | Author | NA | Contain Author name. |
Picklist | Genre | e.g., Fiction, Education | Contain multiple genre values. |
Number | Quantity Available | NA | Currently available copies |
Number | Total Copies | NA | Total library stock |
Picklist | Language | Eng, Urdu, Hindi………. | Book language |
Issues (Custom): The Issue object tracks book issuance and returns between the library and members. Each record represents a single book being issued to a member by a librarian.
To record who issued what book, when it was issued, and when it’s due or returned, enabling fines, reminders, and librarian tracking.
We have customized the Issue object as follows:
Data Type | Field Name | Value | Precision |
---|---|---|---|
Auto No | Issue No. | NA | Contain Issue id. |
Lookup(contacts) | Member | NA | Member who borrowed |
Lookup(book) | Book | NA | Book being issued. |
Date | Issue Date | NA | Date of book issued |
Date | Return Due Date | NA | Expected return due_date |
Checkbox | Returned? | NA | Whether the book is returned |
Date | Return Date | NA | Actual Return date |
Fine (Custom): The Fine object is used to track penalties incurred when books are returned after their due date. It ensures financial accountability and encourages timely returns.
To automatically or manually apply a fine when a member returns a book late, and to record payment status for financial tracking.
We have customized the Fine object as follows:
Data Type | Field Name | Value | Precision |
---|---|---|---|
Auto Number | Fine ID | NA | Unique fine record. |
Lookup(issue) | Issue | NA | Associated issue |
Currency | Amount | NA | Fine amount |
Checkbox | Paid? | NA | Whether fine is paid |
Date | Date Issued | NA | Date fine was applied |
Librarian (Custom): The Librarian object is used to store information about library staff responsible for issuing, returning, and managing books. This allows tracking who handled specific operations in the system.
To manage staff roles and contact details and link them with book activities (e.g., issues or returns) for better tracking and accountability.
We have customized the Librarian object as follows:
Data Type | Field Name | Value | Precision |
---|---|---|---|
Text | Name | NA | Librarian’s full name |
NA | Librarians email id | ||
Phone | Phone | NA | Librarians Contact number |
Picklist | Role | NA | Admin, Assistant, Volunteer |
Date | Date Issued | NA | Date fine was applied |