Dwolla wallet to wallet failure

Hi @sanjay-cygnet , There hasn’t been any recent changes to the document upload flow for beneficial owners. If there are any planned changes in the API we’ll be sure to communicate those changes well in advance!

Hello @shreya

We are implementing dwolla business verification in our product.

As we know we have a separate status for controller and beneficial owner.

e.g - I have create business dwolla wallet with business type is llc , I have enter business info, controller info and beneficial owner info.

Now I have a one question?

Is any possible scenario when both controller and beneficial owner both have a document status at same time?

One more question: is dwolla consider common one status for business info, controller and DBA?

Hi @sanjay-cygnet!

Is any possible scenario when both controller and beneficial owner both have a document status at same time?

Yes, this is possible. A controller and beneficial owner may both be in a document status at the same time.

One more question: is dwolla consider common one status for business info, controller and DBA?

That’s correct. The status field on the Customer resource is only verified after the business and the controller are fully verified. The Beneficial Owner is its own entity though. So, it might have a different status than the Customer.

Hi @shreya

I am creating business customer with business type llc, While creating this business type customer ein number is required argument and controller also required.

Let’s assume our controller goes to retry status and we have to update controller info. we are used Verifying Customer Statuses | Dwolla API Documentation to update controller info.

For populating existing customer details, we are fetching customer data from dwolla and populating in our UI form. But while fetching customer from Dwolla we are not getting ein number. So we can’t populate ein number in our UI form. Which means while updating controller details, ein number is mandatory field.

So every time we have to enter new ein while updating controller details.

Question: Can we fetch ein number from dwolla anyway with customer details? If No, How can we manage update form?

Please share best solution for this use case.

Thanks.

Question: Can we fetch ein number from dwolla anyway with customer details? If No, How can we manage update form?

Hi @sanjay-cygnet, any sensitive PII is not returned from the API, including the EIN. To pre-populate the update form when a Customer/Controller falls into retry status, you could do one of the following:

  1. Save the information on your end first before sending the Customer’s information to the Dwolla API. You can then populate the form with the information from your DB. This does mean that you will need to employ proper security measures to handle and store sensitive information.

  2. (We recommend this route if you haven’t built out all your forms and status handling logic yet) You could our drop-in components for Business Verified Customer creation. With the drop-in, you don’t have to handle PII and you don’t need to build out forms and handle statuses. When in the drop-in flow, if the Customer falls into retry, all of their information is retained in the form for them to make corrections, including the EIN. However, if the customer exits the flow and comes back to it, then the EIN isn’t populated anymore. Similar to what you’re seeing, it will only populate the information that’s retrievable in the API. Feel free to check out some examples in our GitHub page (1, 2).

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

Hey @shreya

I have created a business verified customer with businessType is corporation. In which I have added business and controller details. Now that customer marked as document status. When we get customer we are getting verify-controller-and-business-with-document in _links which means document need to be upload for business and controller. Is this correct?

Now I have uploaded failed document for business. And I am receiving customer_verification_document_failed. Here I want to make sure which entity’s documents failed? Business or controller. Based on this we have to email notify user that your business/constroller documents get failed.

Also we have to show document failed reason to our user so he can upload proper doc again. For that we are fetching documents from dwolla of that customer by:

var customerUrl =
  "https://api-sandbox.dwolla.com/customers/02ea681e-a7d3-4f4f-bb93-3f006f32ff33/documents";
dwolla.get(customerUrl).then((res) => console.log(res.body));

But we can’t identifying document is uploaded for which entity?

Please share better approach.

Thanks.

That is correct! More information in our docs can be found here - Verifying Customer Statuses | Dwolla API Documentation

If there is a document that is failed for an entity, but another document is accepted for another entity, then the link in the Customer resource would change according to the table I linked above. You can also tell them apart by the “type” of the document sent in the response when viewing a Customers documents.

  • “type” : “other” is used for Business documents
  • “type” : " passport , license , or idCard" are used for Controller documents

Here’s an example of a Controller document -

"documents": [
    {
        "_links": {
            "self": {
                 "href": "https://api-sandbox.dwolla.com/documents/aa3ff8f5-1b7b-4bae-80c5-a4ab4d03a809",
                 "type": "application/vnd.dwolla.v1.hal+json",
                 "resource-type": "document"
             }
        },
        "id": "aa3ff8f5-1b7b-4bae-80c5-a4ab4d03a809",
        "status": "pending",
        "type": "license",
        "created": "2020-11-25T19:07:16.000Z"
    }
]

Hope that helps! Let us know if you have any further questions!

Hi @shreya

I have created verified business customer with business type is llc. In which I have added business info, account admin info, controller and beneficial owner.

I have got document status and when I get customer from dwolla I am getting verify-controller-and-business-with-document in _links object which means dwolla need business document and controller document. I have added success document for business and failed document for controller in sandbox env. After successfully uploaded documents for both business and controller dwollo instantly verified that customer though controller document has failed status given by dwolla. This is bit confusing us with our implementation.

We were expected dwolla business customer only be verified if both business and controller documents are verified and approved.

Please confirm.

Hi @sanjay-cygnet,

With Sandbox, it only needs one approved document for the business or the controller to mark the Customer as verified. But you can expect Production to run verification for both docs separately!

@shreya You mean in production, If both controller and business documents approve then only customer should verified?

If one document approved and one failed then business customer status should document, is this correct?

Yes, that is correct!

Hi shreya,

Unfortunately, we don’t have flexibility of testing on production environment. And we don’t want to publish feature without testing those critical combinations as it could affect our client’s business adversely.
Can you think of any alternative way by which at least we can test some of the combinations to verify things are working fine with overall integration with our product.

cc: @siddharth.seksaria @sanjay-cygnet @ghanshyam-cygnet

Hi @ali-cygnet,

I understand your concern about testing all possible scenarios before going to production. To address this, I suggest using a mock server to simulate the document flow API for specific scenarios, such as verifying Business documents without affecting the controller’s verification. Here are some examples on creating mock API servers that might be helpful to reference:

This controlled testing environment will allow you to test any combination safely. In addition to that, they are also useful when it comes to load testing and security testing.

Hope that helps! Let us know if we can provide any further help throughout your testing!