Sertainly Marketplace
Environmental reporting and greenhouse Gas accounting
US·Environmental reporting and greenhouse Gas accounting· U.S. Organizational GHG Accounting — Stationary Combustion suite · 2 APIs

EPA Stationary Combustion · GHG Emissions Quantification

Sertainly Official Publishercontract v1

Decides Scope 1 CO2, CH4, and N2O emissions from owned or leased boilers, furnaces, and other combustion sources by fuel type and activity data.

Overview

For any boiler, furnace, kiln, flare, or similar combustion source an organisation owns or leases, this package turns a fuel type and an activity quantity into a full emissions result: carbon dioxide, methane, and nitrous oxide in kilograms, fossil and biogenic CO2 reported separately, and a total CO2e figure in both kilograms and metric tons, each traceable to the specific Table 1 factors and equations that produced it.

It is built on the EPA GHG Emission Factors Hub's 2025 Table 1 for stationary combustion, covering solid, gaseous, and liquid fossil fuels, biomass fuels, Kraft pulping liquors, and mixed fossil-and-biomass waste streams such as municipal solid waste. Sources outside the owned-or-leased boundary are classified out of scope rather than calculated.

In practice it handles cases like: a leased boiler burning natural gas measured in standard cubic feet, a furnace running distillate fuel oil on a gallon basis, an incinerator burning municipal solid waste that needs a biogenic-fraction split between fossil and biomass CO2, and a facility drawing down fuel stock inventory where the quantity purchased differs from the quantity actually combusted.

Where the data doesn't support a calculation — an activity unit that isn't published for the fuel, a lower-heating-value figure for a fuel family with no published conversion, a mixed waste stream with no biogenic-fraction supplied, or a non-default heat or carbon content lacking supporting documentation — it stops and asks for the specific missing input rather than guessing or substituting a default.

Every run returns a structured verdict — classification tags, the method used, and the computed emissions figures — together with reason codes for any missing evidence, so results drop cleanly into downstream reporting or review workflows.

What it decides

Inputs
reporting_period_startrequired
date (string)
reporting_period_endrequired
date (string)
source_typerequired
string
boilerfurnaceheaterkilnovenflarethermal_oxidizerdryerinternal_combustion_engineturbineprocess_heaterincinerator
ownership_statusrequired
string
ownedleasednot_owned_or_leased
fuel_typerequired
string
anthracitebituminoussub_bituminouslignitemixed_commercial_sectormixed_electric_power_sectormixed_industrial_cokingmixed_industrial_sectorcoal_cokemunicipal_solid_wastepetroleum_coke_solidplastics
activity_quantityrequired
number
activity_unitrequired
string
short_tonscfgallonmmbtutherm
factor_versionrequired
string
2025
actual_heat_content
number
heat_content_basis
string
hhvlhv
actual_carbon_content
number
cems_co2_kg
number
cems_conforms_to_part_75_or_98
boolean
biogenic_fraction
number
fuel_stock_at_period_start
number
fuel_stock_at_period_end
number
feedstock_quantity
number
fugitive_or_spill_quantity
number
supporting_documentation_reference
string
Every call returns
4 classifications · 10 reason codes · 9 evidence checks · 29 derived facts
Classifications
boundary_classificationat most one
scope_1_stationary_combustionoutside_inventory_boundary
unit_compatibilityat most one
unit_incompatible_with_fuel
method_classificationat most one
cems_methodcarbon_content_methodenergy_basis_methoddefault_physical_unit_method
fuel_carbon_classificationat most one
fossil_fuelbiomass_fuelmixed_biogenic_and_fossil_fuel
Reason codes· 10
unknown_source_type
The submitted equipment type is not a stationary combustion source recognised by the guidance.
unknown_ownership_status
The submitted ownership status is not recognised.
unknown_fuel_type
The submitted fuel is not published in Table 1 of the named factor edition.
unknown_activity_unit
The submitted activity unit is not supported.
unknown_factor_version
The submitted factor edition is not available.
unknown_heat_content_basis
The submitted heating value basis is not recognised.
Evidence it can request
source_typeownership_statusfuel_typeactivity_unitfactor_versionheat_content_basisactual_heat_contentbiogenic_fractionsupporting_documentation_reference
Derived facts· 29
calc.gwp_ch4number
Hundred-year global warming potential of methane, IPCC AR5.
calc.gwp_n2onumber
Hundred-year global warming potential of nitrous oxide, IPCC AR5.
calc.co2_factor_energynumber
Table 1 carbon dioxide factor for this fuel on an energy basis, kg CO2 per mmBtu.
calc.ch4_factor_energynumber
Table 1 methane factor for this fuel on an energy basis, grams CH4 per mmBtu.
calc.n2o_factor_energynumber
Table 1 nitrous oxide factor for this fuel on an energy basis, grams N2O per mmBtu.

Try it — live sandbox

Build a case and run it against the publisher's live production release — the exact rules a subscriber calls. Run the same case twice and the answer is identical: no LLM in the loop.

Sandbox · live evaluation
Case
Decision

Run a case to see the deterministic decision — tags, routes, reasons, evidence, and facts. Same case in, same answer out, every time.

Integrate — two ways

Call it directly over HTTP, or connect your coding agent over MCP. Same decision, same metering, either way.

One authenticated POST — the same deterministic, metered evaluation the sandbox runs, no LLM in the loop.

Integrate — one POST
# Request shape only. Replace sert_mk_YOUR_KEY and send every field from the Inputs contract above.
curl -X POST https://api.sertainly.ai/api/marketplace/v1/packages/stationary_combustion_emissions_quantification/evaluate \
  -H "Authorization: Bearer sert_mk_YOUR_KEY" \
  -H "content-type: application/json" \
  -d '{ "case": { "reporting_period_start": "example", "reporting_period_end": "example", "source_type": "boiler" } }'

More from the U.S. Organizational GHG Accounting — Stationary Combustion suite