The double c in accept is a fossil of two Latin pieces grinding together. The word is ad ("to") plus capere ("to take"), and when Latin stuck those together the d of ad assimilated to the sound that followed it, giving acceptare, "to take or receive willingly." English inherited the result whole and never had reason to tidy it up, which is why the doubled letter sits there looking arbitrary. It isn't: it marks the seam where a prefix was swallowed by its root.
The word arrived in the late 1300s, either through Old French accepter or straight off the Latin page, in roughly the meaning it still has — take what is offered, agree to a proposal. It belongs to the enormous family of English words built on capere, "to take," a root that also gave us capture, receive, and conceive. Once you can hear ad- lurking behind the double letter, a whole class of English words stops looking random: accede, appear, immediate, collect, suffer.
accept (v.) late 14c., accepten , "take what is offered; admit and agree to (a proposal, etc.)," from Old French accepter (14c.) or directly from Latin acceptare "take or receive willingly," frequentative of accipere "receive, get without effort," from ad "to" (see ad- ) + capere "to take" (from PIE root *kap- "to grasp"). Related: Accepted ; accepting . also from late 14c.
accept came in through Latin, and its spelling follows that family's conventions.
How that family writes these sounds
| a consonant that sounds doubled just after a prefix | double it. The prefix assimilated to the root: ad+cept, ad+prove, in+mediate, com+lectaccept, approve, immediate, collect, suffer |
What gives it away on the page
| a doubled consonant after a short prefix | The prefix assimilated to the root: ad+cept, ad+prove, in+mediate, com+lect.accept, approve, immediate, collect, suffer |
Placing it without the spelling
| abstraction, law, administration — words written before they're spoken | Latinnation, gravity, various, accept |