SiPagoDocs
Docs para IA

Estado de la orden

Con el uuid que recibiste al crear la orden, podés consultar en cualquier momento si ya se pagó.

Como en el resto de los endpoints, la consulta se autentica con tu access_token. Si todavía no lo tenés, mirá Obtener el token.

Cuándo consultarlo:

  • Cuando recibís un webhook, para confirmar que el aviso es real.
  • Cuando el comprador vuelve a tu sitio por la URL de retorno.
  • Si no te llegó el webhook, por ejemplo para revisar periódicamente las órdenes pendientes.

Consultar una orden

GET {base_url}/api/v2/orders/{uuid}, donde {base_url} es la URL de Checkout del ambiente que uses (Ambientes).

Headers:

Authorization: Bearer {access_token}
Content-Type: application/vnd.api+json
curl --request GET 'https://{base_url}/api/v2/orders/{uuid}' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/vnd.api+json'

Si el uuid no existe, la respuesta es 404.

Si el token falta, es inválido o venció, pedí uno nuevo (Obtener el token) y reintentá.

Respuesta

{
  "data": {
    "id": "/api/v2/orders/0b7f233a-c5ca-4968-9b72-40a239f80355",
    "type": "Order",
    "attributes": {
      "uuid": "0b7f233a-c5ca-4968-9b72-40a239f80355",
      "orderNumber": "00000001-0000000012",
      "status": "SUCCESS",
      "price": { "currency": "032", "amount": 100000 },
      "shipping": null,
      "items": [
        {
          "name": "Silla Eames Base Madera",
          "quantity": 1,
          "unitPrice": { "currency": "032", "amount": 100000 },
          "itemId": null
        }
      ],
      "links": {
        "checkout": "https://{checkout_url}/orders/0b7f233a-c5ca-4968-9b72-40a239f80355",
        "redirect_url": { "success": null, "failed": null }
      },
      "hasPendingPayment": false,
      "payment": {
        "id": 123,
        "authorization_code": "012345",
        "reference_number": "62d6c4784212b",
        "status": "APPROVED"
      },
      "payments": [
        {
          "id": 123,
          "authorization_code": "012345",
          "reference_number": "62d6c4784212b",
          "status": "APPROVED"
        }
      ]
    }
  }
}
Campo (dentro de data.attributes)Descripción
statusEstado de la orden. Es el campo principal: ver estados.
price.amountTotal de la orden en centavos, con envío incluido.
paymentEl último intento de pago, o null si todavía no hubo ninguno.
payment.statusResultado de ese intento, por ejemplo APPROVED.
payment.authorization_codeCódigo de autorización del pago.
payment.reference_numberNúmero de referencia del pago.
paymentsTodos los intentos de pago de la orden.
hasPendingPaymenttrue si hay un pago en proceso.
Nota: Nombres de campos distintos al webhook

Acá los campos del pago se llaman authorization_code y reference_number. En el webhook, los mismos datos se llaman authorizationCode y refNumber.

Estados

Son los mismos valores que trae el campo order.status del webhook.

statusQué significaQué hacer
PENDINGLa orden está creada y todavía no tiene un pago aprobado. También queda así si el comprador intentó pagar y se rechazó: puede volver a intentarlo.Esperar.
SUCCESSEl pago se aprobó.Dar el pedido por pagado.
EXPIREDVenció el tiempo para pagar, o la intención de pago falló.Cancelar el pedido o crear una orden nueva.
FAILED_CHECKOUTHubo un error durante el checkout, por ejemplo con los datos de pago.Crear una orden nueva si el comprador quiere reintentar.
FAILEDNo se pudo crear la intención de pago, antes de que el comprador intentara pagar.Revisar los datos de la orden y crear una nueva.