GolfGlobe365 GAMP
Outbound Integration

Publishing Golf Data to Blockchain

Publishing Golf Data to Blockchain

Outbound Integration: GG365 → Blockchain Partners

Learn how to publish your golf course availability and pricing to Camino Network, making it accessible to blockchain travel platforms and dApps.


🎯 Overview

Publishing golf data to blockchain enables:

  • Decentralized Distribution - Share availability with blockchain travel platforms
  • Real-Time Updates - Automatic sync of availability and pricing
  • Smart Contract Bookings - Accept bookings from external dApps
  • Global Reach - Access worldwide blockchain travel ecosystem

📊 What Data is Published?

Golf Club Profile (GG365ClubRegistry)

  • Club Information: Name, description, verification status
  • Physical Address: Street, city, state, postal code, country code (ISO 3166-1 alpha-2)
  • Geographic Coordinates: Latitude and longitude in microdegrees
  • Contact Details: Email, phone, website, booking URLs
  • Media Assets: Logo, course images, facility photos (IPFS URLs)
  • Operating Hours: Open/close times for each day of the week
  • Amenities: Driving range, restaurant, spa, hotel, etc. (12+ flags)
  • Wallet Address: On-chain identity for payments

Course Information

  • Course Details: Name, holes (9 or 18), par, length in meters
  • Difficulty Level: Beginner, Intermediate, Advanced, Championship
  • Course Type: Links, Parkland, Desert, Mountain, etc.
  • Architect: Course designer name
  • Features: Water hazards, bunkers, signature holes
  • Tee Colors: Available tee box colors

Availability (Real-Time)

  • Tee time slots with timestamps
  • Dynamic pricing per slot
  • Player capacity and restrictions
  • Weather-based availability

Booking Rules

  • Cancellation policies (enforced by smart contract)
  • Payment terms (CAM, USDC, DAI accepted)
  • Commission structures (configurable on-chain)

🔗 Publishing Methods

Method 1: Register Club on Blockchain (One-Time)

JavascriptCode
import { CaminoMessengerClient } from '@gg365/blockchain-sdk'; const camino = new CaminoMessengerClient({ network: 'camino', rpcUrl: 'https://columbus.camino.network/ext/bc/C/rpc', wallet: yourWallet }); await camino.initialize( process.env.CONTRACT_CLUB_REGISTRY, process.env.CONTRACT_CAMINO_MESSENGER, { registry: registryABI, messenger: messengerABI } ); // Register golf club on-chain const clubId = await camino.registerServiceProvider({ name: 'Your Golf Club Name', description: 'Championship 18-hole golf course', serviceType: 'golf', address: { street: '123 Golf Course Road', city: 'Marbella', state: 'Andalusia', postalCode: '29600', countryCode: 'ES', latitude: 36.5141, longitude: -4.8850 }, contact: { email: '[email protected]', phone: '+34123456789', website: 'https://yourgolfclub.com' }, media: { logo: 'ipfs://Qm.../logo.jpg', images: ['ipfs://Qm.../course1.jpg', 'ipfs://Qm.../course2.jpg'] }, walletAddress: '0x...' }); console.log('Club registered on-chain with ID:', clubId);

Method 2: Add Courses to Club

JavascriptCode
// Add 18-hole championship course await camino.publishProduct({ providerId: clubId, name: 'Championship Course', description: 'Our signature 18-hole championship layout', category: 'Championship', price: { amount: 150, currency: 'EUR' }, availability: { startDate: new Date('2025-01-01'), endDate: new Date('2025-12-31'), slots: 48 // Daily tee times }, metadata: { holes: 18, par: 72, length: 6500, difficulty: 'Championship', courseType: 'Links' } }); console.log('Course published to Camino Messenger');

Method 3: Update Club Media (IPFS)

JavascriptCode
// Update club logo and course images const txHash = await camino.updateProviderMedia( clubId, 'ipfs://Qm.../new-logo.jpg', [ 'ipfs://Qm.../course1.jpg', 'ipfs://Qm.../course2.jpg', 'ipfs://Qm.../course3.jpg' ], [ 'ipfs://Qm.../clubhouse.jpg', 'ipfs://Qm.../restaurant.jpg' ] ); console.log('Media updated, transaction:', txHash);

🌍 Geographic Search & Discovery

Making Your Club Discoverable

Once registered on-chain, your club becomes searchable by location and amenities:

JavascriptCode
// Search clubs by country (ISO 3166-1 alpha-2) const spanishClubs = await camino.searchProvidersByCountry('ES', 50); console.log(`Found ${spanishClubs.length} golf clubs in Spain`); // Search clubs by location (radius search) const nearbyClubs = await camino.searchProvidersByLocation({ latitude: 36.5141, // Microdegrees stored on-chain longitude: -4.8850, radiusKm: 50 }); // Search clubs by amenities const luxuryClubs = await camino.searchProviders({ hasHotel: true, hasSpa: true, hasRestaurant: true, verificationStatus: 'Verified' });

Verification Status

Your club goes through a verification workflow:

JavascriptCode
// Check club verification status const clubInfo = await camino.getClubInfo(clubId); console.log('Status:', clubInfo.verificationStatus); // Possible values: Unverified → Pending → Verified → (or Suspended) // Request verification after registration await camino.requestVerification(clubId);

Verification Benefits:

  • Higher visibility in search results
  • Trust badge for potential customers
  • Access to premium Camino Messenger features
  • Eligibility for promotional campaigns

🌐 Distribution Channels

Camino Messenger Protocol Compliance

GG365 publishes golf club data following Camino Messenger standards:

JavascriptCode
// Your club is automatically discoverable via Camino Messenger // after on-chain registration and verification const caminoId = clubInfo.caminoMessengerId; console.log('Your Camino Messenger ID:', caminoId); // Link existing Camino Messenger account (if you have one) await camino.linkCaminoMessenger(clubId, existingCaminoId);

Blockchain Registry

All clubs are registered in the GG365ClubRegistry smart contract:

JavascriptCode
// Contract address on Camino Network const REGISTRY_ADDRESS = '[Pending Deployment]'; // Your club data is immutable and verifiable on-chain const onChainData = await camino.getClubInfo(clubId); console.log('On-chain verification:', onChainData); // Supported tokens for bookings const acceptedTokens = ['CAM', 'USDC', 'DAI'];

💡 Use Cases

Use Case 1: Travel dApp Booking

  1. You publish availability to Camino Messenger
  2. Travel dApp discovers your golf course
  3. Customer books via dApp's smart contract
  4. You receive booking notification
  5. Smart contract handles payment and commission

Use Case 2: Partner Integration

  1. You publish to specific partners
  2. Partner platform displays your courses
  3. Their customers book directly
  4. Blockchain ensures trust and transparency

📚 Learn More


Status: 🚧 Detailed documentation coming soon!

For immediate assistance, contact: [email protected]

Last modified on