Let’s set the stage here. Your application uses Dwolla to pay employees for time worked in a prior pay period and you’ve just initiated your first payroll disbursement.

So, you’re good to go, right?

Well…maybe.

Days later after receiving a transfer completion webhook notification from Dwolla, one of your employees claims they haven’t received their paycheck and shows you a copy of their bank statement to prove that funds haven’t reached their checking account.

Checkmate, right? It looks like you’ll have to send another paycheck to your employee.

But, the funds are somewhere— money shouldn’t just disappear into the ether. What if there was a way to validate where the funds are?

With every transfer utilizing the Automated Clearing House (ACH) Network, there is a unique reference number called a trace number, which we at Dwolla call a Trace ID. Trace IDs are used to “trace” funds to see where they are at any given banking institution.

With ACH transfers, specific transaction details are made private in order to ensure the safety of account information and identity. Although you won’t likely be able to see the progress of your transaction between banks, you or your end users can communicate with their bank to see if the transaction has been processed and sent. The Trace ID is crucial to ensuring that a bank can track where funds are.

When Can I Retrieve the Trace ID?

On a bank-to-bank transfer between two Customers, there will be two Trace IDs that are generated; one for the `source` and another for the `destination`.

The `source` Trace ID can be retrieved the day after a transfer has been initiated, as the funds have been sent and are en-route through the Dwolla Network.

The `destination` Trace ID can be retrieved after the funds move through the Dwolla Network and into a destination bank account.

Where Can I Retrieve the Trace ID?

Previously, retrieving the Trace ID was a long process. API Clients needed to get in touch with Dwolla’s Account Managers, and from there the Account Manager would reply with a Trace ID back for a specific transfer, which in turn, got sent to the end user who was missing funds. This process was long, manual and required quite a bit of back and forth communication.

Recently, Dwolla made product enhancements to expedite the retrieval of a Trace ID.

The Trace ID can now be viewed directly in your Dwolla Dashboard, allowing your own Customer Support team to self-service with your Customers.

trace id found in dwolla dashboard

Want to take it a step further and let your end users service themselves?

You can now retrieve the Trace ID from the API and return this value in your own application.

GET https://api.dwolla.com/transfers/0440de70-f761-e911-8118-b904d007e40f
Accept: application/vnd.dwolla.v1.hal+json
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0cKTii7DqY

{
  "_links": {
    "source": {
      "href": "https://api-sandbox.dwolla.com/customers/c2bdcc87-91cd-41dd-9b06-5e31d4d3bbe4",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "customer"
    },
    "funding-transfer": {
      "href": "https://api-sandbox.dwolla.com/transfers/0340de70-f761-e911-8118-b904d007e40f",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "transfer"
    },
    "destination-funding-source": {
      "href": "https://api-sandbox.dwolla.com/funding-sources/456ef23f-d51c-4781-8fb6-dd0cb8a40192",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "funding-source"
    },
    "self": {
      "href": "https://api-sandbox.dwolla.com/transfers/0440de70-f761-e911-8118-b904d007e40f",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "transfer"
    },
    "funded-transfer": {
      "href": "https://api-sandbox.dwolla.com/transfers/e092a986-f761-e911-8118-b904d007e40f",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "transfer"
    },
    "source-funding-source": {
      "href": "https://api-sandbox.dwolla.com/funding-sources/3152c22b-3d72-442d-a83b-e575df3a043e",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "funding-source"
    },
    "fees": {
      "href": "https://api-sandbox.dwolla.com/transfers/0440de70-f761-e911-8118-b904d007e40f/fees",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "fee"
    },
    "destination": {
      "href": "https://api-sandbox.dwolla.com/accounts/30a6cb55-1754-4948-b431-ebe48288ef25",
      "type": "application/vnd.dwolla.v1.hal+json",
      "resource-type": "account"
    }
  },
  "id": "0440de70-f761-e911-8118-b904d007e40f",
  "status": "processed",
  "amount": {
    "value": "1500.00",
    "currency": "USD"
  },
  "created": "2019-04-18T16:31:39.933Z",
  "achDetails": {
    "source": {
      "TraceId": "987654321"
    },
    "destination": {
      "traceId": "987654321"
    }
  }
}

For more information on how to retrieve a transfer via the API, check out our API reference docs.

So we’ve established the fact that Dwolla will now share the Trace ID to create efficiencies for our API customers, but this leads to our next question:

What can your end users do with this Trace ID?

Once your end users have received this Trace ID, they may be able to determine the status or location of a transaction by contacting their financial institution.

Once the financial institution has located the transaction using the Trace ID, the end user’s financial institution and the end user will work together to determine next steps.

Benefit From Better Tracking

Having readily available Trace IDs provides a welcome convenience to companies that make a lot of transactions. The ability to find where payments are in close to real time is great for peace of mind and for customer service, allowing a business to help resolve issues fast. Dwolla is never done but our latest actions to improve access to Trace IDs represents a step forward.

Start building in our sandbox for free, right now. Get a feel for how our API works before going live in production.

Stay Updated with Dwolla