# Provider Packages Provider packages are used for any integration and are found in their own sub directories. Providers must adhere to the interface speficied in accountProviders.go. ```golang // AccountProvider is the base set of requirements to be implemented for any integration type AccountProvider interface { Name() string // Returns the name of the provider Configure() error // Configures the provider for first use - if an error is returned the provider is not used GetBalances() ([]int, []string, error) // A slice of balances, and an index mapped slice of ynab account IDs this provider handles is returned } ``` By convention, these methods are implemented in a file called providerImpl.go in each of the provider packages. The following providers are currently available: * bitcoin * questrade * staticjsonFinnhub * staticjsonYahooFinance