Monedero Digital
Operaciones de monedero digital
Obtener Configuración de Monedero
POST /wallet/get
Agregar Contacto de Monedero
POST /wallet/contact/add
Obtener Contacto de Monedero
POST /wallet/contact/get
Actualizar Saldo de Monedero
POST /wallet/balance/update
Registrar Venta en Monedero
POST /wallet/sale
The Monedero Digital object
Returned by the monedero digital endpoints.
Attributes
successboolean
—
resultarray<object>
—
statusinteger
—
codestring
Código de respuesta
The Monedero Digital object
{ "success": true, "result": [], "status": 200, "code": "wallets_get_01" }
Obtener Configuración de Monedero
POST https://api.smsmasivos.com.mx/wallet/get
Devuelve la configuración de monedero del usuario autenticado
curl https://api.smsmasivos.com.mx/wallet/get
const Monedero Digital = await sms.monederodigital.create()
Monedero Digital = sms.monederodigital.create()Monedero Digital, err := client.Monederodigital.Create(ctx, nil)
Response
{ "success": true, "result": [ { "wallet_name": "<string>", "wallet_key": "<string>", "wallet_app_client": "<string>", "wallet_plan_type": "<string>" } ], "status": 200, "code": "wallets_get_01" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }
Agregar Contacto de Monedero
POST https://api.smsmasivos.com.mx/wallet/contact/add
Registra un contacto en el monedero digital
Parameters
wallet_keystringrequired
Clave identificadora del monedero
phonestringrequired
Número de teléfono (exactamente 10 dígitos)
customer_namestringrequired
Nombre del contacto
usertool_idintegerrequired
Tool user/collaborator ID
curl https://api.smsmasivos.com.mx/wallet/contact/add \ -d wallet_key=value \ -d phone=value \ -d customer_name=value \ -d usertool_id=100
const Monedero Digital = await sms.monederodigital.create({ wallet_key: 'value', phone: 'value', customer_name: 'value', usertool_id: 100, })
Monedero Digital = sms.monederodigital.create( wallet_key="value", phone="value", customer_name="value", usertool_id=100, )
Monedero Digital, err := client.Monederodigital.Create(ctx, &sms.MonederoDigitalParams{ WalletKey: sms.String("value"), Phone: sms.String("value"), CustomerName: sms.String("value"), UsertoolId: sms.Int(100), })
Response
{ "success": true, "message": "<string>", "status": 200, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }
Obtener Contacto de Monedero
POST https://api.smsmasivos.com.mx/wallet/contact/get
Obtiene el saldo del monedero del contacto
Parameters
wallet_keystringrequired
Clave identificadora del monedero
phonestringoptional
Número de teléfono para filtrar
curl https://api.smsmasivos.com.mx/wallet/contact/get \ -d wallet_key=value \ -d phone=value
const Monedero Digital = await sms.monederodigital.create({ wallet_key: 'value', phone: 'value', })
Monedero Digital = sms.monederodigital.create( wallet_key="value", phone="value", )
Monedero Digital, err := client.Monederodigital.Create(ctx, &sms.MonederoDigitalParams{ WalletKey: sms.String("value"), Phone: sms.String("value"), })
Response
{ "success": true, "message": "<string>", "status": 200, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }
Actualizar Saldo de Monedero
POST https://api.smsmasivos.com.mx/wallet/balance/update
Agrega o resta saldo del monedero de un contacto
Parameters
wallet_keystringrequired
Clave identificadora del monedero
phonestringrequired
Número de teléfono (numérico)
transaction_typeintegerrequired
0=agregar, 1=canjear
transaction_amountnumberrequired
Monto a agregar o restar
curl https://api.smsmasivos.com.mx/wallet/balance/update \ -d wallet_key=value \ -d phone=value \ -d transaction_type=100 \ -d transaction_amount=100
const Monedero Digital = await sms.monederodigital.create({ wallet_key: 'value', phone: 'value', transaction_type: 100, transaction_amount: 100, })
Monedero Digital = sms.monederodigital.create( wallet_key="value", phone="value", transaction_type=100, transaction_amount=100, )
Monedero Digital, err := client.Monederodigital.Create(ctx, &sms.MonederoDigitalParams{ WalletKey: sms.String("value"), Phone: sms.String("value"), TransactionType: sms.Int(100), TransactionAmount: sms.Int(100), })
Response
{ "success": true, "message": "<string>", "status": 200, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }
Registrar Venta en Monedero
POST https://api.smsmasivos.com.mx/wallet/sale
Procesa una transacción/venta de monedero
Parameters
wallet_keystringrequired
Clave identificadora del monedero
phonestringrequired
Número de teléfono
transaction_typeintegerrequired
0=agregar, 1=canjear
usertool_idintegerrequired
Tool user/collaborator ID
transaction_amountnumberoptional
Amount (required if type=0)
curl -X POST https://api.smsmasivos.com.mx/wallet/sale \
-H "Content-Type: application/json" \
-H "apikey: TU_API_KEY" \
-d '{
"wallet_key": "wallet_abc123",
"phone": "525512345678",
"transaction_type": 0,
"usertool_id": 1,
"transaction_amount": 100.00
}'
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.smsmasivos.com.mx/wallet/sale');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'apikey: ' . getenv('SMSMASIVOS_API_KEY')
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'wallet_key' => 'wallet_abc123',
'phone' => '525512345678',
'transaction_type' => 0,
'usertool_id' => 1,
'transaction_amount' => 100.00
]));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
import requests
response = requests.post(
'https://api.smsmasivos.com.mx/wallet/sale',
headers={
'Content-Type': 'application/json',
'apikey': 'TU_API_KEY'
},
json={
'wallet_key': 'wallet_abc123',
'phone': '525512345678',
'transaction_type': 0,
'usertool_id': 1,
'transaction_amount': 100.00
}
)
print(response.json())
const response = await fetch('https://api.smsmasivos.com.mx/wallet/sale', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'apikey': process.env.SMSMASIVOS_API_KEY
},
body: JSON.stringify({
wallet_key: 'wallet_abc123',
phone: '525512345678',
transaction_type: 0,
usertool_id: 1,
transaction_amount: 100.00
})
});
const data = await response.json();
console.log(data);
const axios = require('axios');
const { data } = await axios.post(
'https://api.smsmasivos.com.mx/wallet/sale',
{
wallet_key: 'wallet_abc123',
phone: '525512345678',
transaction_type: 0,
usertool_id: 1,
transaction_amount: 100.00
},
{
headers: {
'Content-Type': 'application/json',
'apikey': process.env.SMSMASIVOS_API_KEY
}
}
);
console.log(data);
require 'net/http'
require 'json'
uri = URI('https://api.smsmasivos.com.mx/wallet/sale')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path, {
'Content-Type' => 'application/json',
'apikey' => ENV['SMSMASIVOS_API_KEY']
})
request.body = {
wallet_key: 'wallet_abc123',
phone: '525512345678',
transaction_type: 0,
usertool_id: 1,
transaction_amount: 100.00
}.to_json
response = http.request(request)
puts JSON.parse(response.body)
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("apikey", "TU_API_KEY");
var payload = new
{
wallet_key = "wallet_abc123",
phone = "525512345678",
transaction_type = 0,
usertool_id = 1,
transaction_amount = 100.00
};
var response = await client.PostAsJsonAsync(
"https://api.smsmasivos.com.mx/wallet/sale",
payload
);
var result = await response.Content.ReadFromJsonAsync<JsonElement>();
Console.WriteLine(result);
OkHttpClient client = new OkHttpClient();
String json = "{"
+ "\"wallet_key\":\"wallet_abc123\","
+ "\"phone\":\"525512345678\","
+ "\"transaction_type\":0,"
+ "\"usertool_id\":1,"
+ "\"transaction_amount\":100.00"
+ "}";
Request request = new Request.Builder()
.url("https://api.smsmasivos.com.mx/wallet/sale")
.post(RequestBody.create(json, MediaType.parse("application/json")))
.addHeader("apikey", "TU_API_KEY")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
Response
{ "success": true, "message": "<string>", "status": 200, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }