XML 87 R66.htm IDEA: XBRL DOCUMENT
v3.24.1.u1

Stock Based Compensation (Details) - Schedule of Total Options Outstanding | 12 Months Ended
--- | ---
Dec. 31, 2023 $ / shares shares
Equity Option [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 108,044
Weighted average remaining contractual life (years) | 4 years 3 months 18 days
Weighted average exercise price | $ 8.02
Equity Option [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 851,751
Weighted average remaining contractual life (years) | 3 years 9 months 18 days
Weighted average exercise price | $ 14.35
Equity Option [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 247,284
Weighted average remaining contractual life (years) | 2 years 8 months 12 days
Weighted average exercise price | $ 33.91
Equity Option [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 247,723
Weighted average remaining contractual life (years) | 2 years 7 months 6 days
Weighted average exercise price | $ 48.3
Equity Option [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 100,259
Weighted average remaining contractual life (years) | 2 years 8 months 12 days
Weighted average exercise price | $ 75.54
Equity Option [Member] | Exercise Price Range [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 1,555,061
Weighted average remaining contractual life (years) | 3 years 4 months 24 days
Weighted average exercise price | $ 26.38
Equity Option [Member] | Minimum [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 4.2
Equity Option [Member] | Minimum [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 10
Equity Option [Member] | Minimum [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 20
Equity Option [Member] | Minimum [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 40
Equity Option [Member] | Minimum [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 60
Equity Option [Member] | Maximum [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 10
Equity Option [Member] | Maximum [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 20
Equity Option [Member] | Maximum [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 40
Equity Option [Member] | Maximum [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 60
Equity Option [Member] | Maximum [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | $ 96.7
Vested Options Outstanding [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 15,667
Weighted average remaining contractual life (years) | 1 year 1 month 6 days
Weighted average exercise price | $ 7.54
Vested Options Outstanding [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 222,707
Weighted average remaining contractual life (years) | 2 years 10 months 24 days
Weighted average exercise price | $ 14.34
Vested Options Outstanding [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 143,670
Weighted average remaining contractual life (years) | 2 years 4 months 24 days
Weighted average exercise price | $ 31.79
Vested Options Outstanding [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 138,776
Weighted average remaining contractual life (years) | 2 years 6 months
Weighted average exercise price | $ 49.36
Vested Options Outstanding [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 65,454
Weighted average remaining contractual life (years) | 2 years 8 months 12 days
Weighted average exercise price | $ 75.8
Vested Options Outstanding [Member] | Exercise Price Range [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Number of Options (in Shares) | shares | 586,274
Weighted average remaining contractual life (years) | 2 years 7 months 6 days
Weighted average exercise price | $ 33.58
Vested Options Outstanding [Member] | Minimum [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 4.2
Vested Options Outstanding [Member] | Minimum [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 10
Vested Options Outstanding [Member] | Minimum [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 20
Vested Options Outstanding [Member] | Minimum [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 40
Vested Options Outstanding [Member] | Minimum [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 60
Vested Options Outstanding [Member] | Maximum [Member] | Exercise Price Range One [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 10
Vested Options Outstanding [Member] | Maximum [Member] | Exercise Price Range Two [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 20
Vested Options Outstanding [Member] | Maximum [Member] | Exercise Price Range Three [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 40
Vested Options Outstanding [Member] | Maximum [Member] | Exercise Price Range Four [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | 60
Vested Options Outstanding [Member] | Maximum [Member] | Exercise Price Range Five [Member] |
Share-Based Payment Arrangement, Option, Exercise Price Range [Line Items] |
Range of Exercise Prices | $ 96.7

X
- Definition The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 718 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (g) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iii) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_AwardTypeAxis=us-gaap_StockOptionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeFourMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeFiveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=oprx_ExercisePriceRangeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_AwardTypeAxis=oprx_VestedOptionsOutstandingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |