{{-- ──────────────────────────────────────────────────────── --}} {{-- Connect a new store --}} {{-- ──────────────────────────────────────────────────────── --}}
Connect a new store
Enter your Shopify store domain to start the OAuth flow and link the store to this panel.
{{ $this->form }}
Connect store
{{-- ──────────────────────────────────────────────────────── --}} {{-- Connected stores --}} {{-- ──────────────────────────────────────────────────────── --}}
Connected stores @if ($shops->isNotEmpty()) {{ $shops->count() }} @endif
@if ($shops->isEmpty())

No stores connected yet.

Use the form above to link your first Shopify store.

@else
@foreach ($shops as $shop) @php $info = $shop->shop_info ?? []; $shopName = $info['name'] ?? null; $email = $info['email'] ?? null; $plan = $info['plan_display_name'] ?? null; $country = $info['country_name'] ?? null; $currency = $info['currency'] ?? null; $installed = $shop->isInstalled(); $grantedScopes = array_values(array_filter(array_map('trim', explode(',', (string) $shop->scope)))); $missingScopes = array_values(array_diff($requiredScopes, $grantedScopes)); @endphp
$installed, 'border-danger-300 dark:border-danger-700 opacity-70' => !$installed, ])> {{-- Header row --}}
$installed, 'bg-danger-50 dark:bg-danger-950 text-danger-600 dark:text-danger-400' => !$installed, ])>
@if ($shopName)

{{ $shopName }}

@endif

{{ $shop->shop_domain }}

@if ($installed) {{ $missingScopes === [] ? 'Active' : 'Reauthorization required' }} @else Uninstalled @endif
{{-- Meta grid --}}
@if ($email)
Email
{{ $email }}
@endif @if ($plan)
Plan
{{ $plan }}
@endif @if ($country)
Country
{{ $country }}
@endif @if ($currency)
Currency
{{ $currency }}
@endif
Installed
installed_at) title="{{ $shop->installed_at->format('Y-m-d H:i') }}" @endif> {{ $shop->installed_at?->diffForHumans() ?? '—' }}
Last sync
$shop->last_sync_at === null, ]) @if($shop->last_sync_at) title="{{ $shop->last_sync_at->format('Y-m-d H:i') }}" @endif> {{ $shop->last_sync_at?->diffForHumans() ?? 'Never' }}
{{-- Scopes (collapsed) --}} @if ($shop->scope)
View granted scopes
@foreach (explode(',', $shop->scope) as $sc) {{ trim($sc) }} @endforeach
@endif @if ($missingScopes !== [])

Missing required Shopify access

Grant and reconnect this store before launch: {{ implode(', ', $missingScopes) }}.

@if (in_array('read_all_orders', $missingScopes, true))

The protected read_all_orders permission must first be approved in the Shopify Partner Dashboard.

@endif
@endif {{-- Actions --}} @if ($installed)
Sync products Queuing…
@endif
@endforeach
@endif