{"id":21301253,"url":"https://github.com/adrianomonteiroweb/api-nodejs-sequelize-cashforce","last_synced_at":"2026-04-11T00:45:00.994Z","repository":{"id":109833540,"uuid":"581340269","full_name":"adrianomonteiroweb/api-nodejs-sequelize-cashforce","owner":"adrianomonteiroweb","description":"API NODEJS E SEQUELIZE - CASHFORCE","archived":false,"fork":false,"pushed_at":"2023-01-22T00:11:49.000Z","size":261,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-22T08:12:38.034Z","etag":null,"topics":["expressjs","frisby","integration-testing","jest","nodejs","sequelize","typescript","vuejs"],"latest_commit_sha":null,"homepage":"https://api-nodejs-sequelize-server.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adrianomonteiroweb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-22T23:04:23.000Z","updated_at":"2024-10-16T21:26:45.000Z","dependencies_parsed_at":"2023-05-26T21:00:14.247Z","dependency_job_id":null,"html_url":"https://github.com/adrianomonteiroweb/api-nodejs-sequelize-cashforce","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adrianomonteiroweb","download_url":"https://codeload.github.com/adrianomonteiroweb/api-nodejs-sequelize-cashforce/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243772020,"owners_count":20345566,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","frisby","integration-testing","jest","nodejs","sequelize","typescript","vuejs"],"created_at":"2024-11-21T15:44:48.566Z","updated_at":"2025-12-31T00:21:31.023Z","avatar_url":"https://github.com/adrianomonteiroweb.png","language":"TypeScript","readme":"# API NODEJS E SEQUELIZE - CASHFORCE\n\nApplication with API in Express.js, Node.js and Sequelize ORM using MariaDB as driver. In addition to its front-end in Vue.js, based on the design proposed in Figma, for API consumption and display of invoice data related to Buyers organized in a table.\n\n#\n\n### HOW TO RUN THE APPLICATION\n\n- yarn\n  - This project uses the yarn package manager and therefore it is necessary to install the dependency packages with the following command:\n\n```bash\nyarn install\n```\n\n- BACK-END\n\n  - .env\n\n    - Use the .env.example file to locally configure the server, as well as database and other settings.\n\n  - api\n\n    - To run the server locally, just run the following command. It will use nodemon and ts-node packages.\n\n    ```bash\n      yarn dev:api\n    ```\n\n    - To run the server in production/build, run the following command:\n\n    ```bash\n      yarn start:api\n    ```\n\n    - To run all tests, run the following command:\n\n    ```bash\n      yarn test:api\n    ```\n\n- FRONT-END\n\n  - To run the frontend, run the command:\n\n  ```bash\n    yarn serve:web\n  ```\n\n#\n\n### ROUTES - Possible routes in this application.\n\n#### GET\n\n- Invoices - Method \"GET\" - route: \"/invoices\".\n- Buyers - Method \"GET\" - route: \"/buyers\".\n- CNPJs - Method \"GET\" - route: \"/cnpjs\".\n- Offers - Method \"GET\" - route: \"/offers\".\n- Orders - Method \"GET\" - route: \"/orders\".\n- Orderportions - Method \"GET\" - route: \"/orderportions\".\n- Providers - Method \"GET\" - route: \"/providers\".\n- Sponsors - Method \"GET\" - route: \"/sponsors\".\n- Users - Method \"GET\" - route: \"/users\".\n\n#### POST\n\n- Buyers - Method \"POST\" - route: \"/buyers\".\n\n  - To create a new buyer, it must also contain the following attributes for buyer: cnpj and company type too.\n\n  Ex:\n\n  ```json\n  {\n    \"name\": \"SACADO 004\",\n    \"tradingName\": \"SACADO 004 LTDA\",\n    \"cashforceTax\": \"0\",\n    \"responsibleName\": \"\",\n    \"responsibleEmail\": \"\",\n    \"responsiblePosition\": \"\",\n    \"responsiblePhone\": \"\",\n    \"responsibleMobile\": \"\",\n    \"website\": \"\",\n    \"postalCode\": \"\",\n    \"address\": \"\",\n    \"number\": \"\",\n    \"complement\": \"\",\n    \"neighborhood\": \"\",\n    \"city\": \"\",\n    \"state\": \"\",\n    \"phoneNumber\": \"\",\n    \"situation\": \"\",\n    \"situationDate\": \"\",\n    \"confirm\": 4,\n    \"email\": \"\",\n    \"cnpj\": \"00000000000010\",\n    \"companyType\": \"1\"\n  }\n  ```\n\n- CNPJs - Method \"POST\" - route: \"/cnpjs\".\n\n  - To create a new CNPJ, it must also contain the following attributes: cnpj and company type.\n\n  Ex:\n\n  ```json\n  {\n    \"cnpj\": \"00000000000001\",\n    \"companyType\": \"1\"\n  }\n  ```\n\n- Users - Method \"POST\" - route: \"/users\".\n\n  - To create a new user, it must also contain the following attributes:\n\n  Ex:\n\n  ```json\n  {\n    \"name\": \"user 1\",\n    \"email\": \"user1@email.com\",\n    \"phoneNumber\": \"\",\n    \"mobile\": \"\",\n    \"departament\": \"\",\n    \"verificationCode\": \"\",\n    \"emailChecked\": 0,\n    \"cashforceAdm\": 0\n  }\n  ```\n\n- Sponsors - Method \"POST\" - route: \"/sponsors\".\n\n  - To create a new Sponsor, it must also contain the following attributes for Sponsor: cnpj and company type too.\n\n  Ex:\n\n  ```json\n  {\n    \"name\": \"Sponsor 1\",\n    \"tradingName\": \"\",\n    \"cashforceTax\": \"\",\n    \"responsibleName\": \"\",\n    \"responsibleEmail\": \"\",\n    \"responsiblePosition\": \"\",\n    \"responsiblePhone\": \"\",\n    \"responsibleMobile\": \"\",\n    \"website\": \"\",\n    \"postalCode\": \"\",\n    \"address\": \"\",\n    \"number\": \"\",\n    \"complement\": \"\",\n    \"neighborhood\": \"\",\n    \"city\": \"\",\n    \"state\": \"\",\n    \"bank\": \"\",\n    \"bankAgency\": \"\",\n    \"account\": \"\",\n    \"phoneNumber\": \"\",\n    \"situation\": \"\",\n    \"situationDate\": \"\",\n    \"email\": \"\",\n    \"cnpj\": \"00000000000011\",\n    \"companyType\": \"1\"\n  }\n  ```\n\n- Providers - Method \"POST\" - route: \"/providers\".\n\n  - To create a new Provider, it must also contain the following attributes for Provider: cnpj and company type too.\n\n  Ex:\n\n  ```json\n  {\n    \"name\": \"Sponsor 2\",\n    \"tradingName\": \"PROVIDER 001 LTDA\",\n    \"cashforceTax\": \"\",\n    \"responsibleName\": \"\",\n    \"responsibleEmail\": \"\",\n    \"responsiblePosition\": \"\",\n    \"responsiblePhone\": \"\",\n    \"responsibleMobile\": \"\",\n    \"website\": \"\",\n    \"postalCode\": \"\",\n    \"address\": \"\",\n    \"number\": \"\",\n    \"complement\": \"\",\n    \"neighborhood\": \"\",\n    \"city\": \"\",\n    \"state\": \"\",\n    \"bank\": \"\",\n    \"bankAgency\": \"\",\n    \"account\": \"\",\n    \"documents\": \"\",\n    \"phoneNumber\": \"\",\n    \"situation\": \"\",\n    \"situationDate\": \"\",\n    \"email\": \"\",\n    \"cnpj\": \"00000000000011\",\n    \"companyType\": \"1\"\n  }\n  ```\n\n- Orders - Method \"POST\" - route: \"/orders\".\n\n  - To create a new Order, it must also contain the following attributes for Order: cnpj, userEmail, buyerEmail and providerEmail too.\n\n  Ex:\n\n  ```json\n  {\n    \"orderNfId\": \"1605181324131\",\n    \"orderNumber\": \"18150\",\n    \"orderPath\": \"0\",\n    \"orderFileName\": \"\",\n    \"orderOriginalName\": \"\",\n    \"emissionDate\": \"\",\n    \"pdfFile\": \"\",\n    \"emitedTo\": \"22843980000121\",\n    \"nNf\": \"\",\n    \"CTE\": \"\",\n    \"value\": \"\",\n    \"cnpj\": \"00000000000010\",\n    \"userEmail\": \"user1@email.com\",\n    \"buyerEmail\": \"buyer1@email.com\",\n    \"providerEmail\": \"provider1@email.com\",\n    \"orderStatusBuyer\": \"\",\n    \"orderStatusProvider\": \"\",\n    \"deliveryReceipt\": \"\",\n    \"cargoPackingList\": \"\",\n    \"deliveryCtrc\": \"\"\n  }\n  ```\n\n- Users - Method \"POST\" - route: \"/users\".\n\n  - To create a new User, it must also contain the following attributes:\n\n  Ex:\n\n  ```json\n  {\n    \"name\": \"user 1\",\n    \"email\": \"user1@email.com\",\n    \"phoneNumber\": \"\",\n    \"mobile\": \"\",\n    \"departament\": \"\",\n    \"verificationCode\": \"\",\n    \"emailChecked\": 0,\n    \"cashforceAdm\": 0\n  }\n  ```\n\n### TECHNOLOGIES\n\n- Package Manager:\n\n  - Yarn;\n  - Yarn Workspaces;\n\n- Web:\n\n  - Vue.js;\n  - Axios;\n  - Typescript;\n\n- API:\n  - Express.js;\n  - Cors;\n  - Dotenv;\n  - Sequelize;\n  - Driver: mariadb;\n  - Jest;\n  - Frisby;\n  - Ts-node;\n  - Nodemon;\n  - Typescript;\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianomonteiroweb%2Fapi-nodejs-sequelize-cashforce/lists"}