Crear QR de transacción #
Este método permite crear un código QR de transacción de pago asociado entre usuarios o comercios existentes en el ecosistema. Retorna una imagen (código QR) que contiene la información del pagador, el receptor y los detalles de la transacción para dar trazabilidad en la lógica de negocio al ejecutar el pago.
URL del endpoint #
POST /create-transaction-qr
Parámetros de entrada #
Los parámetros deben enviarse en el cuerpo de la solicitud HTTP en formato JSON. A continuación, se detallan los parámetros requeridos:
Parámetro Tipo Descripción from_user_id string Identificador único (UUID) del pagador to_user_id string Identificador único (UUID) del receptor amount float Monto de la transacción date string Fecha de la transacción en formato ISO8601 status string Estado de la transacción details object Información adicional (opcional)
Encabezados #
Encabezado | Valor |
---|---|
Authorization | Bearer {token} |
Content-Type | application/json |
Respuesta esperada #
El método devuelve una imagen (código QR) o una URL de la imagen, dependiendo del valor de return_url
.
Ejemplos de uso #
Python #
import requests
import json
url = "https://api.leancore.co/create-transaction-qr"
headers = {
"Authorization": "Bearer [Token de acceso]"
}
data = {
"id": "[Identificador único de la transacción]",
"from_user_id": "[Identificador único del usuario que realiza el pago]",
"to_user_id": "[Identificador único del usuario o comercio receptor]",
"amount": 10.5,
"date": "2023-04-26T12:00:00Z",
"from_user": "[Nombre del usuario que realiza el pago]",
"to_user": "[Nombre del usuario o comercio receptor]",
"status": "pending",
"details": {
"description": "Detalles adicionales de la transacción"
},
"reference": "ABC123"
}
response = requests.post(url, headers=headers, data=json.dumps(data))
if response.status_code == 200:
qr_image = response.content
with open("transaction_qr.png", "wb") as f:
f.write(qr_image)
print("QR image saved successfully.")
else:
print(f"Request failed with status code {response.status_code}.")