Scaling a residential battery program
A global grid technology provider works with a large investor-owned utility in the Mountain West region of the U.S. to operate a residential battery VPP. The program gives homeowners upfront incentives and annual participation credits in exchange for allowing the utility to charge and discharge enrolled batteries during grid events.
The program launched with Tesla and Enphase, two of the most common residential battery OEMs, and quickly gained traction. But as enrollment grew, the utility wanted to expand the list of eligible devices, bring more manufacturers into the program, and give more homeowners access to incentives.
The bottleneck wasn't demand, it was integration
Every OEM that wants to participate in the battery program represents a new integration challenge. Each manufacturer has its own API, its own auth flow, and its own release schedule, any of which can break downstream connections. For the grid infrastructure provider powering this VPP, onboarding a new OEM meant standing up a net-new integration, testing it against the utility's requirements, and maintaining it as things changed on the OEM side.
At one or two OEMs, this was manageable. As the program grew, it became a structural bottleneck, throttling the ability to serve diverse customers and forcing the infrastructure provider to become, in effect, an integration shop.
The infrastructure provider also faced an unexpected timeline challenge. When the program surged, the utility pulled forward its delivery schedule, compressing the planned deliverables into a significantly shorter runway.
One integration point for a multi-OEM battery program
When this global leader in energy infrastructure turned to Texture, they needed to solve two problems: the OEM integration overhead and the speed-to-market pressure. Texture sits between the OEMs and the infrastructure provider's DERMS platform, handling device connectivity, dispatch signaling, and telemetry delivery across manufacturers, without the infrastructure provider having to build or maintain those connections.
The model is straightforward: the DERMS platform integrates once with Texture directly. Texture integrates with all of the OEMs. When a new battery manufacturer wants to join the residential battery program, they run through Texture directly, rather than creating a new round of custom integration work for the DERMS platform team. The utility can expand the eligible device universe without expanding the infrastructure provider's engineering backlog.
Homeowners with previously ineligible devices could finally participate in the program. And for OEMs, it created a simpler way in.
What Texture manages on the infrastructure provider's behalf:
- OEM connectivity for Tesla, Enphase, and new manufacturers entering the program
- Dispatch orchestration: translating the utility's event signals into OEM-specific control commands, at the gateway level across enrolled fleets
- Smoothing logic: ensuring consistent discharge rates across event windows (typically 3 hours, up to 60 events/year)
- Telemetry and proof-of-performance data after each event, feeding into the DERMS platform for program reporting
- Enrollment plumbing: validating device eligibility, managing site-level parameters like export limits, and supporting automated enrollment flows
When something breaks, Texture's team manages the fix
To the utility, the DERMS provider owns the full solution, including the integration layer underneath it. If an OEM connection breaks, a telemetry feed drops, or UAT uncovers a defect, the delivery risk still sits with the provider. Texture reduces that risk by monitoring integrations and managing fixes directly with OEMs, which keeps the provider's team out of integration troubleshooting and focused on program delivery and customer experience.
This includes one-off software bugs as well as larger shifts like manufacturer API changes, breaking firmware updates, and deprecated auth flows. Texture catches and fixes these so the infrastructure provider doesn't have to.
Outcomes
- 2,000+ enrolled batteries and 40+ MWh of managed capacity
- One integration point for multi-OEM program operations
- Faster OEM expansion without bespoke DERMS integration work for each manufacturer
- Operational support when OEM APIs, telemetry, or dispatch behavior changes
- Compressed delivery timelines met, including a multi-month pull-forward on launch dates


