public function createPayout($payout)
    {
        if (is_array($payout)) {
            $payout = RequestCreator::create(CreatePayoutRequest::class, $payout);
        }

        ObjectRecursiveValidator::validate($payout);
        $payoutSerializer = new CreatePayoutSerializer($payout);
        $payoutTransport = new CreatePayoutTransport($payoutSerializer);

        return $this->execute($payoutTransport, CreatePayoutResponse::class);
    }
public function createPayout($payout)
    {
        if (is_array($payout)) {
            $payout = RequestCreator::create(CreatePayoutRequest::class, $payout);
        }

        ObjectRecursiveValidator::validate($payout);
        $payoutSerializer = new CreatePayoutSerializer($payout);
        $payoutTransport = new CreatePayoutTransport($payoutSerializer);

        return $this->execute($payoutTransport, CreatePayoutResponse::class);
    }
@param array|CreatePayoutRequest|AbstractRequest $payout

@return CreatePayoutResponse|AbstractResponse

@throws TransportException
@throws JsonParseException
@throws ResponseException
@throws ResponseParseException
@throws RequestParseException