Montos y fechas
Montos como texto decimal, monedas y zona horaria.
Los montos son texto decimal, nunca números: "1500.00". Las fechas son ISO 8601 en UTC. Los números de punto flotante pierden centavos; el texto no.
Montos
- Hasta dos decimales.
"1500","1500.5"y"1500.50"son válidos. - Sin ceros a la izquierda, signo ni separadores de miles.
- CLP, JPY y PYG no llevan decimales: enviarlos responde
400 invalid_request. - En respuestas, un monto de salida puede ser negativo o traer más decimales. Sin ceros de relleno y con mínimo dos decimales:
"1500000.555","10.00". - Monto y moneda llegan juntos: sin moneda segura, ambos son
null.
Monedas
Códigos en mayúsculas de 3 a 5 letras, como MXN, USD o USDC.
Fechas
UTC con milisegundos: 2026-11-04T18:00:00.000Z. El created_at del sobre de un webhook trae microsegundos: interpreta las fechas como ISO 8601, sin fijar el número de decimales. Convierte a tu zona al mostrarlas. Los filtros from y to de GET /v1/movements usan el mismo formato; from se incluye y to no.
Campos que pueden ser nulos
Muchos campos de respuesta son null cuando el dato aún no existe. Un final_amount nulo no significa cero.
Errores comunes
- Serializar el monto como número en JSON: responde
400 invalid_request. - Comparar montos como texto:
"10.00"y"10.000"son iguales. Conviértelos a un tipo decimal. - Asumir exactamente dos decimales en una respuesta.