- TypeScript
- Node.js
- Express
- Axios
- Lodash
- xml2js
- Mongoose
- Typegoose
- MongoDB Atlas
- dotenv
- Get all deals with status as Won on Pipedrive CRM
- Generate a XML file with xml2js to sent to Bling! ERP
- Send all new deals to Bling! ERP as an order (Pedido)
- Consolidate all total values them per date
GET /orders
Query params: none
Return: object
/**
*
* retorno: original return from Bling! API
*
**/
{
retorno: Object
}
GET /deals
Query params: none
Return: object
/**
*
* message: friendly messsage informing what route did
* existentDeals: deals already sent to the MongoDB
* newDeals: deals received from Pipedrive API
*
**/
{
message: String,
existentDeals: Array<Object>,
newDeals: Array<Object>,
}
GET /consolidate
Query params: none
Return: array of objects
/**
*
* id: deals dates
* total: sum of deals per date
*
**/
[
{
_id: String,
total: Number,
}
]
- Git this repository;
- Configure a .env file based on .env.example file;
- Run
yarn dev
- Create deals as Won on Pipedrive CRM panel;
- Go to
localhost:3333/deals
route to get them; - Go to
localhost:3333/consolidate
to get the consolidate total value per day; - If you want to see all orders already on Bling just run
localhost:3333/orders