Simple php / MySQL web based database integrating with BrightPearl CRM RESTful API
- or -
Post a project like this4109
£500(approx. $622)
- Posted:
- Proposals: 15
- Remote
- #200706
- Awarded
Creative Website Design & Developement specialising in bespoke online solutions
City of London
WordPress Expert | Landing & Sales Page Expert | Front-end & Back-end Expert | Responsive Web Design & Development
Mumbai
Expert in PHP, Wordpress, Joomla, Magento, Code Igniter, Cake PHP, Opencart, Prestashop, Shopify & Mobile Apps!!!
Rajkot
WordPress, Magento, joomla Website disciplined and creative Developer [Taking on new Projects]
London
CodeIgniter / Wordpress / HTML5 / CSS3 / JQuery / PHP / My SQL/ NodeJS/ Redis/ MongoDB
Hanoi
58975100222109731142925198949269189299963339054373480379625382257383451
Description
Experience Level: Expert
We have a client who uses Brightpearl as their CRM and accounts package. (http://www.brightpearl.com/). They use it to manage their customers, and all their invoices.
Brightpearl does not have a facility to send automatic invoices on a regular basis. Our client needs to be able to automatically send invoices to clients on a monthly, quarterly or yearly basis.
We would like to build:-
1) A web based database to log a list of automated invoices that need to be created
2) A script which will use the BrightPearl API (http://www.brightpearl.com/developer/latest/) to create and send the invoices based on information in the web based database we build
So we would like to build a solution based on the following spec:-
Web based database (php / mySQL)
============================
Here is an example of the database structure:-
tblAutomatedInvoices
- nAutomatedInvoice_ID - primary key
- nClientID (the client ID in BrightPearl)
- sClientName (the name of the client - taken from Brightpearl)
- sDescription (description of the project being invoiced for)
- sFrequency (monthly, quarterly, six monthly or yearly)
- nAmount (the amount to invoice the customer)
- sCurrency (the 3 digit currency code - eg USD, GBP, EUR etc)
- nNextInvoiceDate (the date of the next invoice - date in YYYYMMDD format)
- nLastInvoiceDate (date last invoice was sent - if applicable - date in YYYYMMDD format)
- bChargeVAT (bit field - charge vat - yes/no)
- sEmail (email address for invoice to be sent to)
tblAutomatedInvoiceLog
- nAutomatedInvoiceLog_ID (primary key)
- nAutomatedInvoice_ID (foreign key)
- nDate (date in YYYYMMDD format)
- sTime (time in HH:MM:SS format)
- sFrequency (from tblAutomatedInvoices)
- nAmount (from tblAutomatedInvoices)
- sCurrency (from tblAutomatedInvoices)
- bChargeVAT (from tblAutomatedInvoices)
- sEmail (from tblAutomatedInvoices)
The web based database will allow you to:-
1) Add records to tblAutomatedInvoices (with facility to select which customer from BrightPearl using API)
2) Edit records
3) Remove records
4) View a log of invoices created (from tblAutomatedInvoiceLog)
Python or php script
==================
This script can be written in either python or php. It will be scheduled as a cron job on a daily basis.
It will:-
1) Check tblAutomatedInvoices to see if there are any invoices that need to be created today (by finding records where nNextInvoiceDate is today)
2) For each matching record that is found it will:-
a) Use the BrightPearl API to create the invoice
b) Download the invoice information and save in a PDF
c) Email the customer with the invoice
d) Insert a record in tblAutomatedInvoiceLog
e) Update nLastInvoiceDate in tblAutomatedInvoices to the current date
f) Update nNextInvoiceDate in tblAutomatedInvoices to the date when the next invoice should be sent
Brightpearl does not have a facility to send automatic invoices on a regular basis. Our client needs to be able to automatically send invoices to clients on a monthly, quarterly or yearly basis.
We would like to build:-
1) A web based database to log a list of automated invoices that need to be created
2) A script which will use the BrightPearl API (http://www.brightpearl.com/developer/latest/) to create and send the invoices based on information in the web based database we build
So we would like to build a solution based on the following spec:-
Web based database (php / mySQL)
============================
Here is an example of the database structure:-
tblAutomatedInvoices
- nAutomatedInvoice_ID - primary key
- nClientID (the client ID in BrightPearl)
- sClientName (the name of the client - taken from Brightpearl)
- sDescription (description of the project being invoiced for)
- sFrequency (monthly, quarterly, six monthly or yearly)
- nAmount (the amount to invoice the customer)
- sCurrency (the 3 digit currency code - eg USD, GBP, EUR etc)
- nNextInvoiceDate (the date of the next invoice - date in YYYYMMDD format)
- nLastInvoiceDate (date last invoice was sent - if applicable - date in YYYYMMDD format)
- bChargeVAT (bit field - charge vat - yes/no)
- sEmail (email address for invoice to be sent to)
tblAutomatedInvoiceLog
- nAutomatedInvoiceLog_ID (primary key)
- nAutomatedInvoice_ID (foreign key)
- nDate (date in YYYYMMDD format)
- sTime (time in HH:MM:SS format)
- sFrequency (from tblAutomatedInvoices)
- nAmount (from tblAutomatedInvoices)
- sCurrency (from tblAutomatedInvoices)
- bChargeVAT (from tblAutomatedInvoices)
- sEmail (from tblAutomatedInvoices)
The web based database will allow you to:-
1) Add records to tblAutomatedInvoices (with facility to select which customer from BrightPearl using API)
2) Edit records
3) Remove records
4) View a log of invoices created (from tblAutomatedInvoiceLog)
Python or php script
==================
This script can be written in either python or php. It will be scheduled as a cron job on a daily basis.
It will:-
1) Check tblAutomatedInvoices to see if there are any invoices that need to be created today (by finding records where nNextInvoiceDate is today)
2) For each matching record that is found it will:-
a) Use the BrightPearl API to create the invoice
b) Download the invoice information and save in a PDF
c) Email the customer with the invoice
d) Insert a record in tblAutomatedInvoiceLog
e) Update nLastInvoiceDate in tblAutomatedInvoices to the current date
f) Update nNextInvoiceDate in tblAutomatedInvoices to the date when the next invoice should be sent
Rob W.
96% (5)Projects Completed
5
Freelancers worked with
5
Projects awarded
46%
Last project
3 May 2013
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies