Skip to main content

EBT and SNAP are never rounded

Supplemental Nutrition Assistance Program benefits are federally funded and are settled to the cent. 7 CFR 278.2 governs how retailers accept them. The engine treats payment_method: "ebt" (and "snap") as an unconditional exemption: the cash total equals the ledger total, rounding_applied is false, and no state or local rule, merchant setting or override can change that. The compliance engine raises a failure if an EBT transaction ever arrives with a non-zero delta.

Card and mobile tenders are never rounded

Rounding exists because the one-cent coin is leaving circulation. A card or mobile payment settles electronically to the cent. payment_method of card or mobile returns the ledger total unchanged.

Split tenders

A transaction paid with more than one tender sends a tenders array. The amounts must sum to the ledger total.
The engine isolates the cash portion, rounds it under the governing rule, and leaves the other tenders untouched. The response carries a split_tender block that shows what happened to each tender.
When the cash portion is rounded, the subtotal and tax are apportioned to it in the ratio of the whole transaction so that the engine’s tax-on-pre-rounded-amount rule holds for the portion as well.

Statutory language the engine follows

Most of the 23 enacted statutes say the same thing in their own words: rounding applies to the cash portion of a mixed tender and non-cash methods settle to the cent. North Carolina G.S. 66-515 and 18B-804A say rounding “applies only to the portion of the transaction paid in cash.” California Civ. Code 1789.62(e) says the merchant “shall round the portion of the total transaction price equivalent to the amount paid with legal tender.” Kentucky’s four sections say non-cash transactions “shall continue to be settled to the cent without rounding.” The engine’s split-tender behaviour implements those clauses.

Tender vocabulary