curl --request POST \
--url https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"image": "iVBORw0KGgoAAAANSUhEUgAA...",
"external_reference": "ORDER-QR-1001",
"asset_deposit": "USDC",
"blockchain": "Polygon",
"funding_source": "conversion",
"amount": 100
}
'import requests
url = "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr"
payload = {
"image": "iVBORw0KGgoAAAANSUhEUgAA...",
"external_reference": "ORDER-QR-1001",
"asset_deposit": "USDC",
"blockchain": "Polygon",
"funding_source": "conversion",
"amount": 100
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
image: 'iVBORw0KGgoAAAANSUhEUgAA...',
external_reference: 'ORDER-QR-1001',
asset_deposit: 'USDC',
blockchain: 'Polygon',
funding_source: 'conversion',
amount: 100
})
};
fetch('https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'image' => 'iVBORw0KGgoAAAANSUhEUgAA...',
'external_reference' => 'ORDER-QR-1001',
'asset_deposit' => 'USDC',
'blockchain' => 'Polygon',
'funding_source' => 'conversion',
'amount' => 100
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr"
payload := strings.NewReader("{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}"
response = http.request(request)
puts response.read_body{
"external_reference": "ORDER-QR-1001",
"transactions": {
"transaction_id": "550e8400-e29b-41d4-a716-446655440002",
"status": "pending_transaction",
"message": "Payout QR processed successfully"
},
"amount_deposit": "14.44",
"deposit_address": "0x0000000000000000000000000000000000000000"
}{
"statusCode": 400,
"message": "Validation failed",
"error": "Bad Request"
}{
"statusCode": 401,
"message": "Unauthorized"
}Payout QR
Procesa un QR de payout. La respuesta depende del proveedor QR y puede variar.
curl --request POST \
--url https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"image": "iVBORw0KGgoAAAANSUhEUgAA...",
"external_reference": "ORDER-QR-1001",
"asset_deposit": "USDC",
"blockchain": "Polygon",
"funding_source": "conversion",
"amount": 100
}
'import requests
url = "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr"
payload = {
"image": "iVBORw0KGgoAAAANSUhEUgAA...",
"external_reference": "ORDER-QR-1001",
"asset_deposit": "USDC",
"blockchain": "Polygon",
"funding_source": "conversion",
"amount": 100
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
image: 'iVBORw0KGgoAAAANSUhEUgAA...',
external_reference: 'ORDER-QR-1001',
asset_deposit: 'USDC',
blockchain: 'Polygon',
funding_source: 'conversion',
amount: 100
})
};
fetch('https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'image' => 'iVBORw0KGgoAAAANSUhEUgAA...',
'external_reference' => 'ORDER-QR-1001',
'asset_deposit' => 'USDC',
'blockchain' => 'Polygon',
'funding_source' => 'conversion',
'amount' => 100
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr"
payload := strings.NewReader("{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox-rampa.mesadepagos.com/api/v2/transactions/payouts/qr")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"image\": \"iVBORw0KGgoAAAANSUhEUgAA...\",\n \"external_reference\": \"ORDER-QR-1001\",\n \"asset_deposit\": \"USDC\",\n \"blockchain\": \"Polygon\",\n \"funding_source\": \"conversion\",\n \"amount\": 100\n}"
response = http.request(request)
puts response.read_body{
"external_reference": "ORDER-QR-1001",
"transactions": {
"transaction_id": "550e8400-e29b-41d4-a716-446655440002",
"status": "pending_transaction",
"message": "Payout QR processed successfully"
},
"amount_deposit": "14.44",
"deposit_address": "0x0000000000000000000000000000000000000000"
}{
"statusCode": 400,
"message": "Validation failed",
"error": "Bad Request"
}{
"statusCode": 401,
"message": "Unauthorized"
}Autorizaciones
JWT obtenido desde /v2/auth/login o /v3/auth/login
Cuerpo
Imagen QR en base64 puro, sin prefijo data:image.
"iVBORw0KGgoAAAANSUhEUgAA..."
Referencia externa del partner.
32"ORDER-QR-1001"
Asset crypto requerido para fondear la operacion.
USDC, USDT "USDC"
Blockchain del asset de deposito.
Polygon, Ethereum, TRON "Polygon"
Origen de fondos. Si es conversion, amount es requerido.
balance, conversion "conversion"
Monto requerido cuando funding_source es conversion.
x >= 0100
Respuesta
Payout QR creado exitosamente.
Referencia externa enviada en el request.
"ORDER-QR-1001"
Transaccion asociada al flujo QR.
Show child attributes
Show child attributes
Monto crypto requerido para fondear la operacion.
"14.44"
Direccion crypto donde se debe depositar, si aplica.
"0x0000000000000000000000000000000000000000"