Aprende como manejar los diferentes tipos de errores que se pueden presentar en las peticiones a nuestros endpoints

Estructura de errores

Las API retornará un objeto con dos atributos de respuesta para indicar cuál fue el error en la petición.

La respuesta esta conformada por:

  • code que representa un Código genérico
  • description que representa un mensaje descriptivo del error
{
    "error": {
        "code": "EMA-1000",
        "description": "x-api-key"
    },
    "data": null
}

Cupones

Código de errorTipo de errorDescripciónSolución
EM-6000CuponNotFoundCupón no encontradoVerificar que el código del cupón este con el formato permitido y volver a intentar
EM-6001CuponNotApplicableCupón no es aplicable (vencido, no existe, etc.)Verificar que el código del cupón sea valido, no este vencido y que exista
EM-6002CuponAlreadyUsedCupón ya utilizadoVerificar el limite de usos que tiene el cupón o si es un cupón único
EM-6003CuponAlreadyUsedInOrderCupón ya aplicado en la ordenVerificar si el cupón ya fue aplicado en la orden a través de obtener orden por token
EM-5000MerchantUnknownError desconocido

Costos de envío

Código de errorTipo de errorDescripciónSolución
EM-4000WithoutCoverageUbicación de despacho fuera de zona de coberturaVerificar la latitud y longitud del método de envio, y ver si se encuentra dentro de la zona de cobertura
EM-4001ClosedStoreTienda cerradaVerificar el horario de la tienda y comprobar que se encuentra abierta
EM-5000MerchantUnknownError desconocido

Errores comunes en API

Código de errorTipo de errorDescripciónSolución
EMA-1000MissingHeadersNo se encontró el encabezado de la peticiónVerificar que el encabezado se esté enviando de manera correcta en la petición
EMA-1001CannotGetMetadataNo se puede obtener la metadata.Verificar si la metadata enviada en la petición tiene el formato correcto
EMA-1002PayloadErrorError en el payload.Verificar si el payload o body que se está haciendo en la petición tiene el formato correcto
EMA-1003ShippingOptionNotAvailableLa opción de envio no se encuentra disponibleLa opción de envió no se encuentra disponible| Verificar si la opción de envio es valida a las que tenemos disponibles: delivery,pickup
EMA-1004OrderAlreadyProcessedLa orden ya fue procesadaGenerar otra orden, ya que la orden ya fue procesada
EMA-3000ConfigurationNotFoundNo se encontró la configuraciónNo están configurados los endpoints de integración con el comercio
EMA-3001OrderNotFoundNo se encontró la ordenOrden no registrada en el comercio, validar que esté correcta o que se encuentre dentro del comercio
EMA-3002DataBaseErrorError en la base de datosVerificar la base de datos
EMA-4000RequestServiceErrorSolicitud de error de servicioSolicitud de error de servicio| Verificar si la solicitud al servicio es correcta
EMA-4001RequestServiceTimeoutError en tiempo de espera de la solicitud de servicioTiempo de espera excedido, generar otra petición
EMA-5000UnauthorizedSin autorizaciónFalta el X-API-Key en el encabezado de la petición
EMA-6000RefundErrorError de reembolsoVerificar si el body que se está haciendo en la petición tiene el formato correcto
EMA-6001VoidErrorError de anulaciónVerificar si el body que se está haciendo en la petición tiene el formato correcto
EMA-6007CannotGetWebhookNo se puede obtener la configuración del webhookVerificar si el body que se está haciendo en la petición tiene el formato correct
EMA-6010ErrorFromMerchantError proveniente de la API del merchantVerificar si el body que se está haciendo en la petición tiene el formato correct
EMA-6011CannotUpdateOrderNo se puede actualizar la ordenVerificar si el body que se está haciendo en la petición tiene el formato correct
EMA-6019OrderExpiredEsta orden ya está en estado expired y por ende no se puede intentar pagar. Este error es arrojado al momento de intentar pagar una orden expirada.Debes crear una nueva orden.
EMA-6018UnauthorizedHubo un problema en la autenticación.Revisar las API keys que están siendo utilizadas.
EMA-6020CannotExpireOrderNo se puede expirar esta orden pues o ya está expirada o tiene un intento de pago asociado.

Casos especiales:

