A method of establishing an IP telephony session between first and second enterprises (E1 105, E2 110) by a dynamic federation system, DFS of a service provider, the service provider including a public switched telephone network, PSTN, gateway for making calls to/from the PSTN, the method comprising: receiving (505, 830) at the DFS, over an HTTP channel, a respective request from each of the first and second enterprises, each request being for an initial configuration of a session border controller, SBC, configuration at the respective enterprise (SBC E1, 135; SBC E2 145); providing by the DFS, over the HTTP channel, an initial configuration for a specific service to the SBC of each of the first and second enterprises in response to the respective received requests; creating (515, 520) a first session initiation protocol, SIP, trunk between the first enterprise SBC and a first SBC (SBC SPC1 150) of the service provider, and a second SIP trunk between the second enterprise SBC and a second SBC (SBC SPC2 155) of the service provider; the first and second enterprises joining a federation by subscribing to a registry of the DFS and each providing an enterprise profile which is stored by the service provider and made available to other members of the federation; receiving, at the DFS, an association request by the first enterprise to associate with the second enterprise; accepting the association request on behalf of the second enterprise to establish an association between the first enterprise and the second enterprise; responsive to the acceptance, establishing by the DFS a direct routed path between the first enterprise and the second enterprise, wherein the directed routed path avoids traversing the PSTN gateway, bypassing the PSTN to use packet switching; receiving by the DFS a request by one of the first and second enterprises to activate an IP telephony service to the other of the first and second enterprises; and if the request to activate references the association, establishing by the DFS an IP telephony session using the direct routed path. receiving (505, 830) at the DFS, over an HTTP channel, a respective request from each of the first and second enterprises, each request being for an initial configuration of a session border controller, SBC, configuration at the respective enterprise (SBC E1, 135; SBC E2 145); providing by the DFS, over the HTTP channel, an initial configuration for a specific service to the SBC of each of the first and second enterprises in response to the respective received requests; creating (515, 520) a first session initiation protocol, SIP, trunk between the first enterprise SBC and a first SBC (SBC SPC1 150) of the service provider, and a second SIP trunk between the second enterprise SBC and a second SBC (SBC SPC2 155) of the service provider; the first and second enterprises joining a federation by subscribing to a registry of the DFS and each providing an enterprise profile which is stored by the service provider and made available to other members of the federation; receiving, at the DFS, an association request by the first enterprise to associate with the second enterprise; accepting the association request on behalf of the second enterprise to establish an association between the first enterprise and the second enterprise; responsive to the acceptance, establishing by the DFS a direct routed path between the first enterprise and the second enterprise, wherein the directed routed path avoids traversing the PSTN gateway, bypassing the PSTN to use packet switching; receiving by the DFS a request by one of the first and second enterprises to activate an IP telephony service to the other of the first and second enterprises; and if the request to activate references the association, establishing by the DFS an IP telephony session using the direct routed path.