Skip to content

TRANSCEND IAM + Pay + Profiles con Contasol / A3

Lo que conecta

Los datos de TRANSCEND Platform (IAM usuarios, Pay facturación, Profiles empresas) se exportan a Contasol/A3 mediante CSV estructurados para su contabilización y gestión de maestros.

Datos que fluyen

Módulo TRANSCENDDatoContasol / A3Para qué
IAMUsuarios, rolesFichas de empleadoControl de accesos y roles
PayFacturas, pagosAsientos contablesContabilizar ingresos/gastos
ProfilesEmpresas, datos fiscalesMaestro de clientesSincronizar datos fiscales

Exportar facturas de Pay a Contasol

python
import csv, requests
from datetime import date

TOKEN = "tu_token_transcend"
hoy = date.today()

# Facturas del mes desde TRANSCEND Pay
facturas = requests.get(
    "https://back.transcend.cargoffer.com/pay/api/invoices",
    headers={"Authorization": f"Bearer {TOKEN}"}
).json()

with open(f"asientos_transcend_{hoy}.csv", "w", newline="", encoding="utf-8") as f:
    writer = csv.writer(f, delimiter=";")
    writer.writerow(["Diario", "Fecha", "Cuenta", "Debe", "Haber", "Concepto", "Cliente"])

    for inv in facturas:
        writer.writerow([
            "VT",  # Diario de ventas
            inv.get("date", str(hoy))[:10],
            "70500001",  # Ingresos por suscripciones
            inv.get("total", 0),
            "",
            inv.get("description", "Suscripción TRANSCEND"),
            inv.get("companyId", "")
        ])
        writer.writerow([
            "VT",
            inv.get("date", str(hoy))[:10],
            "57200001",  # Banco / contrapartida
            "",
            inv.get("total", 0),
            "Contrapartida suscripción TRANSCEND",
            inv.get("companyId", "")
        ])

Exportar perfiles de empresa (Profiles) a Contasol

python
def exportar_perfiles_contasol():
    empresas = requests.get(
        "https://back.transcend.cargoffer.com/profiles/api/companies",
        headers={"Authorization": f"Bearer {TOKEN}"}
    ).json()

    with open(f"clientes_transcend_{hoy}.csv", "w", newline="", encoding="utf-8") as f:
        writer = csv.writer(f, delimiter=";")
        writer.writerow(["Código", "Nombre", "NIF", "Dirección", "Población", "Teléfono", "Email"])

        for e in empresas:
            writer.writerow([
                e.get("id", ""),
                e.get("legalName", e.get("displayName", "")),
                e.get("taxId", ""),
                e.get("address", {}).get("street", ""),
                e.get("address", {}).get("city", ""),
                e.get("phone", ""),
                e.get("email", "")
            ])

Importar en Contasol

Para asientos contables: Utilidades -> Importar -> Asientos -> Seleccionar CSV -> Asignar columnas -> Ejecutar

Para maestro de clientes: Maestros -> Clientes -> Importar -> CSV -> Mapear campos -> Aceptar

Automatización

bash
# Exportación automática cada lunes a las 7:00
0 7 * * 1 cd /scripts && python exportar_transcend_contasol.py

Documentación relacionada

Documentación de Cargoffer