# Soluciones El API de ZRU permite tres tipos de integraciones, cada una se adapta a diferentes necesidades permitiéndo que sea cual sea el escenario al que quieres llegar, lo puedas hacer a través del API. Puedes ver un ejemplo de cada cada tipo de integración en la sección [Nuestra solución](https://www.zrupay.com/plataforma-pagos-online) de la web. > A través del Panel de ZRU también se pueden generar enlaces de pago para enviar al cliente y realizar cobros sin necesidad de utilizar el API. ### Redirect > Esta sería la integración más sencilla de todas, después de unas pocas líneas ya estamos recibiendo pagos. El flujo sería el siguiente: ![](https://assets.mychoice2pay.com/img/workflow-1.svg) 1. El usuario solicita pagar el pedido. 2. Se crea la `órden de pago` a través del API de ZRU (utilizando la `llave pública y privada` obtenida en el Panel de ZRU). 3. El API de ZRU devuelve la información de la solicitud incluyendo un campo llamado `token`, con dicho campo creamos la `url de redirección` que debe tener el siguiente formato: https://pay.mychoice2pay.com/TOKEN (TOKEN sería reemplazado por el valor del campo `token`). 4. Se redirige al usuario a la `url de redirección`, que sería la pantalla de pago de ZRU. 5. El usuario regresa a la `url de retorno` enviada al crear la órden de pago en caso de que finalice el pago correctamente, en caso de que el usuario cancele el pago, regresará a la `url de cancelación` enviada igualmente al crear la órden de pago. *. ZRU enviará una notificación confirmando el pago a la `url de notificación` enviada al crear la órden de pago. Igualmente, enviará notificaciones en caso de que se produzcan cambios relacionados con el pago, o error, o en caso de que sea una suscripción o autorización avisará de cada pago recibido. ### iFrame > Es bastante similar a Redirect, la única diferencia es que el usuario nunca sale de tu dominio porque se utiliza un iframe para realizar el pago. ![](https://assets.mychoice2pay.com/img/workflow-2.svg) 1. El usuario solicita pagar el pedido. 2. Se crea la `órden de pago` a través del API de ZRU (utilizando la `llave pública y privada` obtenida en el Panel de ZRU). 3. El API de ZRU devuelve la información de la solicitud incluyendo un campo llamado `token`, con dicho campo creamos la `url de iframe` que debe tener el siguiente formato: https://pay.mychoice2pay.com/TOKEN/iframe (TOKEN sería reemplazado por el valor del campo `token`). 4. Se crea un iframe en la interfaz de usuario con la `url de iframe`. 5. El usuario regresa a la `url de retorno` enviada al crear la órden de pago en caso de que finalice el pago correctamente, en caso de que el usuario cancele el pago, regresará a la `url de cancelación` enviada igualmente al crear la órden de pago. Ya estando en estas urls se podría cerrar el iframe. *. ZRU enviará una notificación confirmando el pago a la `url de notificación` enviada al crear la órden de pago. Igualmente, enviará notificaciones en caso de que se produzcan cambios relacionados con el pago, o error, o en caso de que sea una suscripción o autorización avisará de cada pago recibido. ### Custom > Esta forma de integrar ZRU permite que además de que todo se realice en tu dominio puedes personalizar cada detalle de la experiencia del usuario al pagar. ![](https://assets.mychoice2pay.com/img/workflow-3.svg) 1. El usuario solicita pagar el pedido. 2. Se crea la `órden de pago` a través del API de ZRU (utilizando la `llave pública y privada` obtenida en el Panel de ZRU). 3. El API de ZRU devuelve la información de la solicitud, entre los datos que devuelve estará el `token` que utilizaremos en el resto de los pasos. 4. Se envía el `token` a la interfaz de usuario. 5. Se solicitan las pasarelas de pago disponibles para esa órden de pago a través del API de ZRU, utilizando el `token` y la `llave pública`. 6. El API de ZRU devuelve la información de las pasarelas y sus tipos. 7. En base al tipo de pasarela pueden ocurrir dos cosas: - a. En el caso de las `pasarelas de tipo card`, se enviará la información de la tarjeta al API de ZRU. - b. En el caso de las `pasarelas tipo form`, se debe enviar al usuario a la url `https://pay.mychoice2pay.com//redirect/`. El usuario será redirigido entonces a la pasarela para finalizar el pago. 1. La respuesta varia en base a la manera usada entre `7.a` y `7.b`. - a. El API de ZRU responde con la confirmación o no del pago. En caso de que sea afirmativo queda completado el pago. - b. El usuario regresa a la `url de retorno` enviada al crear la órden de pago en caso de que finalice el pago correctamente, en caso de que el usuario cancele el pago, regresará a la `url de cancelación` enviada igualmente al crear la órden de pago. *. ZRU enviará una notificación confirmando el pago a la `url de notificación` enviada al crear la órden de pago. Igualmente, enviará notificaciones en caso de que se produzcan cambios relacionados con el pago, o error, o en caso de que sea una suscripción o autorización avisará de cada pago recibido.