n8n-nodes-aivencerealtycrm 2.0.4 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -1,56 +1,69 @@
|
|
|
1
|
-
# n8n-nodes-
|
|
1
|
+
# n8n-nodes-aivencerealtycrm
|
|
2
2
|
|
|
3
|
-
**Nodo n8n para AivenceRealty CRM
|
|
3
|
+
**Nodo comunitario n8n para AivenceRealty CRM inmobiliario.**
|
|
4
4
|
|
|
5
|
-
Este paquete añade nodos para interactuar con el CRM inmobiliario AivenceRealty. Permite operaciones completas sobre
|
|
5
|
+
Este paquete añade nodos para interactuar con el CRM inmobiliario AivenceRealty. Permite operaciones completas sobre propiedades, leads, inquilinos, órdenes de mantenimiento, contratistas, pagos, políticas de aprobación y más.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/n8n-nodes-aivencerealtycrm)
|
|
8
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
9
|
|
|
7
10
|
## 📦 Instalación
|
|
8
11
|
|
|
9
12
|
```bash
|
|
10
|
-
npm install n8n-nodes-
|
|
13
|
+
npm install n8n-nodes-aivencerealtycrm
|
|
11
14
|
```
|
|
12
15
|
|
|
13
|
-
O desde la interfaz de n8n: **Community Nodes → Install** y escribir `n8n-nodes-
|
|
16
|
+
O desde la interfaz de n8n: **Community Nodes → Install** y escribir `n8n-nodes-aivencerealtycrm`.
|
|
14
17
|
|
|
15
18
|
## 🔐 Configuración
|
|
16
19
|
|
|
17
20
|
1. Obtén un **Bearer Token** desde tu panel de AivenceRealty
|
|
18
21
|
2. En n8n, ve a **Credentials** y crea credenciales de tipo **AivenceRealty API**
|
|
19
22
|
3. Introduce:
|
|
20
|
-
- **URL Base**: `https://
|
|
23
|
+
- **URL Base**: La URL de tu instancia de AivenceRealty (ej: `https://tu-dominio.com`)
|
|
21
24
|
- **Bearer Token**: Tu token de API
|
|
22
25
|
4. Guarda las credenciales
|
|
23
26
|
|
|
24
|
-
## 📋 Recursos Disponibles
|
|
25
|
-
|
|
26
|
-
###
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
27
|
+
## 📋 Recursos y Operaciones Disponibles
|
|
28
|
+
|
|
29
|
+
### Tabla Completa de Operaciones (v2.3.0)
|
|
30
|
+
|
|
31
|
+
| Recurso | Operación | Descripción | Método | Endpoint |
|
|
32
|
+
|---------|-----------|-------------|--------|----------|
|
|
33
|
+
| **Property** | list | Listar todas las propiedades | GET | `/api/v1/properties` |
|
|
34
|
+
| | getSimilar | Obtener propiedades similares | POST | `/api/v1/properties/similar` |
|
|
35
|
+
| | getStatistics | Estadísticas de propiedades | GET | `/api/v1/properties/statistics` |
|
|
36
|
+
| **Lead** | list | Listar leads | GET | `/api/v1/leads` |
|
|
37
|
+
| | create | Crear nuevo lead | POST | `/api/v1/leads` |
|
|
38
|
+
| **Tenant** | list | Listar inquilinos | GET | `/api/v1/tenants` |
|
|
39
|
+
| | get | Obtener inquilino por ID | GET | `/api/v1/tenants/{id}` |
|
|
40
|
+
| | **validateExists** ⭐ | Validar si inquilino existe | GET | `/api/v1/tenants/{id}/exists` |
|
|
41
|
+
| **Maintenance Request** | checkDuplicate | Verificar orden duplicada | POST | `/api/v1/maintenance-requests/check-duplicate` |
|
|
42
|
+
| | create | Crear nueva orden | POST | `/api/v1/maintenance-requests` |
|
|
43
|
+
| | get | Obtener orden por ID | GET | `/api/v1/maintenance-requests/{id}` |
|
|
44
|
+
| | update | Actualizar orden | PUT | `/api/v1/maintenance-requests/{id}` |
|
|
45
|
+
| | list | Listar órdenes | GET | `/api/v1/maintenance-requests` |
|
|
46
|
+
| **Contractor** | findByCategory | Buscar por categoría | GET | `/api/v1/contractors/category/{category}` |
|
|
47
|
+
| | findAlternatives | Buscar contratistas alternativos | POST | `/api/v1/contractors/alternatives` |
|
|
48
|
+
| **Email** | send | Enviar email | POST | `/api/v1/emails/send` |
|
|
49
|
+
| **Appointment** | create | Crear cita | POST | `/api/v1/appointments` |
|
|
50
|
+
| | list | Listar citas | GET | `/api/v1/appointments` |
|
|
51
|
+
| | get | Obtener cita por ID | GET | `/api/v1/appointments/{id}` |
|
|
52
|
+
| | update | Actualizar cita | PUT | `/api/v1/appointments/{id}` |
|
|
53
|
+
| **Calculator** | calculate | Calcular hipoteca/gastos | POST | `/api/v1/calculator` |
|
|
54
|
+
| **Agent** | list | Listar agentes | GET | `/api/v1/agents` |
|
|
55
|
+
| | get | Obtener agente por ID | GET | `/api/v1/agents/{id}` |
|
|
56
|
+
| **Owner Expense** | create | Crear gasto de propietario | POST | `/api/v1/owner-expenses` |
|
|
57
|
+
| | list | Listar gastos | GET | `/api/v1/owner-expenses` |
|
|
58
|
+
| **Contractor Invoice** | create | Crear factura de contratista | POST | `/api/v1/contractor-invoices` |
|
|
59
|
+
| | list | Listar facturas | GET | `/api/v1/contractor-invoices` |
|
|
60
|
+
| | process | Procesar factura con OCR | POST | `/api/v1/contractor-invoices/process` |
|
|
61
|
+
| **Payment Proof** ⭐ | **process** ⭐ | Procesar comprobante de pago | POST | `/api/v1/payments/verify-proof` |
|
|
62
|
+
| **Automation** ⭐ | **logExecution** ⭐ | Registrar ejecución de workflow | POST | `/api/v1/automation/log` |
|
|
63
|
+
| **Policy** ⭐ | **evaluate** ⭐ | Evaluar política de aprobación | POST | `/api/v1/policies/evaluate` |
|
|
64
|
+
| **Notification** ⭐ | **send** ⭐ | Enviar notificación multi-canal | POST | `/api/v1/notifications/send` |
|
|
65
|
+
|
|
66
|
+
⭐ = **Nuevas operaciones en v2.3.0**
|
|
54
67
|
|
|
55
68
|
## 🎯 Ejemplos de Uso
|
|
56
69
|
|
|
@@ -62,6 +75,7 @@ O desde la interfaz de n8n: **Community Nodes → Install** y escribir `n8n-node
|
|
|
62
75
|
"operation": "create",
|
|
63
76
|
"nombre": "Juan Pérez",
|
|
64
77
|
"telefono": "5491112345678",
|
|
78
|
+
"email": "juan@example.com",
|
|
65
79
|
"mensaje": "Busco departamento 2 ambientes en Palermo"
|
|
66
80
|
}
|
|
67
81
|
```
|
|
@@ -70,7 +84,7 @@ O desde la interfaz de n8n: **Community Nodes → Install** y escribir `n8n-node
|
|
|
70
84
|
|
|
71
85
|
```json
|
|
72
86
|
{
|
|
73
|
-
"resource": "
|
|
87
|
+
"resource": "maintenanceRequest",
|
|
74
88
|
"operation": "create",
|
|
75
89
|
"clienteId": 123,
|
|
76
90
|
"propiedadId": 456,
|
|
@@ -78,10 +92,102 @@ O desde la interfaz de n8n: **Community Nodes → Install** y escribir `n8n-node
|
|
|
78
92
|
"categoria": "fontanería",
|
|
79
93
|
"urgencia": "alta",
|
|
80
94
|
"descripcionCorta": "Fuga de agua",
|
|
81
|
-
"descripcionDetallada": "Fuga en baño principal
|
|
95
|
+
"descripcionDetallada": "Fuga en baño principal que requiere atención inmediata"
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Validar Existencia de Inquilino (v2.3.0)
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"resource": "tenant",
|
|
104
|
+
"operation": "validateExists",
|
|
105
|
+
"tenantId": "123"
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### Procesar Comprobante de Pago (v2.3.0)
|
|
110
|
+
|
|
111
|
+
```json
|
|
112
|
+
{
|
|
113
|
+
"resource": "paymentProof",
|
|
114
|
+
"operation": "process",
|
|
115
|
+
"ppTenantId": "123",
|
|
116
|
+
"ppOcrData": {
|
|
117
|
+
"amount": 45000,
|
|
118
|
+
"date": "2026-01-26",
|
|
119
|
+
"reference": "REF123"
|
|
120
|
+
},
|
|
121
|
+
"ppFileUrl": "https://storage.ejemplo.com/comprobante.pdf"
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### Registrar Ejecución de Workflow (v2.3.0)
|
|
126
|
+
|
|
127
|
+
```json
|
|
128
|
+
{
|
|
129
|
+
"resource": "automation",
|
|
130
|
+
"operation": "logExecution",
|
|
131
|
+
"autoWorkflowName": "ProcessPaymentProof",
|
|
132
|
+
"autoExecutionId": "exec_123456",
|
|
133
|
+
"autoStatus": "success",
|
|
134
|
+
"autoDocumentType": "payment_proof",
|
|
135
|
+
"autoMetadata": {
|
|
136
|
+
"tenant_id": 123,
|
|
137
|
+
"amount": 45000,
|
|
138
|
+
"processing_time_ms": 1523
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Evaluar Política de Aprobación (v2.3.0)
|
|
144
|
+
|
|
145
|
+
```json
|
|
146
|
+
{
|
|
147
|
+
"resource": "policy",
|
|
148
|
+
"operation": "evaluate",
|
|
149
|
+
"policyType": "payment_proof",
|
|
150
|
+
"policyAmount": 45000,
|
|
151
|
+
"policyDocumentData": {
|
|
152
|
+
"amount": 45000,
|
|
153
|
+
"date": "2026-01-26",
|
|
154
|
+
"tenant_id": 123,
|
|
155
|
+
"lease_amount": 50000
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Respuesta de ejemplo:
|
|
161
|
+
```json
|
|
162
|
+
{
|
|
163
|
+
"approved": true,
|
|
164
|
+
"auto_approve": false,
|
|
165
|
+
"requires_review": true,
|
|
166
|
+
"reason": "Monto mayor a 50% del alquiler",
|
|
167
|
+
"approval_level": "manager"
|
|
82
168
|
}
|
|
83
169
|
```
|
|
84
170
|
|
|
171
|
+
### Enviar Notificación Multi-Canal (v2.3.0)
|
|
172
|
+
|
|
173
|
+
```json
|
|
174
|
+
{
|
|
175
|
+
"resource": "notification",
|
|
176
|
+
"operation": "send",
|
|
177
|
+
"notifRecipientType": "tenant",
|
|
178
|
+
"notifRecipientId": "123",
|
|
179
|
+
"notifChannel": "whatsapp",
|
|
180
|
+
"notifTemplateKey": "payment_received",
|
|
181
|
+
"notifVariables": {
|
|
182
|
+
"amount": 45000,
|
|
183
|
+
"property_address": "Av. Corrientes 1234",
|
|
184
|
+
"payment_date": "26/01/2026"
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
Canales disponibles: `database` (in-app), `whatsapp`, `email`
|
|
190
|
+
|
|
85
191
|
## 🔧 Desarrollo Local
|
|
86
192
|
|
|
87
193
|
```bash
|
|
@@ -92,13 +198,13 @@ cd n8n-nodes-aivence-realty
|
|
|
92
198
|
# Instalar dependencias
|
|
93
199
|
npm install
|
|
94
200
|
|
|
95
|
-
# Compilar
|
|
201
|
+
# Compilar TypeScript
|
|
96
202
|
npm run build
|
|
97
203
|
|
|
98
|
-
# Vincular localmente
|
|
204
|
+
# Vincular localmente para testing
|
|
99
205
|
npm link
|
|
100
|
-
cd ~/.n8n
|
|
101
|
-
npm link n8n-nodes-
|
|
206
|
+
cd ~/.n8n/custom
|
|
207
|
+
npm link n8n-nodes-aivencerealtycrm
|
|
102
208
|
|
|
103
209
|
# Iniciar n8n
|
|
104
210
|
n8n start
|
|
@@ -106,22 +212,80 @@ n8n start
|
|
|
106
212
|
|
|
107
213
|
## 📝 Changelog
|
|
108
214
|
|
|
215
|
+
### v2.3.0 (2026-01-26) - Automation & Policies
|
|
216
|
+
- ⭐ **NUEVO:** Recurso `Payment Proof` con operación `process` para procesamiento automatizado de comprobantes de pago con OCR
|
|
217
|
+
- ⭐ **NUEVO:** Recurso `Automation` con operación `logExecution` para registro centralizado de ejecuciones de workflows
|
|
218
|
+
- ⭐ **NUEVO:** Recurso `Policy` con operación `evaluate` para evaluación automática de políticas de aprobación
|
|
219
|
+
- ⭐ **NUEVO:** Recurso `Notification` con operación `send` para notificaciones multi-canal (database/whatsapp/email)
|
|
220
|
+
- ⭐ **NUEVO:** Operación `validateExists` en recurso `Tenant` para validación rápida de existencia
|
|
221
|
+
- ✅ 16 recursos totales
|
|
222
|
+
- ✅ 40+ operaciones totales
|
|
223
|
+
- ✅ Soporte completo para flujos de automatización con IA
|
|
224
|
+
|
|
225
|
+
### v2.2.0 (2026-01-20)
|
|
226
|
+
- ✅ Agregados recursos: Agent, Appointment, Calculator, OwnerExpense, ContractorInvoice
|
|
227
|
+
- ✅ Operaciones de procesamiento de facturas con OCR
|
|
228
|
+
- ✅ Sistema de cálculos hipotecarios
|
|
229
|
+
|
|
230
|
+
### v2.1.0 (2025-12-15)
|
|
231
|
+
- ✅ Agregado recurso Email
|
|
232
|
+
- ✅ Mejoras en MaintenanceRequest
|
|
233
|
+
- ✅ Validación mejorada de campos
|
|
234
|
+
|
|
235
|
+
### v2.0.0 (2025-11-10)
|
|
236
|
+
- ✅ Refactorización completa de la arquitectura
|
|
237
|
+
- ✅ Mejoras de performance
|
|
238
|
+
- ✅ Tipos TypeScript mejorados
|
|
239
|
+
|
|
109
240
|
### v0.1.0 (2025-10-09)
|
|
110
241
|
- 🎉 Versión inicial
|
|
111
242
|
- ✅ 7 recursos implementados
|
|
112
243
|
- ✅ 15 operaciones totales
|
|
113
244
|
- ✅ Integración completa con API Laravel
|
|
114
245
|
|
|
246
|
+
## 🎓 Características Destacadas de v2.3.0
|
|
247
|
+
|
|
248
|
+
### 🤖 Automatización Inteligente
|
|
249
|
+
- **Procesamiento OCR:** Extrae datos de comprobantes de pago y facturas automáticamente
|
|
250
|
+
- **Políticas Configurables:** Evalúa reglas de negocio sin código hardcoded
|
|
251
|
+
- **Logging Centralizado:** Rastrea todas las ejecuciones de workflows desde N8N
|
|
252
|
+
|
|
253
|
+
### 🔔 Notificaciones Multi-Canal
|
|
254
|
+
- **Database:** Notificaciones in-app para el CRM
|
|
255
|
+
- **WhatsApp:** Mensajes instantáneos vía Evolution API
|
|
256
|
+
- **Email:** Notificaciones por correo electrónico
|
|
257
|
+
- **Templates Dinámicos:** Variables reemplazables por template
|
|
258
|
+
|
|
259
|
+
### 🛡️ Validación y Seguridad
|
|
260
|
+
- Validación de existencia de entidades antes de operar
|
|
261
|
+
- Políticas de aprobación automáticas por tipo de documento y monto
|
|
262
|
+
- Trazabilidad completa de operaciones automatizadas
|
|
263
|
+
|
|
264
|
+
## 🔗 Workflows N8N Recomendados
|
|
265
|
+
|
|
266
|
+
Los siguientes workflows están optimizados para usar el nodo comunitario:
|
|
267
|
+
|
|
268
|
+
1. **ProcessPaymentProof** - Procesamiento de comprobantes de pago con OCR → Policy → Notification
|
|
269
|
+
2. **ProcessContractorInvoice** - Procesamiento de facturas de contratistas con OCR → Policy → Automation Log
|
|
270
|
+
3. **ProcessOwnerExpense** - Procesamiento de gastos de propietarios → Policy → Notification
|
|
271
|
+
4. **Router Central** - Routing inteligente de documentos según tipo detectado por IA
|
|
272
|
+
|
|
115
273
|
## 📄 Licencia
|
|
116
274
|
|
|
117
275
|
MIT
|
|
118
276
|
|
|
119
277
|
## 👨💻 Autor
|
|
120
278
|
|
|
121
|
-
**Federico Aivence**
|
|
279
|
+
**Federico Aivence**
|
|
122
280
|
|
|
123
281
|
## 🔗 Links
|
|
124
282
|
|
|
125
|
-
- [AivenceRealty CRM](https://realty.aivence.com)
|
|
126
283
|
- [Repositorio GitHub](https://github.com/aivence/n8n-nodes-aivence-realty)
|
|
284
|
+
- [npm Package](https://www.npmjs.com/package/n8n-nodes-aivencerealtycrm)
|
|
127
285
|
- [Reportar Issues](https://github.com/aivence/n8n-nodes-aivence-realty/issues)
|
|
286
|
+
|
|
287
|
+
## 🆘 Soporte
|
|
288
|
+
|
|
289
|
+
Para soporte técnico o consultas:
|
|
290
|
+
- 🐛 Issues: [GitHub Issues](https://github.com/aivence/n8n-nodes-aivence-realty/issues)
|
|
291
|
+
- 📖 Documentación: Ver ejemplos en este README
|