1. A computer-implemented method comprising: receiving, by a user device and from a server, a first on-device directory of merchants that are in a geographical location corresponding to a first location of the user device; providing, by the user device, via a network, a second location of the user device to the server, the second location being different than the first location of the user device; receiving, by the user device and from the server, via the network, delta information identifying a difference between merchants included in the first on-device directory of the user device and merchants associated with the second location of the user device; updating, by the user device, the first on-device directory on the user device using the delta information to yield a second on-device directory of merchants on the user device; receiving, by the user device, a search query on the merchants associated with the second location; obtaining, by the user device, and without communicating with the server, information from the second on-device directory identifying one or more merchants that satisfy the search query; and providing, by the user device, the information identifying the one or more merchants in response to the search query.