from config.config import * import sys import json import xmlrpc.client array = sys.argv[1] data = json.loads(array) common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url)) uid = common.authenticate(db, username, password, {}) if uid: models = xmlrpc.client.ServerProxy('{}/xmlrpc/2/object'.format(url)) partners_id = models.execute_kw(db, uid, password, 'res.partner', 'search', [[]]) # print(json.dumps(partners_id)) invoice_vals = [] for partner in data: invoice_val = { 'name': partner['name'], 'partner_id': partner['partners_id'], 'invoice_date': partner['invoice_date'], 'ref': 'create from api', 'move_type': 'out_invoice', } invoice_lines = [] for product in partner['invoice_line_ids']: invoice_lines.append((0,0, { 'product_id': product['product_id'], 'quantity': product['quantity'], })) invoice_val.update({'invoice_line_ids': invoice_lines}) invoice_vals.append(invoice_val) print(invoice_vals) invoice_id = models.execute_kw(db, uid, password, 'account.move', 'create', [invoice_vals]) print(invoice_id)