<?php

namespace App\Services\RemotePayments;

use App\Models\RemotePaymentSubmission;

interface RemotePaymentProvider
{
    public function code(): string;

    public function supports(string $channel): bool;

    /**
     * Return provider-side verification metadata without changing financial balances.
     *
     * @return array{status:string,message:?string,verified:bool}
     */
    public function verify(RemotePaymentSubmission $submission): array;
}
