2 min read
Call unconditionally
Always call the billers endpoint; do not guess whether the feature is on. When off, it returns a well-formed empty payload, not an error.
Render on presence of data
Show the biller picker only when billers is non-empty; otherwise hide the section entirely. This keeps the page correct in both states.
Why this matters
Because we can flip the flag without warning, an integration that assumes data will always be present breaks the moment the feature is toggled. Branching on presence makes you immune. See Feature flags.
Why branch on data, not status
The subtle mistake teams make with a flag-gated endpoint is coupling their UI to the assumption that data will always be present. When the feature is off, the endpoint answers with a clean, well-formed empty payload — a deliberately unremarkable response, not an error — so a UI that only checks the HTTP status sees “success” and then renders an empty, broken-looking section. Branching instead on whether data is actually present sidesteps that entirely: show the biller picker when billers exist, hide it when they do not, and the page is correct in both states. The pay-off is operational calm — Credicorp can toggle the feature at any time and your integration simply follows, with no deploy and no incident on your side.
Frequently asked questions
How do I know if a feature is off?
The endpoint returns a clean empty payload rather than data. Branch on whether data is present, not on the HTTP status.
Funding for UK limited companies
Credicorp lends to your company, not to you personally — short-term working capital with no personal guarantee. See what your business could access.