Funciones
Las funciones en Zoho Books le permiten escribir pequeñas piezas de código para automatizar sus procesos de negocio. Ya sea que desee ofrecer un descuento especial en la factura de su cliente o agregar una tarifa por mora cuando una factura se vence, puede escribir el código con un script de Deluge y vincularlo a una regla de flujo de trabajo. El proceso se automatiza entonces para usted.
Escenario: Supongamos que desea agregar una tarifa por mora a cada factura que se vence. En lugar de editar cada factura manualmente, puede escribir una función con un script de Deluge que calcule la tarifa por mora y la agregue a la factura. Luego asocia esta función con una regla de flujo de trabajo que se activa cuando una factura se vence, de modo que la tarifa por mora se aplica automáticamente.
¿Qué es Deluge?
Deluge (lenguaje enriquecido de datos para el entorno universal de la red, por sus siglas en inglés) es un lenguaje de scripting en línea integrado con Zoho Creator. Permite a los usuarios agregar lógica a la aplicación, de forma gradual, haciéndola más potente y robusta.
Para obtener más información sobre Deluge, consulte la Guía de referencia de Deluge.
Para aprender Deluge escribiendo muestras de código, consulte la guía de muestras de código de Deluge.
Crear una función
Para crear una función:
- Vaya a Configuración en la esquina superior derecha de la página.
- Seleccione Acciones de flujo de trabajo en Automatización.
- En el panel Acciones de flujo de trabajo, seleccione Funciones.
- Haga clic en + Nueva función en la esquina superior derecha.

- En la página Nueva función:
- Introduzca un Nombre para su función y proporcione una pequeña Descripción.
- Elija el Módulo para el que desea crear la función.
- Elija el Lenguaje de programación en el que desea escribir el código de la función.
- Si eligió Deluge como lenguaje de programación, haga clic en Continuar y escriba o arrastre los parámetros al editor de Deluge.
- Si eligió un lenguaje de programación distinto de Deluge, debe introducir el código de la función usando la CLI de Zoho Finance. Puede usar métodos de contexto para interactuar con funciones de la plataforma como registros, almacenamiento en caché, colas, almacenamiento de archivos, ejecución programada y conectores de terceros.

