Overview

Book worldwide. Earn every time you travel.
What is The Marinas
The Marinas is a crypto native travel platform built for people who already hold assets on Robinhood Chain. Search real hotels, pay with USDG, ETH, CASHCAT, TSLA, NVDA, or AMZN, and get confirmed stays without juggling five different apps.
We aggregate inventory across travel partners so you see competitive rates in one place. Confirmations arrive by email. Trips and earnings live in your account. Flights are coming soon.



Why it is different
Most travel sites take your payment and send a receipt. Marinas turns every booking into ownership. You earn $MARI cashback on stays. That balance stacks toward stock rewards funded by a 3% tax on $MARI trades. Travel pulls you back. Holding keeps you aligned.
Book travel
Hotels
Search millions of properties: Marriott, Hilton, Hyatt, boutique hotels, beach villas, and unique stays. Filter by pool, breakfast, ocean view, or free cancellation. Pick your room, enter guest details, and checkout.
Best price
We pull rates from different travel services and surface them in one search so you can compare without tab hopping. Same stay, best offer wins. No markups hidden in fine print.
Travala
Inventory and confirmations run through Travala, a crypto native travel network with 2M+ properties worldwide. Your booking reference and email confirmation come from a real travel partner, not a middleman spreadsheet.
Payments
Supported assets
Connect your Robinhood wallet and pay with what you already hold.
USDG
ETH
CASHCAT
TSLA
NVDA
AMZN
Stock checkout is live for TSLA, NVDA, and AMZN. Those tokens swap to USDG on Robinhood Chain, then bridge like a normal stay. AAPL, MSFT, and GOOGL are coming soon.
Checkout
- Search by city, dates, and guests.
- Compare room types and cancellation policies.
- Sign once to pay from your Robinhood wallet with USDG, ETH, CASHCAT, TSLA, NVDA, or AMZN. A 1.3% processing fee is added at checkout. Confirmed stays earn 0.5% back in $MARI.
- Receive confirmation by email within minutes.
Agents
Book stays from Claude (or any MCP client) through The Marinas. Your keys are not revealed to Claude. Payments use your Para wallet on Robinhood Chain — the same embedded wallet you use on this site.
Book with an agent
- Connect once: the agent opens a Marinas link; you sign in with Para (email).
- Ask for a location, dates, and budget (max USD) — the agent searches real inventory.
- It quotes the stay. You confirm the dollar amount in chat.
- Marinas signs the Relay payment with your linked Para session. The executor finishes Travala the same way as website checkout. Check your email for the Travala confirmation.
- Say “disconnect my Marinas wallet” anytime to revoke the linked session (or remove the connector in Claude Settings).
Connect Claude
In Claude → Connectors → add a custom connector with this MCP URL:
https://mcp.themarinas.fun/api/mcp
Then say “connect my Marinas wallet” and open the link it returns.
Para wallets
Claude only calls Marinas tools (search, quote, pay after you confirm). Signing happens through Para — your email-authenticated wallet on Robinhood Chain. Claude does not see or receive your private keys; it never holds wallet seed material.
API
Partner API for embedding hotel booking in your product. Travellers pay from their own Robinhood wallet. Confirmed stays earn 0.5% cashback in the token tied to your API key.
Base URL: https://themarinas.fun
All partner endpoints are JSON. Dates are YYYY-MM-DD. Amounts are USD numbers unless marked atomic (6 decimals for USDC).
Get access
Message @themarinas_portal with your project name and the ERC-20 contract address on Robinhood Chain that travellers should receive as cashback. You get a secret key starting with mk_. Store it server-side only — it is shown once.
Auth
Send the key on every partner request using either header:
Authorization: Bearer mk_your_key_here # or x-api-key: mk_your_key_here
Hotel search and packages do not require the key. /api/partner/* endpoints do. Missing or invalid key → 401.
Booking flow
- Search hotels → pick a hotel + keep sessionId
- Packages for that hotel → pick a room packageId and USD price
- Pay — POST /api/partner/pay with wallet + guest + package → receive unsignedTxs
- Traveller signs and broadcasts each tx on Robinhood Chain (chain id 4663)
- Poll status until status: "booked". Travala emails the voucher to the guest.
You never hold the traveller's private key. We insert a processing booking when you call pay; our executor books Travala after Base USDC lands in treasury.
GET /api/partner/me
Validate your key and read cashback token + Uniswap pool (v2 or v3).
curl https://themarinas.fun/api/partner/me \ -H "Authorization: Bearer mk_…"
200 response
{
"ok": true,
"partnerId": "uuid",
"partnerName": "YourApp",
"apiKeyId": "uuid",
"keyPrefix": "mk_9035c72",
"label": null,
"cashbackToken": "0x6662…7777",
"pool": {
"address": "0x1650…dafA",
"fee": 0,
"source": "cached"
},
"note": "Travellers receive cashback in cashbackToken. Pass this API key on pay."
}pool.fee is the Uniswap v3 fee tier, or 0 for a Uniswap v2 pair. source is cached, dex, or the pool object is null if none found.
GET /api/hotels/search
No partner key required. Same inventory as the website.
Query
location string required e.g. "Lisbon" or "Bali, Indonesia" checkIn date required YYYY-MM-DD checkOut date required must be after checkIn adults number optional default 2 lat,lng number optional bias search minPrice number optional USD maxPrice number optional USD filter string optional amenity id (repeatable)
curl "https://themarinas.fun/api/hotels/search?location=Lisbon&checkIn=2026-10-01&checkOut=2026-10-04&adults=2"
200 response (shape)
{
"location": "Lisbon",
"checkIn": "2026-10-01",
"checkOut": "2026-10-04",
"sessionId": "travala-session-…",
"hotels": [
{
"id": "hotel-id",
"name": "Hotel Name",
"image": "https://…",
"location": "Lisbon, Portugal",
"priceUsd": 240.5,
"sessionId": "travala-session-…",
…
}
]
}Keep sessionId from the search (or from the chosen hotel) for the packages call.
GET /api/hotels/packages
Query
hotelId string required sessionId string recommended from search checkIn date optional if session carries dates checkOut date optional adults number optional
curl "https://themarinas.fun/api/hotels/packages?hotelId=HOTEL_ID&sessionId=SESSION&checkIn=2026-10-01&checkOut=2026-10-04"
200 response
{
"hotelId": "HOTEL_ID",
"sessionId": "travala-session-…",
"packages": [
{
"packageId": "pkg_…",
"roomName": "Deluxe Double",
"totalPriceUsd": 312.4,
"perNightUsd": 104.13,
…
}
]
}Pass packageId, the returned sessionId, and totalPriceUsd into pay as amountUsd.
POST /api/partner/pay
Creates a processing booking and returns unsigned Relay payment transactions for the traveller to sign. Requires partner key. Content-Type: application/json.
Request body
{
"walletAddress": "0xTravellerOnRobinhood…",
"asset": "USDG",
"amountUsd": 312.4,
"packageId": "pkg_…",
"sessionId": "travala-session-…",
"hotelId": "HOTEL_ID",
"hotelName": "Hotel Name",
"hotelImage": "https://…",
"location": "Lisbon, Portugal",
"roomName": "Deluxe Double",
"checkIn": "2026-10-01",
"checkOut": "2026-10-04",
"nights": 3,
"customer": {
"firstName": "Ada",
"lastName": "Lovelace",
"email": "ada@example.com",
"phone": "+15551234567"
}
}Required: walletAddress, amountUsd, packageId, sessionId, and full customer. asset defaults to USDG. Allowed: USDG, ETH, CASHCAT, TSLA, NVDA, AMZN.
curl https://themarinas.fun/api/partner/pay \
-H "Authorization: Bearer mk_…" \
-H "Content-Type: application/json" \
-d '{ …body above… }'200 response
{
"ok": true,
"mode": "unsigned",
"bookingId": "uuid",
"relayRequestId": "0x…",
"expectedUsdcAtomic": "312400000",
"expectedUsdc": 312.4,
"cashbackToken": "0x6662…7777",
"payAsset": "USDG",
"currencyIn": { … },
"unsignedTxs": [
{
"stepId": "…",
"action": "…",
"description": "…",
"chainId": 4663,
"to": "0x…",
"data": "0x…",
"value": "0",
"from": "0xTraveller…"
}
],
"steps": [ … ],
"next": "Have the user sign+broadcast unsignedTxs from their wallet. Executor books Travala when Base USDC lands in treasury."
}For each item in unsignedTxs, submit a wallet tx: { to, data, value, chainId }. Sign in order. Do not change to / data.
GET /api/partner/pay/status
Poll until the stay confirms. Requires partner key. You only see bookings created with your key.
curl "https://themarinas.fun/api/partner/pay/status?bookingId=BOOKING_UUID" \ -H "Authorization: Bearer mk_…"
200 response
{
"ok": true,
"bookingId": "uuid",
"status": "processing",
"walletAddress": "0x…",
"cashbackToken": "0x6662…7777",
"travalaBookingId": null,
"relayRequestId": "0x…",
"relayStatus": "pending",
"expectedUsdcAtomic": "312400000",
"depositTxHash": null,
"errorMessage": null
}status values you will see: processing (waiting for payment / booking), booked (confirmed — check travalaBookingId), failed (see errorMessage). Poll every few seconds after the user broadcasts.
Traveller cashback
Your key locks cashback to cashbackToken. Rate is 0.5% of the stay USD, paid to the traveller's wallet in that token (not a partner rebate). Payouts run in a daily batch after the stay is booked.
Errors
Failures return JSON { "error": "message" } with HTTP status:
- 400 — missing / invalid body or query
- 401 — missing / invalid API key
- 404 — booking not found (or not yours)
- 502 — upstream quote / inventory failure
- 500 — unexpected server error
$MARI rewards
When you book on Marinas, you get $MARI cashback on confirmed stays. That $MARI stays in your wallet and counts toward holder rewards, including stock rewards paid from the 3% tax on $MARI trades.
- 1
Book a stay
Search hotels and pay at checkout with USDG, ETH, CASHCAT, or stock tokens (TSLA, NVDA, AMZN) from your Robinhood wallet. CASHCAT is swapped to ETH and stocks to USDG, then bridged. A 1.3% processing fee is added. Flights are not available yet.
- 2
Get $MARI cashback
After your stay is confirmed, you receive 0.5% of the booking value back in $MARI. Pending and confirmed amounts show on your Earnings page.
- 3
Balance adds up
Each booking adds $MARI to your wallet. The total goes up the more you book through Marinas. There is no separate step. It is just the sum of your past stays.
- 4
Stock rewards
$MARI holders can receive stock rewards. A 3% tax on every $MARI buy and sell is collected and redistributed to holders. If you earned $MARI from bookings, you hold more and receive a larger share. Rewards include exposure to stocks such as Apple, Tesla, and NVIDIA.
See your $MARI balance and stay rewards on Earnings.
Search hotelsStock rewards
3% tax
Every $MARI buy and sell carries a 3% tax. That tax does not sit in a drawer. It gets redistributed to $MARI holders as stock rewards.
Holder pool
Not coupon points. Not expiring miles. Real exposure to leading public names, including Apple, Tesla, Nvidia, Microsoft, Alphabet, Amazon. The more $MARI you earn by booking through Marinas, the larger your share of that pool over time.
Why it compounds
Anyone can list hotels. Few can build a loop where travel feeds token ownership, token ownership feeds stock rewards, and stock rewards keep holders around for the next trip. Book more, earn more, qualify for more. That loop gets harder to copy the longer it runs.
Help & Support
Reach out
For questions about The Marinas, payments, wallets, or $MARI, join Telegram. That is the fastest way to reach us.
After your booking
Once a stay confirms, Travala emails the voucher to the guest address you entered at checkout. That email includes the order number and Travala's support handle. For changes, cancellations, hotel issues, or voucher questions, reach out there and include the order number. Hover the order number on Trips and click the copy icon.
Travala support is typically support@travala.com, with 24/7 chat on help.travala.com. We cannot change a reservation after it is issued.