Verification Documents, Embedded Errors, Verification Directives - Sole Proprietors

We have a sole proprietor with document status and verify-with-document link. They uploaded an ID, which was approved, but the embedded errors indicate that they now also need to upload an EIN document.

Your docs define verify-with-document as “documents are needed only for a Controller.” Since the controller document was accepted and the outstanding requirement is a business document, the link and the directive appear to describe different things.

  1. Is verify-with-document expected to persist after the controller document is accepted, while a business document is still outstanding? Should we treat _links as the current outstanding set, or as a record of the original request?
  2. When _embedded.errors is present on a retry or document Customer, is it a complete enumeration of everything currently outstanding, or can it name a subset? This determines whether we can render directives as the full list of what a customer still owes.
  3. Does a directive clear when the corresponding document is uploaded, or only once it is accepted? Related: if an uploaded document is subsequently rejected, does the original directive reappear?
  4. Is the verification directive table in your documentation the complete set of codes, or can production return codes not listed there? If the list changes, is there a changelog or notification we can follow?

Hi @george,

  1. This is specific to soleProprietorship. For an LLC or Corporation, which has a separate Controller entity, the rel behaves exactly as documented and does decompose. Sole props have no separate Controller entity to satisfy independently, so the rel can’t be narrowed the same way. Full detail on how to handle it, including which document to upload and how to diagnose it yourself, is on the other thread.

  2. No, it’s a subset. The verify-with-document, verify-business-with-document, and verify-controller-and-business-with-document requirements are not represented in the errors array. They exist only as _links rels. So directives alone are not the full list of what a Customer still owes. They are additional information to the rels.

  3. On satisfaction, not on upload. Once the underlying requirement is actually met, the directive disappears from the array.

    For document-backed directives, satisfaction means the document reached documentVerificationStatus: accepted. An uploaded-but-pending document has not satisfied anything, and the directive stays.

    On your rejection question: a rejected document never satisfied the requirement, so the directive persists.

    Sole props are the exception, Please see the other thread for more detailed info.

  4. No. The docs list common verification directives you may encounter, and new directives may get added over time. Production can return codes not currently in that table.

    So handle unknown codes defensively and fall back to rendering message and its _links action rather than failing closed.

    New directives will be logged here - Changelog - Dwolla Developer Portal.

Hope this helps! Let us know if you have any questions!