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