Acting on the advice of Grampian Police, amid concerns for fans' safety, Elgin called off Sunday's third division clash last Friday after it became known too many tickets had been sold for the top-of-the-table showdown.
Elgin issued a full apology to Rangers and their fans over the inconvenience caused and promised a full investigation into how the extra tickets had been put on general sale.
The Scottish Football League took the decision to fine the Highlanders following a meeting on Tuesday.
In a statement, the governing body said: "The Scottish Football League board has reviewed the circumstances leading up to the postponement of the match.
"As a result of this detailed review, the board of the SFL have found Elgin to have breached Rule 98.4 and Rule 44.5 of the organisation's Constitution and Rules.
"The club have been ordered to pay a fine of £25,000 to the Scottish Football League, £5,000 of which will be donated to a charity chosen by Rangers FC.
"Elgin City FC have also been ordered to pay compensation to Rangers FC of an amount no less than the actual costs incurred by that club in the preparation and planning of this match, these expenses to be satisfactorily vouched to the board of the SFL.
"The Scottish Football League would like to stress in the strongest terms that safety of fans is our number one priority, and that all clubs must adhere to the officially sanctioned ground capacity as agreed with the authorities."