007fbfbfb7
* Create QuickBooks Connector Single DocType * Create interface for user authorization and obtaining authorization code * Obtain Access token using authorization code * Fetch a random customer * Schedule fetching as a background job * Save fetched customer * Fetch all customers, take care of pagination * Save fetched customers * Create a custom field for storing Quickbooks ID * Don't save already saved customers * Commit every successful insert * No need of allow_guest=True * Fetch Items as well * Store Customer Addresses as well. * Remove redundant custom field creation code * Stupid refactoring * Some more refactoring * Fetch and Save Suppliers as well * Save accounts. Really a hack as of now. * Fetch and save invoices, Take care of child items as well * Fetch Taxes as well * Set currency on Sales Invoice * Correctly Link Items, Handle markups * Don't enqueue, Need to wait forever for testing sometimes * Set margin rate correctly * Correct fieldname is tax_amount not amount * Fetch with maximum possible batch size * Don't print unnecessary info * Fetch Journal Entries * Fetch Purchase Invoices (Bill) * Don't perform reauthentication if you already have an access_token * Don't need those print statements anymore * Refresh access_token if request fails * Fetch Payment Entry(Payment) * Map QB items to ERPNext rather than other way around * Don't need a huge comment block as of now * Fetch Payment Entries against Purchase Invoices (BillPayment) * Rename Quickbooks Connector to Migrator * Make oauth settings configurable * Make company configurable * Make default accounts configurable * Fetch accounts and other masters separately * Show realtime progress * Check if entries exist before attempting insert * Suppress other annoying messages * Tracebacks are good for health * Don't want rounded total * Don't call fetch after authorization (Need to somehow separate these) * Make credit_to account payable * When generating payment entry mention bank_account as well * Cleanup * Add custom buttons and reflect current state in form ui * Show necessary fields on form depending on the current state * Cleanup * Minor fixes * Set income and expense account on items. * Set currency for Account. * Stupid VSCode * Remove redundant code * Check for existing Payment and BillPayment correctly * Cache API response for faster development * Don't maintain stock for now, Seems to solve the issue with 'Stock Received but not billed' * Cleanup * Add methods to remove inserted data completely (Development) * Don't commit in every iteration * Set account head based on TaxRate in Sales Invoice * Fetch and cache TaxCode * Add methods to fetch TaxCode and TaxRate from cache * Set item wise tax breakup, Don't use Actual Tax * Use both TaxRateLists * Set Itemwise tax on Purchase Invoice as well * Set bank_amount, while creating payment entries * Remove print statements * Add Shipping in taxes child table of Sales Invoice * Set posting date on Payment Entries against Invoices * Fetch and save expenses as Journal Entries * Fetch and save Deposits as Journal Entries * Fetch and Save Credit and Debit Notes * Fetch and save SalesReceipt * Record Shipping as Item instead of Tax * Minor Fixes * Fetch Advance Payments * Set account_type during Account creation * Choose receivable account in Invoice based on currency * Remove receivable_account field * Account type is already set during account creation * Set receivable account based on currency in Sales Receipt and Credit Memo * Set receivable account on Customer * Save Company Preferences * Set shipping_account based on company preferences * Set cost center in Sales Invoice Items and Taxes * Make Account name unique in case of duplicate account name * Fetch and Save TaxPayment as Journal Entry * Record UndepositedFunds Account in cache if found * Credit UndepositedFunds account when mentioned in Deposit * Debit Cashback account as well if mentioned in Deposit * Set currency conversion rate * Set is_group field correctly for accounts * Preserve account hierarchy * Use quickbooks_id and company together for filtering * Make new custom field 'company' on Supplier Customer and Item * Use comapny field for filtering Customer, Item, Supplier * Shipping Account is only available if shipping is enabled for comapny * Invoice might not have TxnTaxDetail.TaxLine * Lookup TaxRate account correctly * TaxCode might not have SalesTaxRateList PurchaseTaxRateList or Both * TaxCode might not have SalesTaxRateList and PurchaseTaxRateList * Remove unnecessary UI elements * Allow multiple companies to have customers with same name * Refactor account_type * Create a leaf an account for every group account * Item and Tax list creation needs more information * Supports discount in Invoice * Save Invoice as Journal Entry when itemwise details are unavailable * Credit=True represents a refund rather than charge * Mode of Payment not synced, setting as Cash for now * Tax code may also be set for an entire invoice * Fetch General Ledger Report correctly * Refactor fetching entries from General Ledger Report * Tax Payment is the same as Sales Tax Payment and Purchase Tax Payment * append_number_if_name_exists is stupid, Reimplementing * Don't guess credit/debit for Tax Payment and Advanced Payment * Bill Payment shouldn't assume full payment * Save Payment as Journal Entry * Make Client ID and Client Secret Default * Remove unused python imports * removed are_accounts_synced() * Don't store translated values in database * Endpoints as a field * Major refactor - functions to methods * Major Refactor Functions to Methods * Major Refactor Fix Stuff * Minor Changes * Save Refund As well * Minor Refactor (SI varations to SI, PI variations to PI) * Record Inventory Qty Adjust Entries * QBM Final Touches * Make changes suggested in review |
||
---|---|---|
.github | ||
erpnext | ||
test_sites | ||
travis | ||
.eslintrc | ||
.gitignore | ||
.travis.yml | ||
attributions.md | ||
CODE_OF_CONDUCT.md | ||
license.txt | ||
MANIFEST.in | ||
package-lock.json | ||
README.md | ||
requirements.txt | ||
setup.py | ||
sponsors.md |
Includes: Accounting, Inventory, Manufacturing, CRM, Sales, Purchase, Project Management, HRMS. Requires MariaDB.
ERPNext is built on the Frappe Framework, a full-stack web app framework in Python & JavaScript.
Full Install
The Easy Way: our install script for bench will install all dependencies (e.g. MariaDB). See https://github.com/frappe/bench for more details.
New passwords will be created for the ERPNext "Administrator" user, the MariaDB root user, and the frappe user (the script displays the passwords and saves them to ~/frappe_passwords.txt).
Virtual Image
You can download a virtual image to run ERPNext in a virtual machine on your local system.
System and user credentials are listed on the download page.
License
GNU/General Public License (see license.txt)
The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappe Technologies Pvt Ltd (Frappe) and Contributors.
Contributing
- Issue Guidelines
- Report Security Vulnerabilities
- Pull Request Requirements
- Translations
- Chart of Accounts
Logo and Trademark
The brand name ERPNext and the logo are trademarks of Frappe Technologies Pvt. Ltd.
Introduction
Frappe Technologies Pvt. Ltd. (Frappe) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:
- We’d like to make it easy for anyone to use the ERPNext name or logo for community-oriented efforts that help spread and improve ERPNext.
- We’d like to make it clear how ERPNext-related businesses and projects can (and cannot) use the ERPNext name and logo.
- We’d like to make it hard for anyone to use the ERPNext name and logo to unfairly profit from, trick or confuse people who are looking for official ERPNext resources.
Frappe Trademark Usage Policy
Permission from Frappe is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.
We will grant permission to use the ERPNext name and logo for projects that meet the following criteria:
- The primary purpose of your project is to promote the spread and improvement of the ERPNext software.
- Your project is non-commercial in nature (it can make money to cover its costs or contribute to non-profit entities, but it cannot be run as a for-profit project or business). Your project neither promotes nor is associated with entities that currently fail to comply with the GPL license under which ERPNext is distributed.
- If your project meets these criteria, you will be permitted to use the ERPNext name and logo to promote your project in any way you see fit with one exception: Please do not use ERPNext as part of a domain name.
Use of the ERPNext name and logo is additionally allowed in the following situations:
All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappe Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”
Similarly, it’s OK to use the ERPNext logo as part of a page that describes your products or services, but it is not OK to use it as part of your company or product logo or branding itself. Under no circumstances is it permitted to use ERPNext as part of a top-level domain name.
We do not allow the use of the trademark in advertising, including AdSense/AdWords.
Please note that it is not the goal of this policy to limit commercial activity around ERPNext. We encourage ERPNext-based businesses, and we would love to see hundreds of them.
When in doubt about your use of the ERPNext name or logo, please contact Frappe Technologies for clarification.
(inspired by WordPress)