PIX: se permite expirar una orden cuando esta no tiene ningún intento de pago asociado o el intento de pago asociado esta en pending.
Debes crear una nueva orden.

Enlaces de pago

Código de errorMensajeDescripciónSolución
EMA-6021CannotCreatePaymentLinkTemplateOcurrió un error al intentar crear el template del payment link.Verifica campos que se envían en la solicitud de payment link requeridos en la creación.
EMA-6022CannotGetPaymentLinkTemplateNo se pudo encontrar el template del Enlace de pago solicitado.Verifica el ID de payment link solicitado.
EMA-6023CannotUpdatePaymentLinkTemplateHubo un error al intentar actualizar el template del Enlace de pago.Verifica campos obligatorios solicitados para actualizar link de pago.
EMA-6024InvalidStatusTransitionPaymentLinkTemplateLa transición de estado solicitada no es válida o el estado no permite modificaciones.El estado actual no permite modificaciones. Verifica que el estado sea elegible para cambio o modificación antes de intentar una transición.
EMA-6025PaymentLinkTemplateExpiredEl template del Enlace de pago ha expirado y ya no puede ser utilizado.Genera un nuevo link de pago si se necesita continuar con la operación o edita la fecha de expiración del enlace de pago actual.
EMA-6026PaymentLinkTemplateLimitExceededSe ha superado el límite máximo de usos permitidos para el Enlace de pago.Crea un nuevo link de pago o incrementa el límite de redenciones si es posible.
EMA-6027PaymentLinkTemplateCompletedEl template del Enlace de pago ya ha sido completado.No se requiere acción adicional. Si se necesita un nuevo pago, genera un nuevo link.
EMA-6028PaymentLinkTemplateDisabledEl template del Enlace de pago está desactivado y no puede ser utilizado.Verifica la configuración del link y, si es necesario, reactívalo o crea uno nuevo.
EMA-6029PaymentLinkTemplateCanceledEl template del Enlace de pago ha sido cancelado, por lo que no es posible continuar con la operación.Crea un nuevo link de pago si se requiere una nueva transacción.

Checkout

Código de errorTipo de errorDescripciónSolución
CHECKOUT-1000CheckoutNotReadyCheckout no esta listo para iniciarVerificar la configuración del checkout
CHECKOUT-1001CheckoutNotReadyForShippingCheckout no esta preparado para el envioVerificar la configuración de endpoints de métodos y tarifas de envío
CHECKOUT-1002CheckoutNotReadyForNotifyCheckout no esta preparado para notificarVerificar endpoint de notificación de ordenes

Payments

Código de errorTipo de errorDescripciónSolución
DP-3000ErrPayloadError en el payload enviado en la petición o esta vacíoVerificar el payload que se esta enviando, validar si los campos enviados son los requeridos o si esta vacío.
DP-3001ErrCannotParseDataNo se puede verificar la data enviadaValidar el payload de data que se envía en la solicitud es correcto
DP-3002ErrRequestServiceErrorError en la petición que se realizoVolver a realizar una petición con los datos correctos
DP-3003ErrAmountRequestError en el monto enviadoValidar que el campo de los montos coincidan o no vayan nulos en la petición
DP-4000ErrMissingHeadersNo se encontró el encabezado de la peticiónVerificar que el encabezado se esté enviando de manera correcta en la petición.
DP-4001ErrUnauthorizedSin autorizaciónFalta el X-API-Key en el encabezado de la petición.
DP-4002ErrCardTokenForbiddenTarjeta prohibidaLa tarjeta se encuentra en la lista negra de fraudes.
DP-4003ErrStoreCodeValidationNo se encontró el código de la tiendaRevisar el código de la tienda que se esta enviando dentro de la petición.
DP-4004ErrValidationRevisar el payload enviadoValidar que el payload enviado se encuentre con la estructura requerida.
DP-4005ErrMerchantIDValidationNo se encontró el código del comercioVerificar si el código de la tienda es el correcto o si se esta enviando vacío.
DP-4006ErrUserValidationUsuario es requeridoSe debe enviar la información del usuario al crear la orden.
DP-4007ErrParseUuidNo se puede obtener el token de ordenRevisar si el token de la orden se esta enviando correctamente.
DP-4008ErrCardNotFoundTarjeta no encontradaEl numero de la tarjeta no es correcto, intentar con una nueva tarjeta.

