The MetaMask Fiat On-Ramp works with five components:
Provider API - An API implemented by the provider containing a REST API and an HTML widget.
MetaMask On-Ramp API - A server managed by ConsenSys, aggregating all provider information and exposing a public REST API.
MetaMask On-Ramp SDK - An SDK containing all the logic required to communicate with the On-Ramp API. The MetaMask mobile app and other applications (browser extension, etc.) may use it in the future.
MetaMask mobile - A mobile application that communicates with the On-Ramp API and several provider APIs.
Private MetaMask analytics - A secured analytics platform hosted by and only accessible to MetaMask.
The MetaMask Fiat On-Ramp supports two strategies for provider API calls.
We recommend using the decentralized strategy, allowing most calls to come from the MetaMask mobile app to optimize performance.
If this is impossible, the MetaMask On-Ramp back end can act as a proxy. This is the centralized strategy.