Búsquedas

Openpay permite filtrar búsquedas de pagos, cargos, clientes, tarjetas, planes, suscripciones, comisiones y webhooks mediante el api, de la manera en la que se muestra en los enlaces.

Adicional a esto existen dos búsquedas especiales que pueden realizarse en base a los identificadores que el comercio generó y asoció en la plataforma de openpay, éstas son:

  • búsqueda de cargos en base al order_id
  • búsqueda de clientes mediante su external_id

Ambas se describen a continuación.

Buscar cargos por order_id

Recordemos que éste atributo fue proporcionado por el comercio cuando creó el cargo en openpay, y es un valor único para dicho comercio. Para este ejemplo vamos a buscar un cargo al cual se identifica como my-oid-984789.

@openpay = OpenpayApi.new("mzdtln3bqtms6o7kck9q","sk_e568c42a6c384b9ab02cd47d2e401cab")
@charges = @openpay.create(:charges)

request_hash = {
     "orderId" => "my-oid-984789"
   }

response_hash = @charges.all(request_hash.to_hash)

Si la llamada es correcta y encuentra dicho cargo, entonces se regresará un respuesta con un objeto transaccion representado de acuerdo al lenguaje de la librería utilizada.

Respuesta:


[
  {
     "id":"tryqihxac3msedn2pqed",
      "amount":100.00,
      "authorization":"801585",
      "method":"card",
      "operation_type":"in",
      "transaction_type":"charge",
      "card":{
         "type":"debit",
         "brand":"visa",
         "address":null,
         "card_number":"411111XXXXXX1111",
         "holder_name":"Juan Perez Ramirez",
         "expiration_year":"20",
         "expiration_month":"12",
         "allows_charges":true,
         "allows_payouts":true,
         "bank_name":"BBVA",
         "bank_code":"002"
      },
      "status":"completed",
      "currency":"COP",
      "creation_date":"2019-05-26T14:00:17-05:00",
      "operation_date":"2019-05-26T14:00:17-05:00",
      "description":"Cargo inicial a mi cuenta",
      "error_message":null,
      "order_id":my-oid-984789,
      "customer_id":"ag8nktpdzebjiye1twzi"
  }
]                    

Buscar clientes por external_id

Recordemos que éste atributo fue proporcionado por el comercio cuando creó al cliente en openpay, y es un valor único para dicho comercio. Para este ejemplo vamos a buscar un cliente al cual se identifica como myClient001.

@openpay = OpenpayApi.new("mzdtln3bqtms6o7kck9q","sk_e568c42a6c384b9ab02cd47d2e401cab")
@customers = @openpay.create(:customers)

request_hash ={
     "externalId" => "myClient001"
   }

response_hash = @customers.all(request_hash.to_hash)  

Si la llamada es correcta y encuentra dicho cliente, entonces se regresará un respuesta con un objeto cliente representado de acuerdo al lenguaje de la librería utilizada.

Respuesta:

[
  {
     "id": "ag8nktpdzebjiye1twzi",
     "name": "customer name",
     "last_name": "customer last name",
     "email":"customer_email@me.co",
     "phone_number": "(385) 937-467",
     "address": {
        "line1": "CARRERA BULNES 3403",
        "line2": "Esq. JIMENEZ",
        "line3": "Entre la calle SERGIO ZEPEDA y JULIO MENESES",
        "state": "Bogotá",
        "city": "Bogotá",
        "postal_code": "110831",
        "country_code": "CO"
     },
     "creation_date": "2019-08-12T14:11:23-05:00",
     "external_id": "myClient001",
     "clabe": null
  }
]