← All projects

Business application · ERP integration

A custom CRM connected to SAP

Customer records, sales follow-up and ERP data in one workspace.

  • PHP
  • MySQL
  • Microsoft SQL Server
  • SQLSRV
  • JavaScript
  • jQuery
  • Bootstrap
  • DataTables
  • PHPMailer
  • XLSX / ZipArchive
Concept illustration: a database feeds a customer record connected to a calendar, documents and a warehouse.

The starting point

A business with a sales team, product catalogue and inventory management needs to connect customer follow-up with document and product information in its ERP.

The challenge

Maintain continuity in customer follow-up and make sales information accessible without rebuilding the context for every enquiry. Data also needs to be retained over time to study changes in stock and sales.

The solution

A custom web application combines customer records, visits, tasks, opportunities, quotes and sales enquiries. Import processes from SAP Business One populate the CRM’s MySQL database. The actual update frequency depends on how these processes are scheduled.

Who it is for

The interface caters for sales representatives, team leads, sales management and administrators, with filtering by profile. Some price-list enquiries also provide a customer view.

From problem to functionality

01

Customer context

Need
Prepare a conversation when information is scattered
How it works
A customer record with access to visits, tasks, quotes, invoices and outstanding deliveries
What it brings
Makes it easier to recover the context before contacting a customer
02

Visits and tasks

Need
Maintain continuity in sales follow-up
How it works
Visit records and lists of pending, future, completed and cancelled tasks
What it brings
Helps organise next steps and review recorded activity
03

Opportunities and quotes

Need
Understand the status of each sales activity
How it works
Lists by sales representative, status filters and a history of changes to quotes
What it brings
Makes open items and their follow-up easier to review
04

ERP data in the CRM

Need
Look up customers, products and commercial terms in the working tool
How it works
Schedulable data imports from SAP Business One to MySQL, with separate invoicing processes
What it brings
Can reduce the need to gather information manually across tools
05

Historical data for analysis

Need
Study stock and sales over time
How it works
Daily stock records by warehouse and monthly sales aggregates, with storage and queries
What it brings
Provides historical data for analysis; it does not imply a complete dashboard
06

Stock enquiries and export for a specific price list

Need
Identify ageing stock and share the details
How it works
A breakdown by inventory receipt, ageing indicators and XLSX export for one specific price list
What it brings
Makes stock easier to review and its details available in a spreadsheet

Business benefits

  • More context available when preparing sales activity.
  • Customer follow-up and sales activities in the same application.
  • ERP data that can be reused for enquiries and analysis.

Connected systems

SAP Business One provides commercial data through SQL Server. Import processes bring it into MySQL for the CRM to query. Google Maps and Places support maps and visit records, while PHPMailer handles email delivery.

Technical decisions

The project uses PHP with domain classes and server-rendered pages, alongside JavaScript, jQuery, Bootstrap and DataTables in the interface. CRM data is stored in MySQL, while the SQLSRV driver provides access to SAP data. Synchronisation processes are separate from the screens; in the reviewed price-list flow, user enquiries read local data. For stock and sales history, unique keys and updates to existing records prevent an extra row from accumulating on each rerun of the same period. Order submission includes a submission token and a subsequent redirect to handle form resubmission; this is not a general guarantee against all duplication.

Project scope

The CRM brings together sales follow-up and queries over imported SAP data. Stock and sales history support analysis over time. Information is refreshed through schedulable import processes.

Related services

Let’s talk about your CRM

Do you need to connect sales follow-up with your ERP? Tell me how your team works and what information you need at hand.

Contact