Skip to main content

Estado de una orden

Consulta el estado de tus órdenes.

Para verificar el estado de la transacción se debe llamar al recurso de Flow /payment/getStatus mediante un método GET. Los parámetros requeridos para realizar la consulta del estado de la transacción se describen en la siguiente tabla. Estos parámetros se deben incluir como query parameters en la consulta.

Parámetros consulta

Los parámetros requeridos para realizar la consulta del estado de la transacción se describen en la siguiente tabla. Estos parámetros se deben incluir como query parameters en la consulta.

apiKey
required
string

apiKey del comercio

token
required
string

token de la transacción enviado por Flow

s
required
string

la firma de los parámetros efectuada con su secretKey

{
  • "apiKey": "1F90971E-8276-4715-97FF-2BLG5030EE3B",
  • "token": "AJ089FF5467367",
  • "s": "33373581FC32576FAF33C46FC6454B1FFEBD7E1H"
}

Firma de parámetros

Ejemplos de firmado de parámetros en diferentes lenguajes de programación
$secretKey = 'my secret'
$params = array(
'apiKey' => '1F90971E-8276-4715-97FF-2BLG5030EE3B',
'token' => 'AJ089FF5467367'
);
$keys = array_keys($params);
sort($keys);
$toSign = '';
foreach($keys as $key) {
$toSign .= $key . $params[$key];
};
$signature = hash_hmac('sha256', $toSign , $secretKey);

Parámetros respuesta

La respuesta de la consulta del estado de la transacción es del tipo JSON y los parámetros de ella se detallan a continuación.

flowOrder
integer

El número de la orden de Flow

commerceOrder
string

El número de la orden del comercio

requestDate
string <yyyy-mm-dd hh:mm:ss>

La fecha de creación de la orden

status
integer

El estado de la order

  • 1 pendiente de pago
  • 2 pagada
  • 3 rechazada
  • 4 anulada
subject
string

El concepto de la orden

currency
string

La moneda

amount
number <float>

El monto de la orden

payer
string

El email del pagador

optional
string or null

datos opcionales enviados por el comercio en el request de creación de pago en el parámetro optional en formato JSon

object

Información para un pago pendiente cuando se generó un cupón de pago. Si no existen datos es que no se generó un cupón de pago.

object

Los datos del pago

merchantId
string or null

Id de comercio asociado. Solo aplica si usted es comercio integrador.

{
  • "flowOrder": 3567899,
  • "commerceOrder": "sf12377",
  • "requestDate": "2017-07-21 12:32:11",
  • "status": 1,
  • "subject": "game console",
  • "currency": "CLP",
  • "amount": 12000,
  • "payer": "pperez@gamil.com",
  • "optional": {
    },
  • "pending_info": {
    },
  • "paymentData": {
    },
  • "merchantId": "string"
}

Una vez recibida la respuesta de la consulta de la orden, el comercio podrá actualizar su estado en sus sistemas. De este modo, al ser redirigido, el cliente verá la vista correspondiente a la transacción, ya sea exitosa, fallida o pendiente de pago.

La consulta del estado se puede realizar en cualquier momento de la transacción, aunque se recomienda hacerlo después de recibir la confirmación de la transacción y al momento de recibir la redirección a la URL de retorno, para informar correctamente al cliente sobre el estado final de la transacción.

Una vez confirmada la transacción con un pago exitoso, Flow notificará por correo electrónico tanto al comercio como al cliente, indicando los detalles de la transacción.

Flow tiene disponible otros servicios para conocer el estado de la orden usando la API:

  • /payment/getStatusByCommerceId: Este método permite obtener el estado de un pago en base al commerceId.
  • /payment/getStatusByFlowOrder: Este método permite obtener el estado de un pago en base al flowOrder.
  • /payment/getPayments: Este método permite obtener la lista paginada de pagos recibidos en un día. Los objetos pagos de la lista tienen la misma estructura de los retornados en los servicios payment/getStatus.
  • /payment/getStatusExtended: Este método se utiliza para obtener el estado de un pago. A diferencia del /payment/getStatus este servicio retorna el tipo de pago, los 4 últimos dígitos de la tarjeta (si el pago se realizó con tarjeta) y la información del último intento de pago. Se debe utilizar en la página callback del comercio para recibir notificaciones de pagos. Cada vez que el pagador efectúe un pago, Flow enviará vía POST una llamada a la página del comercio, pasando como parámetro un token que deberá utilizarse en este servicio.
  • /payment/getStatusByFlowOrderExtended: Este método permite obtener el estado de un pago en base al flowOrder. A diferencia del /payment/getStatusByFlowOrder este servicio retorna el tipo de pago, los 4 últimos dígitos de la tarjeta (si el pago se hizo con tarjeta) y la información del último intento de pago.
  • /payment/getTransactions: Este método permite obtener la lista paginada de transacciones realizadas en un día. Los objetos transacción de la lista tienen la misma estructura de los retornados en los servicios payment/getStatus.