This article covers the validation messages, flow-run errors, and NetSuite exceptions specific to Cash Application Manager's Email Remittance feature. Use it if a Gmail or Outlook remittance flow shows errors, or if a payment you expected to see posted in NetSuite is missing.
Flow-run errors
These errors appear on the flow's Errors column and in the flow's error dashboard. Each one means CAM rejected a specific email before creating any NetSuite record for it — no customer payment, transaction, or batch record is created for a rejected email.
EMAIL_SENDER_NOT_ALLOWED
Symptom: The flow's errors list an email with a subject line and this code.
Cause: You've configured Allowed senders on the flow's settings, and this email's sender isn't on that list.
Resolution: If the sender should be allowed, add their address or domain to Allowed senders and rerun the flow, or select Run now with an earlier start date to pick it up. If the sender shouldn't be allowed, no action is needed; CAM correctly rejected it.
EMAIL_NOT_REMITTANCE
Symptom: Email "<subject>" was skipped because it isn't a remittance email. Remove the label if it was applied by mistake.
Cause: The email carries your configured label or category, but the AI extraction step determined its content isn't a remittance.
Resolution: Confirm the email isn't a remittance. If it was labeled by mistake, remove the label or category. If you believe it is a remittance, check that the amount and invoice details are present in the email body or a PDF attachment.
EMAIL_NO_PAYMENT_AMOUNT
Symptom: Email "<subject>" was skipped because no payment or invoice amounts were found. Review the email and apply the payment manually in NetSuite.
Cause: The AI extraction step couldn't find a payment amount or invoice amount. This includes credit-only or net-zero remittances, which Email Remittance doesn't extract.
Resolution: Apply the payment manually in NetSuite. For a credit-only remittance, this is expected behavior; Email Remittance doesn't have a dedicated credit-memo-only extraction path.
EMAIL_EXTRACTION_MISSING
Symptom: The AI extraction step didn't return a result for this email. Check the errors on the Bank File to NetSuite [EMAIL - ACH - Gmail] Extract Remittance Data import and Bank File to NetSuite [EMAIL - ACH - Outlook] Extract Remittance Data import for the flow run.
Cause: The AI extraction step failed to return output; for example, the account is out of AI agent credits, or the platform's AI agent adaptor returned an error.
Resolution: Open the Extract Remittance Data import errors for this flow run to see the underlying cause. If it's a credits issue, add AI agent credits to your account. If it's a platform error, retry the error after confirming the underlying issue is resolved.
EMAIL_MESSAGE_INVALID
Symptom: One of:
- We couldn't read this email because Gmail returned an unexpected message format. Retry this error.
- We couldn't read this email because Outlook returned an unexpected message format. Retry this error.
- We couldn't read this email because the mailbox returned an unexpected message format. Retry this error.
Cause: CAM couldn't parse the raw message returned by Gmail or Outlook.
Resolution: Retry the error. If it continues to fail for the same message, contact Celigo support with the message subject and flow run ID.
Exceptions staged as Unidentified in NetSuite
Unlike the flow-run errors above, an exception is a remittance CAM could partly read but doesn't trust enough to post automatically. CAM stages it in NetSuite as an Unidentified transaction with no customer or invoice attached, and records the reason in the transaction's notes, for example:
... | EXCEPTION: confidence 0.4 below threshold 0.9 | remitter Elliot Hospital
Cause: One or more of the following:
- The AI extraction confidence is below your Minimum confidence to auto-apply setting.
- The extracted payment amount doesn't match the sum of the invoice amounts in the email.
- The remittance detail is only in a PDF attachment CAM couldn’t read, or the remittance detail is only in a non-PDF attachment.
- The extracted payment date doesn't parse, or the email has no usable date.
- On Gmail, SPF or DKIM returned fail, softfail, or permerror. Missing headers are not a cause. Outlook does not provide these headers.
- The remitter could not be identified.
- The remitter is the person who forwarded the email, not the payer.
- The remitter is your own company, not the payer.
- More than one invoice was extracted with no amount.
If only one invoice with no amount is found, CAM applies the full payment amount to it and doesn't hold the remittance for this reason; only two or more such invoices trigger a hold.
Resolution: Review the transaction notes in NetSuite for the specific reason, then apply the payment manually once you've confirmed the details from the original email. CAM doesn't offer a setting to auto-post these exceptions; they always require manual review.
Debug logs and email content
Running a flow's steps in detailed or debug log mode can persist message, attachment, and AI prompt content in that flow's own execution logs. Debug logging is off by default and is stored under your own account's log retention, not shared with Celigo. Turn it off again once you've finished debugging a specific flow run.
Prevention
- Set Allowed senders to your AP platforms' actual sending addresses or domains so CAM rejects unexpected mail before it reaches the AI extraction step.
- Apply your Gmail label or Outlook category with a filter or inbox rule at arrival, instead of labeling messages by hand, so CAM's scheduled runs don't miss late-labeled mail.
- Review your Minimum confidence to auto-apply setting periodically against the Unidentified transactions it produces; a threshold that's too low risks incorrect auto-applied payments, and one that's too high creates unnecessary manual review work.
- Route each remittance source through one channel only (bank file or email, not both, and not both Gmail and Outlook for the same relationship) to avoid the duplicate-payment risk described in Avoid creating duplicate transactions in NetSuite.