Brightpearl API integration + php database

Awarded Posted Sep 14, 2012 Paid on delivery
Awarded Paid on delivery

We have a client who uses Brightpearl as their CRM and accounts package. ([url removed, login to view]). 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 ([url removed, login to view]) 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

MySQL PHP Software Architecture

Project ID: #2487340

About the project

5 proposals Remote project Active Sep 15, 2012

5 freelancers are bidding on average $577 for this job

kabirchy

Hi, I like to help you get this done. I can build this application in php and integrate API to meet your need. Thanks

$625 USD in 7 days
(1071 Reviews)
8.9
toinnisfree

pls chk pmb

$635 USD in 7 days
(739 Reviews)
8.3
TaurusTrend

Hi, plz check your mesage.

$300 USD in 3 days
(0 Reviews)
0.0
QQ48N9nJi

Custom software development (<b><i>Removed by Admin</i></b>)

$750 USD in 1 day
(0 Reviews)
0.0