TRANSCEND IAM + Pay con Odoo: Usuarios y pagos sincronizados
Sincronizar usuarios (IAM -> Odoo)
python
import requests, xmlrpc.client
TOKEN=*** = "https://tu-odoo.com"
def sincronizar_usuarios_transcend():
"""Crea usuarios en Odoo a partir de los usuarios de TRANSCEND."""
usuarios = requests.get(
"https://back.transcend.cargoffer.com/iam/users",
headers={"Authorization": f"Bearer {TOKEN}"}
).json()
for u in usuarios:
# Crear usuario en Odoo
partner_id = models.execute_kw("db", 1, "pass",
"res.partner", "create", [{
"name": u.get("displayName", u["email"]),
"email": u["email"],
"is_company": False
}])
# Asignar permisos segun rol de TRANSCEND
if u.get("role") == "admin":
models.execute_kw("db", 1, "pass",
"res.users", "create", [{
"partner_id": partner_id,
"login": u["email"],
"groups_id": [(6, 0, [1])] # Grupo Admin
}])Sincronizar facturas de pago (Pay -> Odoo)
python
def sincronizar_facturas_pago():
facturas = requests.get(
"https://back.transcend.cargoffer.com/account/invoices",
headers={"Authorization": f"Bearer {TOKEN}"}
).json()
for f in facturas:
# Crear factura de proveedor en Odoo
models.execute_kw("db", 1, "pass",
"account.move", "create", [{
"move_type": "in_invoice",
"partner_id": partner_transcend,
"invoice_date": f["date"],
"amount_total": f["total"]
}])