En caso se esté usando card_id este error significa que el card_idno hace parte o no está asociado al usuario que se está utilizando para crear el /purchase
DP-4009ErrProcessorNotFoundNo se ha encontrado el procesador para la tarjeta de créditoRevisar en el Admin si el método de pago esta configurado.
Dp-4100ErrMissingCVVNo se encontró el cvvRevisar que se este enviando el cvv dentro de la petición.
DP-4101ErrInvalidCVVEl cvv es inválidoEl cvv de la tarjeta no es correcto, intentar con un cvv válido.
DP-4200ErrTransactionProcessorError con la comunicación del procesadorVolver a intentar la transacción o intentar con otro procesador de pago
DP-4300ErrExpCardError en la fecha de expiraciónSolicitar que se ingrese la información correcta de la tarjeta
DP-4301ErrIDUserError en el número/tipo de identificaciónSolicitar que se ingrese la información correcta de la cédula de identificación
DP-4302ErrNameUserError en el nombre del tarjetahabienteSolicitar que se ingrese la información correcta de la tarjeta
DP-4303ErrNumberCardError en el numero de la tarjetaSolicitar que se ingrese la información correcta de la tarjeta
DP-4400ErrProcessing3DSError en el procesamiento con 3DSIntentar de nuevo con otra tarjeta o medio de pago
DP-4500ErrBankRejectedDeclinación general por el banco emisorIntentar de nuevo con otra tarjeta o medio de pago
DP-5001ErrNotImplementedMétodo de pago no configuradoRevisar en el Admin si el método de pago esta configurado.
DP-5002ErrDBTransacción no encontradaLa transacción no pudo ser encontrada en la BD, revisar la información para confirmar que se este enviando correctamente.
DP-6000ErrRequestAlreadyProcessedSolicitud ya procesada o en cursoLa solicitud ya se encuentra procesada o esta en curso, enviar otra solicitud.
DP-6001ErrCannotUpdateTransactionNo se puede actualizar la transacciónVolver a enviar otra solicitud para actualizar la transacción.
DP-6002ErrCannotFindTransactionNo se encuentra la transacciónRevisar si la transacción se esta enviando de manera correcta.
DP-6003ErrUnknownPaymentLa transacción podría no haber sido aprobadaRealizar otra transacción o probar con otro procesador de pago
DP-6004ErrCannotFindOrCreateTransactionNo se puede encontrar o crear una transacciónHacer otra transacción o intentar con otro procesador de pago
DP-6011ErrOperationDisabledEl procesador no soporta la operación. Ejemplo: reembolsos parciales no disponibles para PaymentezRealizar otro tipo de operación
DP-7011ErrWaitingOTPEsperando código OTPEsperar al envio del código OTP requerido para completar la transacción
DP-7012ErrFailureOTPFallo OTPEl código OTP ingresado no es correcto, revisar o solicitar un nuevo código
DP-7022ErrCardVaultNo se puede obtener la tarjetaEl número de la tarjeta es incorrecto o se encuentra en la lista de fraudes, intentar con otra tarjeta.
DP-7023ErrSistecreditoPaymentError en la creación del pagoRevisar la información enviada para realizar el pago
DP-7100ErrDeferPaymentError en la petición de diferir cobroRevisar la configuración del método de pago
DP-7107ErrSettlementProcessingOperationError ejecutando una captura, void y/o refund, cuando la transacción está siendo liquidadaEsperar hasta que se termine el proceso de liquidación o realizar la operación a través de la versión 2 del API
DP-8000ErrCannotGenerateQRNo se puede generar el código QRValidar si el contenido que ira dentro del QR es correcto.
DP-8001ErrFraudValidationLa transacción podría no haber sido aprobadaRealizar otra transacción debido a que fue rechazada por nuestro sistema anti fraude
DP-8002ErrFraudSystemConnMétodo de pago no encontrado o error de conexiónRevisar el método de pago que se solicito se encuentra dentro del Admin
DP-9000ErrInsufficientFundsNo se cuenta con los fondos en la cuenta para poder finalizar la ordenIntentar de nuevo con otra tarjeta o medio de pago
DP-9001ErrMaxAttempsSe ha alcanzado el limite de intentos/saldoIntentar de nuevo con otra tarjeta o medio de pago
DP-9999ErrUnknownUnknown errorError desconocido, vuelva a realizar una nueva solicitud