And I assume it is possible that a supplier could provide gas at more than one station? Two possibilities come to mind.
Option 1
Contract (ContractID (pk), other relevant fields)
Source (ContractID (fk), StationID (fk), SupplierID (fk), Volume)
Station (StationID(pk),other relevant fields)
Supplier(SupplierID(pk), other relevant fields).
Option 2
Contract(ContractID(pk), other relevant fields)
Source(ContractID(pk), StationID(fk), Supplier, Volume, other relevant fields about the contract-station relationship)
Station(StationID(pk), other relevant fields about the station)
In both examples, Source is a relationship table that embodies the 1:M relationship between contract and stations. In some applications, additional relevant information may be included in the relationship table - hence the relationship can have attributes.
Does something along these lines get the job done?