Airbnb, Booking.com, VRBO, Plumguide. Doze plataformas PMS. Mais reserva direta. O Repull é o channel manager e o agregador de PMS num só — e o template inteiro é open source.
A forma do problema
Os players incumbentes obrigam-te a adotar o schema deles, a UI deles e a relação de billing deles com os teus utilizadores. O Repull inverte isso — o teu schema, a tua UI, o teu billing. Nós tratamos só dos adapters dos canais.
Envia listings, fotos, calendários, tarifas e mensagens para Airbnb, Booking.com, VRBO e Plumguide através de um schema. Vinte e seis endpoints Airbnb, onze endpoints Booking, à mão de semear.
Hostaway, Guesty, Cloudbeds, Mews, OwnerRez — liga uma vez, lê com a mesma forma seja qual for a plataforma upstream. Os adapters de PMS também são open source.
O Repull normaliza tudo num schema sensato por defeito. Se o teu for diferente, define-o uma vez no Custom Schema Builder, define o header X-Schema e cada resposta volta nos teus nomes de campos.
Exemplo prático
O repull-channel-manager é a app Next.js completa — calendário, reservas, ligações, mensagens, reviews — a correr na API do Repull. As features AI lá dentro correm em Vanio AI. Faz clone, aponta-o para o teu próprio workspace Repull e tens um channel manager a funcionar hoje.
Um git clone, um npm install e um ficheiro .env com a tua API key Repull. O deploy na Vercel é um clique a seguir.
Cada cliente teu tem o seu próprio workspace Repull — API keys com scope, dados com scope. A tua app é a camada multi-tenant por cima.
Grelha do calendário, drawer de reserva, inbox de mensagens, fluxo de aprovação de reviews — cada ecrã é teu para estender. A camada de dados fica; a UI é tua.
git clone https://github.com/ivannikolovbg/repull-channel-manager cd repull-channel-manager npm install cp .env.example .env.local # add REPULL_API_KEY + REPULL_WORKSPACE_ID npm run dev
// api(): fetch on api.repull.dev with your API key
// Create the listing once in Repull
const listing = await api('/v1/listings', {
method: 'POST',
body: JSON.stringify({
name: 'Lakeview Loft',
city: 'Radium Hot Springs',
countryCode: 'CA',
bedrooms: 2,
bathrooms: 1,
}),
})
// Then publish it to each connected channel
await api(`/v1/listings/${listing.id}/publish/airbnb`, { method: 'POST' })
await api(`/v1/listings/${listing.id}/publish/booking`, { method: 'POST' })Porque é que o open source importa aqui
Os conectores do Repull vivem em aberto. Se um dia deixássemos de existir, ainda terias o código que fala com o Airbnb. É uma escolha deliberada, não uma frase de marketing.
Cada adapter é open source no GitHub. O template do channel manager é open source. Os SDKs são open source. Podes fazer fork ao stack inteiro.
Vê exatamente como o Repull fala com o Airbnb. Reporta um bug, manda um PR ou copia uma função. O código é a documentação.
Issues, releases e roadmap vivem no GitHub. Pedidos de novos conectores entram em PR review na mesma semana.
Uma API key em 30 segundos. Liga um PMS ou anuncia em direto, e cada canal está a uma chamada de escrita de distância.