Crear suscripción a plan de ahorro
Para crear una suscripción a un plan de ahorro se debe realizar el siguiente request:
POST
/v1/savings/business/account-investment-plansRequest
El body debe enviarse en snake_case.
Headers
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
Authorization | string | Sí | Token de acceso en formato Bearer ACCESS_TOKEN |
Content-Type | string | Sí | Debe ser application/json |
No aplica: Path Parameters, Query Parameters.
Body
Identificador de cuenta según moneda del plan
Se debe proveer exactamente uno de los campos cvu o account_number, según la moneda del plan:
- Planes en ARS: enviar
cvu - Planes en USD: enviar
account_number
Enviar ambos campos o ninguno resultará en un error de validación.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
cvu | number | Condicional | CVU de la cuenta. Requerido para planes en pesos (ARS). |
account_number | number | Condicional | Número de cuenta. Requerido para planes en dólares (USD). |
subscription_name | string | No | Nombre de la suscripción. |
plan_id | number | Sí | Identificador del plan. |
merchant | string | Sí | Identificador del merchant. |
target_amount | number | Sí | Monto objetivo del plan. |
Response
2XX Éxito
| Campo | Tipo | Descripción |
|---|---|---|
id | number | ID de la suscripción creada. |
message | string | Mensaje confirmando el resultado de la operación. |
Códigos de error
Los errores devuelven el siguiente body:
{
"code": "invalid_request",
"description": "Descripción del error."
}
| Status | Code | Condición |
|---|---|---|
400 | invalid_request | La cuenta ya tiene una suscripción activa al plan especificado. |
400 | invalid_request | El campo merchant no fue enviado en el request. |
400 | invalid_request | La cuenta no tiene una aceptación de términos y condiciones sin usar para este plan. Aceptarlos primero usando el endpoint Aceptar términos y condiciones con el mismo plan_id (cada suscripción requiere su propia aceptación). |
400 | plan_not_accessible | El plan especificado no es accesible para el merchant autenticado. |
403 | — | El token no tiene el rol requerido para operar este endpoint. |
Ejemplo de código
- cURL (ARS)
- cURL (USD)
- JavaScript
- Python
- Node.js
curl -X POST https://b2b.allaria.dev/v1/savings/business/account-investment-plans \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cvu": 0000003100010000000001,
"subscription_name": "Plan de ahorro mensual",
"plan_id": 10,
"merchant": "string",
"target_amount": 250000.00
}'
curl -X POST https://b2b.allaria.dev/v1/savings/business/account-investment-plans \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"account_number": 12345678,
"subscription_name": "Plan de ahorro mensual",
"plan_id": 20,
"merchant": "string",
"target_amount": 1000.00
}'
const response = await fetch('https://b2b.allaria.dev/v1/savings/business/account-investment-plans', {
method: 'POST',
headers: {
'Authorization': 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
// Para planes en ARS usar cvu, para USD usar account_number
cvu: 0000003100010000000001,
subscription_name: 'Plan de ahorro mensual',
plan_id: 10,
merchant: 'string',
target_amount: 250000.00
})
});
const data = await response.json();
console.log(data);
import requests
response = requests.post(
'https://b2b.allaria.dev/v1/savings/business/account-investment-plans',
headers={
'Authorization': 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
},
json={
# Para planes en ARS usar cvu, para USD usar account_number
'cvu': 0000003100010000000001,
'subscription_name': 'Plan de ahorro mensual',
'plan_id': 10,
'merchant': 'string',
'target_amount': 250000.00
}
)
data = response.json()
print(data)
const axios = require('axios');
const response = await axios.post(
'https://b2b.allaria.dev/v1/savings/business/account-investment-plans',
{
// Para planes en ARS usar cvu, para USD usar account_number
cvu: 0000003100010000000001,
subscription_name: 'Plan de ahorro mensual',
plan_id: 10,
merchant: 'string',
target_amount: 250000.00
},
{
headers: {
Authorization: 'Bearer ACCESS_TOKEN',
'Content-Type': 'application/json'
}
}
);
console.log(response.data);
2XX Éxito
{
"id": 1,
"message": "Subscription created successfully"
}