طبق تعریف، «توافقنامه کاربر نهایی» EULA (سرنام end-user license agreement)، قراردادی بین مشتری و فروشنده یا توسعهدهنده نرمافزار است . نحوه پذیرش این قراردادها متفاوت است. گاهی این کار به سادگی بازکردن پوشش حاوی نرمافزار صورت میگیرد (« توافق بستهای» یا Shrink Wrap)؛ بهطوری که، شما با برداشتن پوشش روی بسته و استفاده از نرمافزار، عملاً اعلام میکنید که قرارداد را با همه شروط قید شده در آن پذیرفتهاید. با این حال، متداولترین نوع EULA، کادر محاورهای است که تحت عنوان «توافق مبتنیبر کلیک» (clickWrap) نیز شناخته میشود و با نخستین استفاده از نرمافزار، روی صفحه ظاهر شده و کاربر مجبور است پیش از شروع به استفاده از نرمافزار، موافقت خود را با مفاد آن اعلام کند؛ که اینکار معمولاً با زدن دکمهای نظیر «I Agree» یا علامت یا لینکی با همین مضمون صورت میگیرد. نکتهای که در مورد این نوع قراردادها باید در نظر داشت، این است که بهروزرسانیهای نرمافزاری و وصلههایی که ممکن است در آینده از سوی شرکت عرضهکننده ارائه شوند، میتوانند EULAهای جدید یا بهروزرسانی شدهای به همراه داشته باشند و شروطی متفاوت از آنچه در نسخه اصلی آمده در آنها قید شده باشد و پذیرفتن EULA نرمافزار اصلی به معنی پذیرفتن تمامی این شرایط نیز هست.