- Una vez hecho esto, haga clic en Guardar.
Estado de ejecución personalizado
Cuando se ejecuta una función personalizada, el script puede devolver un código de estado que explica lo que ocurrió durante la ejecución. Esto ayuda al administrador y al usuario a entender por qué un flujo de trabajo se ejecutó, se bloqueó o se ejecutó parcialmente.
Para ver o definir estos códigos, haga clic en Estado de ejecución personalizado en el encabezado del editor de Deluge. Se admiten los siguientes códigos de estado:
| Código | Significado |
|---|---|
| 1000 | Correcto. La función se ejecutó y el flujo de trabajo continúa. |
| 1001 | Error. La función se ejecutó, pero el flujo de trabajo se considera fallido. |
| 1002 | Cancelado. La acción de flujo de trabajo fue cancelada por la función. |
| 1003 | Entrada no válida. Una o más entradas de la función no fueron válidas. |
| 1004 | Validación fallida. Una validación de negocio dentro de la función no pasó. |
| 1005 | Error de servicio externo. Una llamada a un servicio externo no se realizó correctamente. |
| 1006 | Permiso denegado. La función no tiene el permiso requerido para completar la acción. |
| 1007 | Registro no encontrado. No se pudo localizar el registro al que hace referencia la función. |
| 1008 | Límite excedido. Se alcanzó un límite configurado, como el uso de la API o de los componentes de Deluge. |
| 1009 | Error desconocido. La función falló por una razón no contemplada por los otros códigos. |
Nota: Para usar los códigos de estado de ejecución personalizado, su función debe devolver un mapa que incluya un código de estado y un mensaje opcional. El mensaje devuelto se muestra al usuario cuando el flujo de trabajo se bloquea o falla.
Ver el uso de los componentes de Deluge
Las funciones personalizadas se construyen usando componentes de Deluge, y cada componente tiene un límite de uso diario establecido por Zoho Books. Para comprobar cuánto ha usado su organización de cada componente hasta ahora, haga clic en Ver el uso de los componentes de Deluge en el encabezado del editor de Deluge.
El panel Uso de los componentes de Deluge (por día) enumera cada componente con sus recuentos de Total, Usado y Restante del día actual. Los componentes que se rastrean son:
| Componente | Descripción |
|---|---|
| invoke_url_api | Número de llamadas invokeurl realizadas desde sus funciones personalizadas a API externas. |
| webhook | Número de llamadas de webhook activadas desde sus funciones personalizadas. |
| Número de correos electrónicos enviados desde sus funciones personalizadas usando la tarea sendmail. |
Conexiones
Las Conexiones le permiten autenticar las llamadas de su script de Deluge a servicios de Zoho y aplicaciones de terceros sin almacenar credenciales dentro del script. Para gestionar las conexiones usadas por sus funciones personalizadas, haga clic en Conexiones en el encabezado del editor de Deluge. Puede crear nuevas conexiones, editar las existentes y usarlas dentro de su script con la sintaxis estándar de conexión de Deluge.
Asociar funciones con reglas de flujo de trabajo
Las funciones que cree deben asociarse con reglas de flujo de trabajo para que se activen automáticamente cuando se cumplan las condiciones requeridas. Para asociar funciones con reglas de flujo de trabajo:
- Vaya a Configuración.
- Seleccione Reglas de flujo de trabajo en Automatización.
- Haga clic en + Nueva regla de flujo de trabajo en la esquina superior derecha.
- Introduzca los detalles necesarios. Consulte Reglas de flujo de trabajo.
- En Acciones, elija Funciones como Tipo y seleccione la función que desea asociar con la regla de flujo de trabajo.
- Haga clic en Guardar.
Ahora, cada vez que se cumpla el criterio, se activará la regla de flujo de trabajo, lo que a su vez activará la función.
Campos predeterminados
Por ahora, las funciones admiten los módulos de Usuarios, Organización, Cotizaciones, Facturas, Órdenes de venta, Órdenes de compra, Clientes, Facturas recurrentes, Gastos, Facturas de proveedor, Facturas de proveedor recurrentes y Artículos.
Estos módulos tendrán los siguientes campos desde los que puede obtener los parámetros necesarios para su función.
Usuario
El campo de usuario admite los siguientes parámetros:
| Campos clave | Descripción |
|---|---|
| name | Nombre del usuario |
| zuid | ZUID del usuario |
Organización
El mapa de organización admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| organization_id | ID de su organización |
| name | Nombre de la organización |
| time_zone | Zona horaria de su organización |
| language_code | Idioma de la organización |
| date_format | Formato de fecha de su organización |
| currency_id | ID de moneda |
| currency_code | Código de moneda |
| currency_symbol | Símbolo de moneda |
| address | Dirección de la organización |
| phone | Número de contacto de la organización |
| fax | Número de fax |
| website | URL de la organización |
| Dirección de correo electrónico | |
| portal_name | Nombre del portal de su organización |
Mapa de muestra:
{
"time_zone": "Asia/Calcutta",
"language_code": "en",
"currency_id": "7605000000000099",
"phone": "99999999999",
"fax": "check",
"website": "",
"email": "charles@zylker.com",
"address": {
"zip": "624001",
"country": "India",
"city": "New Delhi",
"street_address2": "Block 15",
"street_address1": "6/35 Garden Lane,",
"state": "Delhi"
},
"organization_id": "12345678",
"name": "Zlyker Industries",
"date_format": "dd MMM yyyy",
"currency_symbol": "Rs.",
"portal_name": "zylkerindustry",
"currency_code": "INR"
}
Cotización
El mapa de cotización admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| quote_id | ID de cotización |
| quote_number | Su número de cotización |
| date | Fecha de la cotización |
| reference_number | Número de referencia de su cotización |
| status | Estado de su cotización |
| customer_id | ID del cliente asignado a la cotización |
| customer_name | Nombre de su cliente |
| currency_id | ID de moneda |
| currency_code | Código de moneda |
| currency_symbol | Símbolo de moneda |
| exchange_rate | Tipo de cambio involucrado en la cotización |
| expiry_date | Fecha de caducidad de la cotización |
| discount_amount | Importe del descuento |
| discount | Descuento |
| shipping_charge | Gastos de envío introducidos en la cotización |
| adjustment | Ajustes |
| sub_total | Subtotal de la cotización |
| total | Total de la cotización |
| tax_total | Importe total del impuesto en la cotización |
| billing_address | Dirección de facturación del cliente |
| shipping_address | Dirección de envío del cliente |
| notes | Notas |
| terms | Términos y condiciones |
| custom_fields | Campos personalizados de la cotización |
| salesperson_id | ID del vendedor |
| salesperson_name | Nombre del vendedor |
Mapa de muestra:
{
"total": "12000.0",
"terms": “checking",
"quote_id": "7605000000320001",
"date": "2016-06-03",
"quote_number": "EST-000026",
"shipping_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": “Fax Number”
},
"salesperson_name": “Salesperson”,
"adjustment": "0.0",
"currency_symbol": "Rs.",
"salesperson_id": "7605000000336089",
"currency_code": "INR",
"shipping_charge": "0.0",
"custom_fields": [
{
"customfield_id": "7605000000190011",
"is_active": true,
"show_in_all_pdf": false,
"value_formatted": "Check-6",
"data_type": "autonumber",
"index": 1,
"label": "auto number",
"show_on_pdf": false,
"value": "Check-6"
}
],
"currency_id": "7605000000000099",
"exchange_rate": "1.0",
"status": "invoiced",
"sub_total": "12000.0",
"customer_name": “Customer”,
"discount_amount": "0.0",
"discount": "0.0",
"tax_total": "0.0",
"reference_number": “Ref number”,
"notes": "Looking forward for your business.",
"expiry_date": "2016-06-03",
"customer_id": "7605000000258011",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
}
}
Factura
El mapa de factura admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| due_date | Fecha de vencimiento de la factura |
| payment_expected_date | Fecha de pago prevista para la factura |
| reference_number | Número de referencia de la factura |
| customer_id | ID del cliente |
| customer_name | Nombre del cliente asignado a la factura |
| currency_id | ID de moneda |
| currency_code | Código de moneda |
| currency_symbol | Símbolo de moneda |
| exchange_rate | Tipo de cambio involucrado en la factura |
| discount_amount | Importe de descuento involucrado en la factura |
| discount | Descuento involucrado en la factura |
| shipping_charge | Gastos de envío introducidos en la factura |
| adjustment | Ajustes |
| sub_total | Subtotal de la factura |
| tax_total | Importe total del impuesto en la factura |
| total | Importe total |
| balance | Saldo |
| price_precision | Número de lugares decimales |
| billing_address | Dirección de facturación del cliente |
| shipping_address | Dirección de envío del cliente |
| notes | Notas |
| terms | Términos y condiciones |
| custom_fields | Campos personalizados de la factura |
| salesperson_id | ID del vendedor |
Mapa de muestra:
{
"total": "0.0",
"payment_terms": "0",
"terms": “Checking”,
"price_precision": "2",
"payment_expected_date": "2016-06-31”,
"date": "2016-06-30",
"shipping_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"balance": "0.0",
"adjustment": "0.0",
"currency_symbol": "Rs.",
"salesperson_id": “7605000000336089”,
"currency_code": "INR",
"shipping_charge": "0.0",
"custom_fields": [
{
"customfield_id": "7605000000336081",
"is_active": true,
"show_in_all_pdf": false,
"value_formatted": "INV-8",
"data_type": "autonumber",
"index": 1,
"label": "AutoNumber",
"show_on_pdf": false,
"value": "INV-8"
},
{
"customfield_id": "7605000000351027",
"is_active": true,
"show_in_all_pdf": true,
"value_formatted": "01 Aug 2016",
"data_type": "date",
"index": 2,
"label": "Date",
"show_on_pdf": true,
"value": "2016-08-01"
}
],
"currency_id": "7605000000000099",
"exchange_rate": "1.0",
"status": "draft",
"sub_total": "12000.0",
"customer_name": “Customer”,
"invoice_number": "INV-000087",
"discount_amount": "12000.0",
"discount": "100.00%",
"tax_total": "0.0",
"reference_number": “checking”,
"due_date": "2016-06-30",
"invoice_id": "7605000000369043",
"notes": "Thanks for your business.",
"customer_id": "7605000000258011",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
}
}
Orden de venta
| Campos clave | Descripción |
|---|---|
| date | Fecha de la orden de venta |
| tax_total | Importe total del impuesto en la orden de venta |
| zcrm_potential_id | ID del potencial en Zoho CRM |
| discount_amount | Importe de descuento involucrado en la orden de venta |
| salesorder_id | ID de la orden de venta |
| discount | Descuento |
| shipment_date | Fecha en la que se realiza el envío |
| billing_address | Dirección de facturación del cliente |
| line_items | Artículos de línea |
| currency_code | Código de moneda |
| total | Importe total |
| delivery_method_id | ID del método de entrega |
| terms | Términos y condiciones |
| delivery_method | Método de entrega |
| shipping_address | Dirección de envío del cliente |
| exchange_rate | Tipo de cambio involucrado en la orden de venta |
| currency_symbol | Símbolo de moneda |
| custom_fields | Campos personalizados de la orden de venta |
| quote_id | ID de cotización |
| reference_number | Número de referencia de la orden de venta |
| salesperson_name | Nombre del vendedor involucrado |
| salesperson_id | ID del vendedor involucrado |
| shipping_charge | Gastos de envío introducidos en la orden de venta |
| salesorder_number | Su número de orden de venta |
| sub_total | Subtotal de la orden de venta |
| zcrm_potential_name | Nombre del potencial en Zoho CRM |
| adjustment | Ajustes realizados |
| customer_name | Nombre del cliente asignado a la orden de venta |
| customer_id | ID del cliente asignado a la orden de venta |
| currency_id | ID de moneda |
| status | Estado de su orden de venta |
Mapa de muestra:
{
"date": "2016-05-23",
"tax_total": "0.0",
"zcrm_potential_id": "",
"discount_amount": "1200.0",
"salesorder_id": "7605000000295003",
"discount": "10.00%",
"shipment_date": "2016-05-23",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"line_items": [
{
"bcy_rate": 12000,
"line_item_id": "7605000000295011",
"quantity": 1,
"item_id": "7605000000259147",
"tax_name": "",
"description": "",
"discount": 0,
"item_total": 12000,
"item_custom_fields": [
],
"tax_id": "",
"is_invoiced": true,
"item_order": 0,
"tags": [
],
"stock_on_hand": "",
"unit": "",
"rate": 12000,
"tax_type": "tax",
"name": "Moto",
"tax_percentage": 0
}
],
"currency_code": "INR",
"total": "10820.0",
"delivery_method_id": "7605000000461053",
"terms": "Terms & Conditions",
"delivery_method": "Door Delivery",
"shipping_address": {
"zip": "",
"country": "",
"address": "",
"city": "",
"state": "",
"fax": ""
},
"exchange_rate": "1.0",
"currency_symbol": "Rs.",
"custom_fields": [
{
"customfield_id": "7605000000321009",
"is_active": true,
"show_in_all_pdf": true,
"value_formatted": "Text",
"data_type": "string",
"index": 1,
"label": "Text",
"show_on_pdf": true,
"value": "Text"
}
],
"quote_id": "7605000000405047",
"reference_number": "Reference",
"salesperson_name": "Arun",
"salesperson_id": "7605000000135003",
"shipping_charge": "10.0",
"salesorder_number": "SO-00002",
"sub_total": "12000.0",
"zcrm_potential_name": "",
"adjustment": "10.0",
"customer_name": "Arun",
"customer_id": "7605000000101007",
"currency_id": "7605000000000099",
"status": "invoiced"
}
Orden de compra
El mapa de orden de compra admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| date | Fecha de la orden de compra |
| delivery_address | Dirección de entrega |
| tax_total | Importe total del impuesto en la orden de compra |
| delivery_org_address_id | ID de la dirección de la organización de entrega |
| purchaseorder_id | ID de la orden de compra |
| expected_delivery_date | Fecha de entrega prevista |
| billing_address | Dirección de facturación de la orden de compra |
| line_items | Artículos de línea en la orden de compra |
| currency_code | Código de moneda |
| total | Total de la orden de compra |
| delivery_customer_id | ID del cliente de entrega |
| exchange_rate | Tipo de cambio involucrado en la orden de compra |
| currency_symbol | Símbolo de moneda |
| custom_fields | Campos personalizados de la orden de compra |
| ship_via_id | ID del modo de envío |
| vendor_name | Nombre del proveedor |
| reference_number | Número de referencia de su orden de compra |
| purchaseorder_number | Número de la orden de compra |
| delivery_date | Fecha de entrega |
| vendor_id | ID del proveedor |
| sub_total | Subtotal de la orden de compra |
| ship_via | Medio de envío |
| attention | Atención |
| crm_owner_id | ID del propietario de Zoho CRM |
| currency_id | ID de moneda |
| status | Estado |
Mapa de muestra:
{
"date": "2016-07-11",
"delivery_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"tax_total": "0.0",
"delivery_org_address_id": "7605000000054013",
"purchaseorder_id": "7605000000378500",
"expected_delivery_date": "",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"line_items": [
{
"bcy_rate": 1000,
"line_item_id": "7605000000378504",
"quantity": 1,
"item_id": "7605000000298021",
"tax_name": "",
"description": "",
"item_total": 1000,
"tax_id": "",
"item_order": 0,
"tags": [
],
"unit": "No",
"account_id": "7605000000000403",
"rate": 1000,
"tax_type": "tax",
"account_name": "Advertising And Marketing",
"name": "Moto G Turbo Edition",
"tax_percentage": 0
}
],
"currency_code": "INR",
"total": "1000.0",
"delivery_customer_id": "",
"exchange_rate": "1.0",
"currency_symbol": "Rs.",
"custom_fields": "[]",
"ship_via_id": "7605000000461053",
"vendor_name": "Mr. Vendor",
"reference_number": "Reference",
"purchaseorder_number": "PO-00006",
"delivery_date": "2016-07-11",
"vendor_id": "7605000000112009",
"sub_total": "1000.0",
"ship_via": "Door Delivery",
"attention": "Arun",
"crm_owner_id": "",
"currency_id": "7605000000000099",
"status": "billed"
}
Cliente
El mapa de cliente admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| owner_id | ID del propietario asociado |
| billing_address | Dirección de facturación asociada al cliente |
| source | Fuente del cliente |
| contact_id | ID de contacto |
| payment_terms | Condiciones de pago asociadas al cliente |
| currency_code | Código de moneda |
| language_code | Código de idioma |
| contact_type | Tipo de contacto |
| Información de Twitter | |
| zcrm_contact_id | ID del contacto en Zoho CRM |
| shipping_address | Dirección de envío asociada al cliente |
| pricebook_id | ID del libro de precios asociado |
| contact_name | Nombre del contacto |
| website | Sitio web del contacto |
| owner_name | Nombre del propietario del contacto |
| currency_symbol | Símbolo de moneda |
| zcrm_account_id | ID de la cuenta de Zoho CRM |
| custom_fields | Campos personalizados asociados al cliente |
| Información de Facebook | |
| pricebook_name | Nombre del libro de precios asociado |
| primary_contact_id | ID del contacto primario |
| company_name | Nombre de la empresa |
| contact_salutation | Saludo del contacto |
| crm_owner_id | ID del propietario de CRM |
| currency_id | ID de moneda |
| payment_terms_label | Etiqueta de condiciones de pago |
| status | Estado |
Mapa de muestra:
{
"owner_id": "",
"shipping_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"source": "user",
"contact_id": "7605000000197147",
"payment_terms": "0",
"currency_code": "INR",
"language_code": "en",
"contact_type": "customer",
"twitter": "",
"zcrm_contact_id": "",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Number"
},
"pricebook_id": "",
"contact_name": "Arun",
"website": "www.zoho.com",
"owner_name": "",
"currency_symbol": "Rs.",
"zcrm_account_id": "418070000000135001",
"custom_fields": [
{
"customfield_id": "7605000000063049",
"is_active": true,
"show_in_all_pdf": false,
"value_formatted": "1234",
"data_type": "number",
"index": 1,
"label": "Unpaid Invoices",
"show_on_pdf": false,
"value": "1234"
}
],
"facebook": "",
"pricebook_name": "",
"primary_contact_id": "7605000000197149",
"company_name": "Zoho",
"contact_salutation": "",
"crm_owner_id": "",
"currency_id": "7605000000000099",
"payment_terms_label": "Due on Receipt",
"status": "active"
}
Factura recurrente
El mapa de factura recurrente admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| end_date | Fecha de finalización del perfil de factura recurrente |
| tax_total | Importe total del impuesto en la factura recurrente |
| discount_amount | Importe de descuento involucrado en la factura recurrente |
| repeat_every | Período de repetición del perfil de factura recurrente |
| discount | Descuento involucrado en la factura recurrente |
| taxes | Impuestos asociados a la factura recurrente |
| billing_address | Dirección de facturación del cliente |
| line_items | Artículos de línea en la factura recurrente |
| payment_terms | Condiciones de pago asociadas al cliente |
| currency_code | Código de moneda |
| last_sent_date | Fecha de la última factura enviada |
| total | Importe total |
| recurrence_name | Nombre del perfil de factura recurrente |
| shipping_address | Dirección de envío del cliente |
| next_invoice_date | Fecha de la próxima factura que se enviará |
| recurrence_frequency | Frecuencia del perfil de factura recurrente |
| recurring_invoice_id | ID del perfil de factura recurrente |
| contact_persons | Personas de contacto involucradas en la factura recurrente |
| start_date | Fecha de inicio del perfil de factura recurrente |
| exchange_rate | Tipo de cambio involucrado en la factura recurrente |
| currency_symbol | Símbolo de moneda |
| custom_fields | Campos personalizados de la factura recurrente |
| salesperson_name | Nombre del vendedor involucrado |
| salesperson_id | ID del vendedor involucrado |
| shipping_charge | Gastos de envío introducidos en la factura recurrente |
| sub_total | Subtotal de la factura recurrente |
| adjustment | Ajustes realizados |
| customer_name | Nombre del cliente involucrado |
| customer_id | ID del cliente involucrado |
| status | Estado del perfil de factura recurrente |
Mapa de muestra:
{
"end_date": "2016-10-15",
"tax_total": "0.0",
"discount_amount": "1.0",
"repeat_every": "2",
"discount": "1.00%",
"taxes": "[]",
"billing_address": {"zip":"","fax":"","address":"","state":"","country":"","city":""},
"line_items": [{"tags":[],"tax_name":"","tax_type":"tax","item_custom_fields":[],"product_type":"service","line_item_id":"348960000000103013","discount":0,"unit":"","item_order":0,"rate":100,"item_id":"","description":"%(d)%-%(m-2)%-%(y)%","name":"","quantity":1,"tax_id":"","tax_percentage":0,"item_total":100}],
"payment_terms": "0",
"currency_code": "GBP",
"last_sent_date": "",
"total": "200.0",
"recurrence_name": "1",
"shipping_address": {"zip":"","fax":"","address":"","state":"","country":"","city":""},
"next_invoice_date": "",
"recurrence_frequency": "months",
"recurring_invoice_id": "348960000000103005",
"contact_persons": "[]",
"start_date": "2016-01-07",
"exchange_rate": "1.0",
"currency_symbol": "£",
"custom_fields": [{"value_formatted":"EST-001","index":1,"is_active":true,"data_type":"string","show_on_pdf":false,"value":"EST-001","show_in_all_pdf":false,"label":"Quote Number","customfield_id":"348960000000056001"},{"value_formatted":"15 Oct 2016","index":2,"is_active":true,"data_type":"date","show_on_pdf":false,"value":"2016-10-15","show_in_all_pdf":false,"label":"Date","customfield_id":"348960000000056003"},{"value_formatted":"true","index":3,"is_active":true,"data_type":"check_box","show_on_pdf":false,"value":true,"show_in_all_pdf":false,"label":"Invoice Factoring","customfield_id":"348960000000056079"},{"value_formatted":"£100.00","index":4,"is_active":true,"data_type":"amount","show_on_pdf":true,"value":100,"show_in_all_pdf":true,"label":"Amount","customfield_id":"348960000000060003"},{"value_formatted":"10%","index":5,"is_active":true,"data_type":"percent","show_on_pdf":true,"value":10,"show_in_all_pdf":true,"label":"Percentage","customfield_id":"348960000000060005"}],
"salesperson_name": "Arun N",
"salesperson_id": "348960000000111001",
"shipping_charge": "100.0",
"sub_total": "100.0",
"adjustment": "1.0",
"customer_name": "iArun",
"customer_id": "348960000000051041",
"status": "expired"
}
Gasto
El mapa de gasto admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| date | Fecha |
| payment_mode | Modo de pago |
| custom_fields | Campos personalizados del gasto |
| vendor_name | Nombre del proveedor involucrado |
| is_billable | Facturabilidad del gasto |
| line_items | Artículos de línea en el gasto |
| project_name | Nombre del proyecto involucrado |
| reference_number | Número de referencia del gasto |
| currency_code | Código de moneda |
| total | Total |
| project_id | ID del proyecto involucrado |
| vendor_id | ID del proveedor involucrado |
| sub_total | Subtotal del gasto |
| customer_name | Nombre del cliente involucrado |
| customer_id | ID del cliente involucrado |
| expense_id | ID del gasto |
| currency_id | ID de moneda |
Mapa de muestra:
{
"date": "2016-10-08",
"payment_mode": "Cash",
"custom_fields": "[]",
"vendor_name": "Vendor",
"is_billable": "true",
"line_items": [{"tags":[],"tax_name":"Standard Rate","item_order":1,"tax_type":"tax","account_id":"348960000000000400","description":"Notes","tax_amount":16.67,"product_type":"goods","tax_id":"348960000000044037","line_item_id":"348960000000184015","tax_percentage":20,"item_total":83.33,"account_name":"Office Supplies"}],
"project_name": "",
"reference_number": "12345",
"currency_code": "GBP",
"total": "100.0",
"project_id": "",
"vendor_id": "348960000000051033",
"sub_total": "83.33",
"customer_name": "Accounts",
"customer_id": "348960000000111017",
"expense_id": "348960000000184003",
"currency_id": "348960000000000103"
}
Factura de proveedor
El mapa de factura de proveedor admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| date | Fecha de la factura de proveedor |
| bill_id | ID de la factura de proveedor |
| purchaseorder_ids | ID de la orden de compra involucrada |
| tax_total | Importe total del impuesto en la factura de proveedor |
| exchange_rate | Tipo de cambio involucrado en la factura de proveedor |
| currency_symbol | Símbolo de moneda |
| custom_fields | Campos personalizados de la factura de proveedor |
| due_date | Fecha de vencimiento de la factura de proveedor |
| vendor_name | Nombre del proveedor involucrado |
| billing_address | Dirección de facturación |
| line_items | Artículos de línea en la factura de proveedor |
| payment_terms | Condiciones de pago asociadas al proveedor |
| payment_expected_date | Fecha de pago prevista |
| reference_number | Número de referencia de la factura de proveedor |
| currency_code | Código de moneda |
| total | Total de la factura de proveedor |
| bill_number | Número de la factura de proveedor |
| payment_made | Pago realizado por la factura de proveedor |
| balance | Importe del saldo |
| recurring_bill_id | ID del perfil de factura de proveedor recurrente |
| vendor_id | ID del proveedor involucrado |
| sub_total | Subtotal de la factura de proveedor |
| status | Estado de la factura de proveedor |
Mapa de muestra:
{
"date": "2016-10-12",
"bill_id": "348960000000193039",
"purchaseorder_ids": "[]",
"tax_total": "0.0",
"exchange_rate": "1.0",
"currency_symbol": "£",
"custom_fields": "[]",
"due_date": "2016-10-15",
"vendor_name": "Vendor",
"billing_address": {"zip":"","fax":"","address":"","state":"","country":"","city":""},
"line_items": [{"tags":[],"tax_name":"","project_name":"","tax_type":"tax","account_id":"348960000000000412","customer_name":"","is_billable":false,"product_type":"goods","line_item_id":"348960000000193047","invoice_number":"","sku":"","purchaseorder_item_id":"","account_name":"Credit Card Charges","unit":"1","item_order":0,"rate":33000,"bcy_rate":33000,"item_id":"348960000000087031","description":"","project_id":"","name":"refrigerator","tax_id":"","quantity":1,"invoice_id":"","tax_percentage":0,"customer_id":"","item_total":33000}],
"payment_terms": "3",
"payment_expected_date": "",
"reference_number": "1",
"currency_code": "GBP",
"total": "33000.0",
"bill_number": "Bill-001",
"payment_made": "0.0",
"balance": "33000.0",
"recurring_bill_id": "",
"vendor_id": "348960000000051033",
"sub_total": "33000.0",
"status": "open"
}
Factura de proveedor recurrente
El mapa de factura de proveedor recurrente admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| end_date | Fecha de finalización del perfil de factura de proveedor recurrente |
| tax_total | Importe total del impuesto en la factura de proveedor recurrente |
| exchange_rate | Tipo de cambio involucrado en la factura de proveedor recurrente |
| custom_fields | Campos personalizados de la factura de proveedor recurrente |
| repeat_every | Período de repetición del perfil de factura de proveedor recurrente |
| taxes | Impuestos involucrados en la factura de proveedor recurrente |
| vendor_name | Nombre del proveedor involucrado |
| line_items | Artículos de línea en la factura de proveedor recurrente |
| payment_terms | Condiciones de pago asociadas al proveedor |
| currency_code | Código de moneda |
| last_sent_date | Fecha de la última factura de proveedor enviada |
| total | Total de la factura de proveedor recurrente |
| next_bill_date | Fecha de la próxima factura de proveedor |
| recurring_bill_id | ID de la factura de proveedor recurrente |
| recurrence_name | Nombre del perfil de factura de proveedor recurrente |
| vendor_id | ID del proveedor involucrado |
| sub_total | Subtotal de la factura de proveedor recurrente |
| recurrence_frequency | Frecuencia del perfil de factura recurrente |
| payment_terms_label | Etiqueta de condiciones de pago |
| status | Estado del perfil de factura de proveedor recurrente |
| start_date | Fecha de inicio del perfil de factura de proveedor recurrente |
Mapa de muestra:
{
"end_date": "2016-10-15",
"tax_total": "0.0",
"exchange_rate": "1.0",
"custom_fields": "[]",
"repeat_every": "1",
"taxes": "[]",
"vendor_name": "Vendor",
"line_items": [{"tags":[],"tax_name":"","account_id":"348960000000000403","tax_type":"tax","product_type":"goods","line_item_id":"348960000000193067","account_name":"Advertising And Marketing","unit":"","item_order":0,"rate":900,"bcy_rate":900,"item_id":"348960000000051011","description":"","name":"Item","quantity":1,"tax_id":"","tax_percentage":0,"item_total":900}],
"payment_terms": "0",
"currency_code": "GBP",
"last_sent_date": "2016-10-12",
"total": "900.0",
"next_bill_date": "",
"recurring_bill_id": "348960000000193061",
"recurrence_name": "RB-001",
"vendor_id": "348960000000051033",
"sub_total": "900.0",
"recurrence_frequency": "weeks",
"payment_terms_label": "Due on Receipt",
"status": "expired",
"start_date": "2016-10-12"
}
Artículo
El mapa de artículo admite los siguientes campos:
| Campos clave | Descripción |
|---|---|
| item_id | ID del artículo |
| custom_fields | Campos personalizados del artículo |
| item_type | Tipo del artículo |
| tax_name | Nombre del impuesto involucrado |
| purchase_rate | Tasa de compra del artículo |
| zcrm_product_id | ID del producto en Zoho CRM |
| tax_id | ID del impuesto involucrado |
| unit | Unidad del artículo |
| account_id | ID de la cuenta de ventas |
| purchase_account_name | Nombre de la cuenta de compra |
| purchase_account_id | ID de la cuenta de compra |
| tax_type | Tipo del impuesto involucrado |
| rate | Tasa de ventas del artículo |
| account_name | Nombre de la cuenta de ventas involucrada |
| name | Nombre del artículo |
| tax_percentage | Porcentaje del impuesto involucrado |
| pricebook_rate | Tasa del libro de precios |
| sku | SKU del artículo |
| status | Estado del artículo |
Mapa de muestra:
{
"item_id": "348960000000051011",
"custom_fields": [{"value_formatted":"100","index":1,"is_active":true,"data_type":"decimal","show_on_pdf":true,"value":100,"show_in_all_pdf":true,"label":"Profit","customfield_id":"348960000000134003"}],
"item_type": "sales_and_purchases",
"tax_name": "",
"purchase_rate": "900.0",
"zcrm_product_id": "1665395000000205001",
"tax_id": "",
"unit": "1",
"account_id": "348960000000000388",
"purchase_account_name": "Advertising And Marketing",
"purchase_account_id": "348960000000000403",
"tax_type": "",
"rate": "1000.0",
"account_name": "Sales",
"name": "Item",
"tax_percentage": "0",
"pricebook_rate": "1000.0",
"sku": "SKU",
"status": "active"
}
Algunos ejemplos que explican cómo estos campos ayudarían a obtener los parámetros necesarios:
Ejemplo 1:
Para obtener el ID de cotización, use:
quoteid = quote.get("quote_id");
Ejemplo 2:
Para obtener el nombre de su organización, use:
orgid = organization.get("name");
Ejemplo 3:
Para obtener el nombre y el ZUID de un usuario, use:
username = user.get("name");
zuid = user.get("zuid");
Para obtener más información sobre cómo usar los scripts de Deluge para escribir funciones, consulte la Guía de referencia de Deluge.
Para obtener más información sobre los diferentes escenarios donde las funciones podrían ser útiles, consulte la página Escenarios de funciones.
Editar funciones
Si desea actualizar los detalles de una función, puede editarla. Así es como:
- Vaya a Configuración en la esquina superior derecha de la página.
- Seleccione Acciones de flujo de trabajo en Automatización.
- En el panel Acciones de flujo de trabajo, seleccione Funciones.
- Coloque el cursor sobre la función que desea editar, haga clic en el menú desplegable a la derecha y seleccione Editar.
- Realice los cambios necesarios y haga clic en Guardar.
Filtrar funciones
Puede encontrar funciones fácilmente filtrándolas por el módulo para el que se crearon. Para filtrar funciones:
- Vaya a Configuración en la esquina superior derecha de la página.
- Seleccione Acciones de flujo de trabajo en Automatización.
- En el panel Acciones de flujo de trabajo, seleccione Funciones.
- En Módulo, seleccione un módulo del menú desplegable. Se mostrarán las funciones creadas para el módulo seleccionado.
Eliminar funciones
Advertencia: Eliminar una función es permanente y no se puede deshacer. Si la función está asociada a una regla de flujo de trabajo, la regla de flujo de trabajo no se ejecutará.
Si ya no necesita ciertas funciones, puede eliminarlas. Así es como:
- Vaya a Configuración en la esquina superior derecha de la página.
- Seleccione Acciones de flujo de trabajo en Automatización.
- En el panel Acciones de flujo de trabajo, seleccione Funciones.
- Coloque el cursor sobre la función que desea eliminar, haga clic en el menú desplegable a la derecha y seleccione Eliminar.
- Confirme su acción haciendo clic en Eliminar en la ventana emergente.