Skip to main content
Payer phone number lookup is an opt-in capability your account team enables. When it’s on, you can submit a request with a payerName but no phoneNumber, and SuperDial will look up the dialing number for you. When it’s off, every request must supply phoneNumber directly.
Lookup is off by default. Ask your account team if you’d like it turned on. Without it, the rest of this page doesn’t apply; phoneNumber stays in requiredInputs.fields and you supply it on every request.

How it works

With lookup enabled on your account:
payerLookup is now returned on every created request (and on reads), not only when you omit phoneNumber. When no payer number is dialed, its matched* fields are null and phoneNumberToUse echoes the number you supplied.

Choosing which number to dial

By default, a phoneNumber you supply is always dialed as-is: SuperDial never overrides a number you provided. Set useMatchedPayerPhone: true on the request body (a top-level field, alongside schemaId and inputs) to tell SuperDial to dial its own matched payer number instead, even when you supplied one:
  • Match found: SuperDial dials the matched number. payerLookup.phoneNumberToUse is the matched number and phoneNumberSource is "superdial" (SuperDial’s payer directory) or "phoneBook" (a per-client override configured for your account).
  • No match: SuperDial falls back to the number you supplied and dials it as-is (no error). phoneNumberSource is "input".
useMatchedPayerPhone requires payer phone number lookup to be enabled on your account; it’s ignored otherwise.

Where to put the flag

useMatchedPayerPhone is a sibling of schemaId and inputs — not a field inside inputs. Putting it inside inputs has no effect.
Don’t nest it under inputs. This is wrong and SuperDial will dial your supplied 2125551234 as-is:
As a full call:
With a match found, the response reports the matched number as the one that will be dialed — your 2125551234 is echoed back under inputPhoneNumber but not used:
In a batch, the flag goes inside each request entry — it is not a batch-level setting, so set it on every entry you want it to apply to:
Here claim_001 dials SuperDial’s matched number (falling back to 2125551234 if there’s no match), while claim_002 dials 2125551234 as-is.
You only need useMatchedPayerPhone when you’re also sending phoneNumber. If you omit phoneNumber entirely, SuperDial already dials its matched number and the flag changes nothing.

The response

payerLookup is a six-field block, always present on the POST /v1/requests response (and on reads). When SuperDial dials a matched payer number, it looks like this:
The matched* fields are populated only when SuperDial dials its own matched number: when you omit phoneNumber, or when you set useMatchedPayerPhone: true and a match is found. If your supplied number is dialed instead, matchedPayerName / matchedPayerPhone are null, phoneNumberToUse echoes your number, and phoneNumberSource is "input":
The same payerLookup block appears on the read endpoints (GET /v1/requests and GET /v1/requests/{requestId}), so you can read the lookup back later rather than capturing it from the POST response.

Tips

  • Include memberId for Blue Cross Blue Shield (BCBS) lookups. It affects which regional plan gets dialed.
  • You don’t need an exact-string match. Common variants and acronyms (e.g. "BCBS", "BCBSMA", "Blue Cross Blue Shield") all work.
  • Supply phoneNumber to dial a specific number. By default a supplied number is dialed as-is, regardless of what lookup would pick. To have SuperDial dial its matched number instead while still supplying your own as a fallback, set useMatchedPayerPhone: true.

When lookup fails

The message field describes what went wrong.