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-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.

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-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