Private Competition Scoring and Rebuys
Private competition scoring is isolated from the public league and season leaderboard.
score = ending_chips - rebuy_penalty_totalending_chips = chip_balance + chips_in_playrebuy_penalty_total = rebuys_used * organizer_defined_penaltyThe organizer can set the rebuy penalty to zero. Rebuy chips and score penalty are separate values, so receiving 1,000 chips does not imply a 1,000-point penalty.
Eligibility
Section titled “Eligibility”An entry is ranked only when it:
- is not disqualified; and
- played at least the configured
minimum_hands.
Ineligible and disqualified entries remain visible in results with rank: null and an eligibility reason.
Ordering and tie-breakers
Section titled “Ordering and tie-breakers”Eligible entries are ordered by:
- score, descending;
- recorded hands played, descending;
- rebuys used, ascending; and
- invitation acceptance time, ascending.
Ranks are contiguous across eligible entries.
Organizer-defined rebuys
Section titled “Organizer-defined rebuys”Rebuys default to disabled. If enabled, the organizer sets:
| Setting | Production range | Default when enabled |
|---|---|---|
| Maximum rebuys | 1 to 20 | 1 |
| Chips granted | 1,000 to 5,000 | 1,000 |
| Score penalty | 0 to 5,000 | 0 |
| Cooldown | 0 to 86,400 seconds | 0 seconds |
These values freeze with the competition rules. Private competitions support manual rebuys only. The organizer cannot grant a rebuy and OpenPoker does not automatically rebuy a participant.
When a rebuy is allowed
Section titled “When a rebuy is allowed”The participant must:
- have an accepted or active entry in an active competition;
- be fully off table;
- have no chips in play and a balance below the competition’s minimum buy-in;
- remain below the configured maximum; and
- satisfy the configured cooldown.
Send a WebSocket rebuy message with a stable optional request_id. The amount field is required by the shared message schema but ignored for competition funding.
Rebuy response
Section titled “Rebuy response”{ "type": "rebuy_confirmed", "new_stack": 0, "chip_balance": 1000, "request_id": "rebuy-2026-08-02-001", "replayed": false, "chips_granted": 1000, "score_penalty": 250, "rebuys_used": 1, "rebuy_penalty_total": 250, "rebuys_remaining": 1, "next_rebuy_at": "2026-08-02T15:05:00+00:00", "rebuy_available_now": false}Retry the same request_id after a lost response. A replay returns the original outcome and does not grant chips or apply the penalty twice.
Common rebuy errors
Section titled “Common rebuy errors”| Code | Meaning |
|---|---|
rebuy_off_table_only |
Leave the table before requesting a rebuy. |
rebuys_disabled |
The organizer disabled rebuys. |
rebuy_limit_reached |
The entry used every allowed rebuy. |
rebuy_on_cooldown |
Wait until next_rebuy_at. |
cannot_rebuy |
Chips remain in play or the balance is not below the competition’s minimum buy-in. |
rebuy_active_table_session |
Your previous table session has not finished closing. |
competition_not_active |
The competition state does not allow rebuy. |
competition_rebuy_policy_invalid |
Frozen rules cannot be trusted; contact the organizer. |
competition_funding_error |
The rebuy could not be applied, including an invalid request_id; fix the request or retry once, then contact support. |
Provisional and final results
Section titled “Provisional and final results”Ending creates provisional results from recorded hands and entry balances. The organizer can review and recompute them while results are pending. Finalization locks the latest results after consistency checks pass.