Cómo conectar X a Merez: OAuth 2.0 y costo por post
Conecta X a Merez con OAuth 2.0 y publica desde el módulo de Publicación. Incluye callback, permisos y el costo real por post con y sin enlace.
8 de noviembre de 2026 · 8 min de lectura

Vas a conectar la cuenta de X de tu negocio a Merez para publicar desde el módulo de Publicación. Se hace con OAuth 2.0: un Client ID y un Client Secret de una app tipo Web App, permisos de lectura y escritura, y una dirección de vuelta registrada. Si dejas los campos vacíos, Merez no llama a X: la pieza llega como tarea para publicar a mano y en X no pagas nada.
Qué necesitas antes de empezar
X es más corto de configurar que Meta, pero más caro de operar. Antes de empezar, ten listo esto.
- Cuenta de X y acceso al portal de desarrolladores. La app se crea en la consola de desarrolladores; sin ese acceso no hay Client ID ni Client Secret.
- Una app tipo Web App. Es un cliente confidencial: puede guardar el secreto en el servidor y por eso recibe Client Secret. Las tipo Native App y Single Page App son clientes públicos y no lo tienen.
- OAuth 2.0 habilitado en la configuración de autenticación de la app. Si la app quedó en OAuth 1.0a, el Client ID no aparece.
- Permisos de lectura y escritura. En OAuth 2.0 se piden por alcance: tweet.read, tweet.write, users.read y offline.access, este último para obtener token de refresco.
- Créditos de API. X cobra por uso y descuenta de un saldo. Sin crédito, las peticiones se bloquean.
- Quién lo hace. Dueño o administrador de la app en X; en Merez, alguien con administración del sitio y el módulo de Publicación activo.
Las credenciales, una por una
Son dos datos y tres ajustes. Los nombres van como los muestra X.
| Campo | Qué es | Dónde se consigue exactamente |
|---|---|---|
| Client ID | Identifica la app en el flujo OAuth 2.0. Es público y viaja en la URL de autorización. | Consola de desarrolladores, tu app, «Keys and tokens», bajo el encabezado «Client ID». Solo aparece si la app está en OAuth 2.0. |
| Client Secret | Llave privada del cliente confidencial. Con ella el servidor canjea el código por un token. | Justo debajo del Client ID. Si no lo ves, la app no es confidencial: cámbiala a Web App. |
| Tipo de app | Web App, cliente confidencial con secreto. Es el tipo que Merez necesita. | Se elige al configurar OAuth 2.0 en la app, dentro de la consola. |
| Callback URL | Dirección a la que X devuelve la autorización. Debe coincidir exactamente, con protocolo y barras. | «Callback URLs» en la configuración de autenticación de la app. Debe ser https://api.merez.co/api/v1/content/x/callback. Máximo 10 direcciones por app. |
| Permisos | tweet.read, tweet.write, users.read y offline.access. Sin tweet.write no se publica. | En la configuración de autenticación de la app y en la URL de autorización que arma Merez. |
Dónde se pega cada cosa
El Client ID y el Client Secret van en Merez, en el módulo de Publicación, en la integración de X. Los pegas, guardas y pulsas Conectar. La callback no se pega en Merez: se registra en X. La coincidencia es exacta; una barra final de más rompe el flujo. Para pruebas locales, X exige http://127.0.0.1 y no localhost.
Simulación de uso: de la plataforma a Merez
Caso: Muebles Ríos, un taller de Bogotá, quiere avisar el catálogo nuevo. Su cuenta es @mueblesrios.
- En X. El dueño crea la app, la deja como Web App, registra la callback, habilita OAuth 2.0 con lectura y escritura y copia Client ID y Client Secret. Los guarda en un lugar seguro: el secreto no se vuelve a mostrar completo.
- En Merez. Pega el par en la integración de X, guarda y pulsa Conectar.
- La autorización. X muestra la pantalla de permisos con la cuenta que va a autorizar: leer y publicar posts en su nombre. Al aceptar, vuelve a Merez y el estado queda en «Conectado» con @mueblesrios.
- La pieza. Se arma el texto con el enlace a https://mueblesrios.co/catalogo y se programa para las 9:00. Queda en «Programada».
- La publicación. A las 9:00 Merez hace la petición de creación de post, X responde con el identificador y la pieza pasa a «Publicada».
- La factura. Ahí llega la sorpresa: el post llevaba enlace, así que X cobró 0,200 USD; sin enlace habría cobrado 0,015 USD.
El costo no es un detalle menor. La tarifa publicada por X a la fecha de esta guía es de 0,015 USD por petición de creación de post y 0,200 USD cuando el post incluye un enlace: el enlace cuesta 13,3 veces más. Con veinte posts al mes, sin enlace son 0,30 USD y con enlace son 4,00 USD. Con cien, 1,50 USD contra 20,00 USD. El cobro lo hace X al dueño de la app, contra los créditos que tenga en la consola.
Las variantes que importan: si el token de acceso venció, dura dos horas cuando no se pidió offline.access, X responde con un error de autorización y hay que reconectar. Si falta tweet.write, la publicación se rechaza por permisos. Y si el saldo de créditos llegó a cero o quedó negativo, X bloquea las peticiones hasta que se recargue, aunque todo lo demás esté bien.
Si dejas los campos vacíos, no hay petición, no hay token y no hay cobro: la pieza entra a la cola como tarea para publicar a mano desde la app de X. Para un negocio que publica tres veces por semana, esa puede ser la decisión más rentable.
Los permisos los otorga X, no Merez. Y la factura de la API también es de X y del comercio: Merez solo ejecuta la publicación que autorizaste.
Cómo comprobar que quedó bien
- Estado y cuenta. Después de Conectar, Merez debe mostrar el identificador de la cuenta autorizada. Si aparece otra cuenta, la personal de quien configuró, desconecta y repite desde la sesión correcta.
- Primera prueba barata. Publica una pieza de prueba sin enlace. Cuesta 0,015 USD y confirma el circuito completo sin pagar la tarifa de enlace.
- Míralo en X. Abre el perfil en x.com desde una ventana sin sesión. Si no está ahí, no se publicó.
- Guarda el identificador. La pieza en Merez debe conservar el identificador que devolvió X; con él se puede auditar o borrar.
- Mide el consumo. La consola muestra el gasto y el endpoint de uso devuelve el consumo diario de posts. Revisa el saldo después de la prueba.
- Prueba con enlace, aparte. Cuando el circuito simple funcione, publica una pieza con enlace y verifica que el cobro coincide con la tarifa de enlace.
Errores frecuentes
| Síntoma | Causa probable | Qué hacer |
|---|---|---|
| Al autorizar, X responde «Callback URL not approved for this client application». | La callback no está registrada o difiere en un carácter, el protocolo o una barra final. | Registrarla exacta, en https, sin barra sobrante, y reintentar. |
| No aparece el Client Secret en la consola. | La app es Native App o Single Page App, que son clientes públicos sin secreto. | Configurarla como Web App y generar de nuevo las credenciales. |
| Todo funciona y a las dos horas falla la publicación con error de autorización. | El token de acceso dura dos horas si no se pidió offline.access. | Reconectar y asegurar que el alcance offline.access se concedió, para que Merez pueda refrescar. |
| La publicación se rechaza por permisos. | Falta tweet.write, o el usuario autorizó solo lectura. | Volver a autorizar con lectura y escritura. Cambiar permisos obliga a que el usuario autorice otra vez. |
| El post no sale y no hay error de permisos. | Saldo de créditos en cero o negativo: X bloquea las peticiones. | Recargar créditos o activar la recarga automática en la consola. |
| El gasto del mes se disparó sin publicar mucho más. | Casi todas las piezas llevaban enlace, a 0,200 USD en vez de 0,015 USD. | Reservar el enlace para lo que lo necesite, poner un límite de gasto y revisar el consumo semanal. |
Límites y buenas prácticas
- Lo que Merez no hace. No otorga permisos, no paga la API, no compra verificación, no evade límites de tasa y no publica si no hay credenciales. Tampoco decide el contenido.
- Límites de tasa. La creación de posts admite 100 peticiones por 15 minutos por usuario y 10.000 por 24 horas por app. Al pasarse, X responde con el código 429.
- Precio cambiante. La tarifa de 0,015 y 0,200 USD es la publicada al 7 de noviembre de 2026. X advierte que los precios cambian y que la referencia vigente es la consola y su página de precios; revísala antes de presupuestar.
- Tokens y permisos. El token dura dos horas; el refresco llega con offline.access. Si cambias los permisos de la app, todos los usuarios deben autorizar de nuevo.
- Seguridad. Una app por entorno, credenciales rotadas y el secreto fuera del navegador. El Client Secret es tan sensible como una contraseña.
- Control de gasto. Define un límite de gasto por ciclo y activa alertas. Un pico de publicaciones con enlace se ve en la factura, no en el timeline.
Guía visual
Los seis pasos, de un vistazo
El recorrido completo sin abrir la plataforma. Cada paso corresponde a un tramo de la guía de arriba.
Paso 1 de 6
Crea la app Web App
developer.x.com: cliente confidencial, con secreto.
Paso 1 de 6: Crea la app Web App
Preguntas frecuentes
¿Cuánto cuesta publicar en X desde Merez?
Según la tarifa publicada por X al 7 de noviembre de 2026, 0,015 USD por petición de creación de post y 0,200 USD si el post incluye un enlace. El cobro lo hace X al dueño de la app, contra los créditos de la consola. Verifica la tarifa vigente antes de presupuestar.
¿Qué pasa si dejo los campos de X vacíos?
Merez no llama a la API: la pieza entra como tarea para publicar a mano desde la app de X. No hay consumo de créditos ni cobro de X, pero tampoco hay publicación automática ni confirmación de estado.
¿Por qué no me aparece el Client Secret?
Porque la app es de un tipo que no es cliente confidencial. Native App y Single Page App son clientes públicos y no reciben secreto. Merez necesita el par completo, así que la app debe ser Web App.
¿Cada cuánto hay que reconectar X en Merez?
El token de acceso dura dos horas. Con el alcance offline.access Merez obtiene un token de refresco y renueva sin molestar. Si el usuario revoca la app o cambias los permisos, hay que volver a conectar.
¿Merez paga la API de X?
No. Merez ejecuta la publicación con las credenciales del comercio, pero los créditos y la factura son de la cuenta de desarrollador del comercio. Tú controlas el saldo, el límite de gasto y decides cuándo usar enlaces.
Fuentes

Escrito y revisado por Miguel Yañez
Fundador de Merez. Estas guías salen de operar negocios reales, no de la documentación del proveedor.
Quién construye Merez →Ponlo a prueba con tu negocio
15 días gratis, sin tarjeta. Si prefieres hablar primero, el asesor arma la solución contigo.