MercadoPago
conexióna servicios de MercadoPago
conexióna servicios de MercadoPago
Este interfaz (mdpyv009) permite conectar al servicio MercadoPago y replicar los métodos principales de esa API como:
payment.create: crear un enlace de pago (y opcionalmente capturar si fue realizado).
payment.search: consulta pagos entre fechas.
payment.getid: consultar los datos completos de un pago
merchant_order: consultar el estado de un orden
y muchos más.
Desde visual basic 6 (o cualquier otro lenguaje en ambiente windows) el servicio se puede usar con esté código básico. En este ejemplo se conecta al servicio (teniendo las credenciales tramitadas en MercadoPago developers) y se recupera una lista de pagos aprobados entre fechas.
Dim gmPy As Object
Set gmdPy = CreateObject("misdatos.mp2")
gmdPy.usuario = "api key mercadopago developer"
gmdPy.archivoLicencia = "archivo de licencia"
If gmdPy.conectar() Then
Dim bresultado As Boolean
bresultado = True
bresultado = gmdPy.cargarPropiedad("cargar", "diccionario.limpiar", "", 0, 0, 0, "")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.status", "approved", 0, 0, 0, "string")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.range", "date_approved", 0, 0, 0, "string")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.begin_date", "20251101000001", 0, 0, 0, "fechaiso")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.end_date", "20251115235959", 0, 0, 0, "fechaiso")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.sort", "date_approved", 0, 0, 0, "string")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.criteria", "desc", 0, 0, 0, "string")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.operation_type", "regular_payment", 0, 0, 0, "string")
bresultado = bresultado And gmdPy.cargarPropiedad("cargar", "diccionario.collector//id", "me", 0, 0, 0, "stringconpunto")
If bresultado Then
If gmdPy.paymentsearch() Then
Dim ccantidad As Integer
Dim nindex As Integer
Dim cfecha As String
Dim ctotal As String
Dim cid As String
ncantidad = Val(gmdPy.leerPropiedad("paymentsearch", "diccionario.response.diccionario.results.lista.itemcantidad", 0, 0, 0))
Dim ccampofecha As String
Dim ccampototal As String
Dim ccampoid As String
Dim ctexto As String
ccampototal = "diccionario.response.diccionario.results.lista.{nindice}.diccionario.transaction_amount"
ccampofecha = "diccionario.response.diccionario.results.lista.{nindice}.diccionario.date_approved"
ccampoid = "diccionario.response.diccionario.results.lista.{nindice}.diccionario.id"
For nindex = 0 To ncantidad - 1
ctexto = Replace(ccampofecha, "{nindice}", Trim(Str(nindex)))
cfecha = gmdPy.leerPropiedad("paymentsearch", ctexto, 0, 0, 0)
ctexto = Replace(ccampototal, "{nindice}", Trim(Str(nindex)))
ctotal = gmdPy.leerPropiedad("paymentsearch", ctexto, 0, 0, 0)
ctexto = Replace(ccampoid, "{nindice}", Trim(Str(nindex)))
cid = gmdPy.leerPropiedad("paymentsearch", ctexto, 0, 0, 0)
If gmdPy.ultimomensajeerror <> "" Then
MsgBox "error " + gmdPy.ultimomensajeerror
Else
MsgBox ("id " + cid + " Fecha " + cfecha + " " + " Total " + ctotal)
End If
Next
Else
MsgBox "Error al consultar pagos " + gmdPy.ultimomensajeerror
End If
Else
MsgBox "Error al cargar datos de filtros " + gmdPy.ultimomensajeerror
End If
Else
MsgBox "Error al conecta a servicio " + gmdPy.ultimomensajeerror
End If
set gmdPY = nothing
Para poder usar este servicio debe tener en cuenta los siguientes puntos o requisitos
El instalador mdpyv009 descargado y registrado.
La API KEY de la credencial (producción o prueba) tramite en MercadoPago Developer
Una archivo de licencia genrado desde la plataforma MisDatos a nombre de la API KEY : ¡ATENCION! al generar el archivo de licencia en "dato" no es necesario introducir toda la API KEY (es un riesgo de seguridad) solo ingresar 35 caracters de alguna parte de la API KEY.
La ubicación de campos y datos en el JSON de la respuesta según la documentación
Una cuenta de IA (chatGPT, gemini) para ayudar en el soporte de nombres de campos y métodos usados por MercadoPago.
los datos de este servicio (tanto enviados como recibidos) son en formato json porque es recomendable tener claro como el método leerPropiedad ubica los datos de la respuesta (ver JSON mdpyv009) de igual forma el método cargarPropiedad.
Para ayudar en la ubicación de campos y métodos de MercadoPago (ya que el objeto mdpyv009.mp2 los replica) incluimos un prompt para usar como asistente. Copiar y pegar en el motor de IA
Prompt IA soporte MercadoPago: https://docs.google.com/document/d/1d8IVv0WZxsOthkvoBvJm8YYkf67XGNJBKSTFyRilwcw/edit?usp=sharing
La planilla de test mdmercadopagotest (al pie de página, debe descargarla para abrir la planilla localmente en excel) contiene hojas y macros que replica todos y cada uno de los métodos por lo que es imprescindible para ver como cada métodos, con sus campos de entrada y salida, es implementada desde la interfaz misdatosmp2. La planilla puede ser ejecutada en un excel de 32 bits o 64 bits con las macros habilitadas (puede usar un motor de IA para que lo guie en lo pasos necesarios para habilitar las macro en su versión de excel)