company logo

Help center

All collectionsX-RaySending X-Ray Data to GoHighLevel

Sending X-Ray Data to GoHighLevel

Choose where X-Ray results go, map them onto GoHighLevel fields, add tags and notes, send the final score, and fix a lookup that did not reach your CRM.

Omer ยทOctober 9, 2026

A credit result that stays inside ROASForm does not help the person making the call. X-Ray > Settings decides how much of each result reaches GoHighLevel, and in what shape. The final score has its own setting in the form builder.

Before you start

  • GoHighLevel has to be connected to the subaccount. See How to Connect GoHighLevel to ROASForm.

  • X-Ray Settings only exist inside a subaccount, because each subaccount has its own CRM. In the agency view the page says "Select a subaccount from the sidebar to configure its X-Ray settings."

  • The settings are shared by every X-Ray rule in the subaccount, so two rules never disagree about what gets written.

Choose the integration

  1. Open X-Ray > Settings and pick CRM in the left menu.

  2. In the CRM Integration card, open the Integration list and choose GoHighLevel.

  3. Turn on what you want, then press Save changes.

X-Ray Settings, CRM section with GoHighLevel chosen

Until an integration is chosen, the switches for notes, field mapping and tags stay off, and hovering one tells you why. If GoHighLevel is not connected, the list shows GoHighLevel (Not connected) and the card links to Connect one. The other CRMs in the list read Coming Soon.

Choosing None turns every X-Ray output off and saves straight away.

Save changes sits at the bottom of the CRM, Field mapping and Tags pages. It saves all three together, so you can move between them before saving.

Add a summary to the contact's notes

On the CRM page, turn on Include X-Ray Data in Contact Notes. After each result, X-Ray posts a note on the GoHighLevel contact. The note starts with a line reading --- X-Ray Finance ---, shows the date, and lists the fields that came back (credit score, pre-qualification and so on), followed by any financing offers.

Notes need no mapping and no custom fields, and whoever opens the contact can read them. Mapping is better when you want to filter, sort or automate on a value.

Map X-Ray fields to GoHighLevel fields

  1. Go to X-Ray > Settings > Field mapping.

  2. Turn on CRM Mapping.

  3. Next to each X-Ray field, open the list that says Unmapped and choose a GoHighLevel field. Fields are grouped under Standard fields and Custom fields.

  4. Press Save changes.

X-Ray Settings, Field mapping for X-Ray Finance fields

The page lists the X-Ray Finance fields you can map:

  • Credit Score

  • Pre-Qualification

  • Credit Freeze

  • Debt to Income (%)

  • Estimated Income ($)

The last two only come back when the debt to income and income add-on runs for the form. Use Search X-Ray fields... to narrow the list.

Two rules before you spend time here:

  • Only fields that returned a value are written. A mapped field that came back empty writes nothing. It never blanks what is already on the contact.

  • The GoHighLevel custom field must exist first. Create it in GoHighLevel, then pick it here. The mapping works the same way as for form answers: see Mapping Form Answers to GoHighLevel Custom Fields.

Add tags

  1. Go to X-Ray > Settings > Tags.

  2. Turn on CRM Tags. The first time you do, the tag xray_completed is added for you.

  3. To add your own, type a name (up to 32 characters) and press Enter or Add. Remove a tag with the x on it.

  4. Press Save changes.

How each tag behaves:

  • xray_completed is applied when the check returned a result. If nothing came back, it is not applied.

  • Tags you add yourself are applied to the contact every time X-Ray sends a result to GoHighLevel.

Tags are a good trigger for a GoHighLevel automation. For how tags work with GoHighLevel in general, see How Tags Work with GoHighLevel.

When the data is sent

  • After the form is submitted. The check runs in the background. As soon as it returns a result, the CRM sync starts. You do not need to wait for the form's normal CRM sync.

  • Right after a check during the form. If your form uses Routing Leads with X-Ray Finance in Logic, the check runs when the lead moves past that step, and the result is sent to GoHighLevel right away, before the form is even finished.

  • No result, nothing sent. If a check is skipped or returns no result, no note, no tags and no fields are written.

  • No contact in GoHighLevel yet? X-Ray adds the contact first (name, email and phone), then writes the result.

  • A failed sync is tried again automatically a few times before it is marked as failed.

Send the final score

The final score is not set here. It lives in the form builder, because it belongs to the form.

  1. Open the form and go to the Scoring tab.

  2. Click the gear icon to open Scoring Settings.

  3. Under Pass Score to CRM, find Final score (%) and Final score (points). Turn on the ones you want and choose a GoHighLevel custom field for each. The field needs to be a number or text field.

Scoring Settings with Final score (%) and Final score (points) mapped to CRM fields

Final score (%) is the final score out of 100, with X-Ray Finance. Final score (points) is answer points plus X-Ray Finance points. These two rows appear once X-Ray scoring is on for the form, and the form needs a connected CRM. Until then the gear shows "Connect a CRM integration in the Settings tab to pass scores."

The score is sent when it is final, which means after the credit check has ended. If the contact is not in GoHighLevel yet, ROASForm keeps trying for a while. Only these fields are touched: no tags, no notes. How the score is built is in Using X-Ray Finance in Lead Scoring.

When a lookup did not reach your CRM

Open X-Ray > History > Lookup History. The X-Ray CRM Sync column shows what happened to each result.

The X-Ray CRM Sync column in Lookup History
  • Synced: written successfully.

  • Pending: on its way.

  • Fields dropped: the contact was written, but some mapped fields were not accepted. This almost always means a mapped custom field was deleted in GoHighLevel. Re-map it under X-Ray > Settings > Field mapping.

  • Failed: the sync did not work. Hover the badge for the reason.

  • Not Synced: this lookup was never pushed to your CRM and will not sync on its own. A dash means nothing was sent for that row.

To send it again, use the round arrow button in the Actions column. Its tooltip reads Sync to CRM. The button is greyed out with Select a CRM in X-Ray settings to sync if no CRM is chosen, and No lookup to sync if the row has no result. You can also click a completed row to open its details, where X-Ray CRM sync shows a Sync now button when the status is Failed or Fields dropped.

If every sync fails, not just one, the problem is usually the connection itself. See Troubleshooting: Leads Not Showing Up in GoHighLevel.

Good to know

  • Syncing again posts the note again. GoHighLevel cannot tell that two notes are the same, so a manual sync can leave two notes on the contact. Use it to recover a failed or partial sync, not as a refresh.

  • A re-sync sends everything. Notes, mapped fields and tags are all written again.

  • A changed mapping applies to results sent after the change. Contacts already in GoHighLevel only change if you sync them again.

  • To see exactly what was sent for one person, open their contact and use the Integration logs tab. See How to Use Integration Logs.

Did this answer your question?
๐Ÿ˜ž
๐Ÿ˜
๐Ÿ˜