Booking Providers
How DigiWedge TeeTime integrates with external tee sheet systems.
Overview
DigiWedge TeeTime supports multiple booking provider backends, allowing clubs to:
- Use DigiWedge as the source of truth (INTERNAL)
- Sync with existing club management systems (MCA, Lightspeed)
- Aggregate from third-party booking platforms (GolfNow, ForeUP)
Supported Providers
| Provider | Type | Direction | Status |
|---|---|---|---|
| INTERNAL | Native | Read/Write | Production |
| MCA | Legacy CMS | Read/Write | Production |
| LIGHTSPEED | Golf POS | Read/Write | Production |
| GOLFNOW | Marketplace | Read-only | Production |
| FOREUP | Tee Sheet | Read/Write | Production |
Architecture
flowchart TB
subgraph DigiWedge
API[TeeTime API]
Router[Booking Router]
Map[Provider Map]
end
subgraph Providers
INT[Internal DB]
MCA[MCA Backend]
LS[Lightspeed]
GN[GolfNow]
FU[ForeUP]
end
API --> Router
Router --> Map
Map --> INT
Map --> MCA
Map --> LS
Map --> GN
Map --> FU
Provider Routing
Each booking is associated with a provider via BookingProviderMap:
| Field | Description |
|---|---|
bookingId | DigiWedge booking reference |
provider | Provider enum (INTERNAL, MCA, etc.) |
providerBookingRef | External booking ID |
externalRef | Customer-facing confirmation |
paymentProvider | PSP used for payment |
paymentRef | Payment transaction ID |
Club Configuration
Clubs configure their tee sheet provider at the course level:
{
"courseId": "course-uuid",
"teeSheetProvider": "LIGHTSPEED",
"providerConfig": {
"apiKey": "ls_xxx",
"facilityId": "12345",
"syncInterval": "5m"
}
}
Provider Capabilities
INTERNAL
Native DigiWedge tee sheet:
- Full read/write access
- Real-time slot management
- Direct database control
- All features available
MCA (MyClubAccount)
Legacy club management integration:
- Bidirectional sync
- Member data integration
- Pricing from MCA rules
- Handicap sync
LIGHTSPEED
Golf POS and tee sheet:
- Slot availability polling
- Booking push to Lightspeed
- Payment reconciliation
- Member lookup
GOLFNOW
Third-party marketplace:
- Inventory feed (read-only)
- Bookings pulled on schedule
- Rate sync from GolfNow
- No direct booking creation
FOREUP
Cloud tee sheet platform:
- API-based slot sync
- Real-time availability
- Booking creation
- Cancellation sync
Sync Patterns
Real-Time
For providers with webhooks or push APIs:
- External system sends event
- DigiWedge receives webhook
- Internal state updated
- Players notified if needed
Polling
For providers without push:
- Scheduled job runs (configurable interval)
- Fetch changes since last sync
- Reconcile with internal state
- Flag conflicts for review
Hybrid
Combination approach:
- Real-time for critical events (bookings)
- Polling for bulk data (availability)
- Conflict detection and resolution
Conflict Resolution
When DigiWedge and provider disagree:
| Scenario | Resolution |
|---|---|
| Double booking | Provider wins, DigiWedge cancels |
| Price mismatch | Log warning, use provider price |
| Slot blocked | Provider wins, update internal |
| Player mismatch | Flag for manual review |
Error Handling
Provider failures are handled gracefully:
- Retry with exponential backoff
- Circuit breaker after repeated failures
- Fallback to cached data where safe
- Alert operations team
Metrics
Track provider health:
- Sync latency
- Error rates
- Conflict frequency
- Availability accuracy
Adding New Providers
Contact DigiWedge to integrate a new booking system. Requirements:
- API documentation
- Test environment access
- OAuth or API key authentication
- Webhook capability (preferred)
Troubleshooting
Bookings Not Syncing
- Check provider API credentials
- Verify network connectivity
- Review sync job logs
- Check for rate limiting
Availability Mismatch
- Compare sync timestamps
- Check polling interval
- Review conflict log
- Force manual sync
Payment Reconciliation
- Verify
paymentRefmapping - Check PSP transaction status
- Review provider confirmation
- Contact support if unresolved