Testing ACH In Sandbox

While we work on getting a workflow version of our widget implementation ready for sandbox, we've established a way to simulate the bank linking and payment delivery for ACH. Follow the steps/API calls below to test ACH API endpoints.

First we need to generate the widgetURL, this is required for this setup however you will not need to do anything with the link that is returned in the response. If this step isn't done first, the next call will return a 404

GET /api/trust/v1/external-accounts/financial/widget-url/{{personalIdentityId}}

//Sample Response
{
  "widgetUrl": "https://int-widgets.moneydesktop.com/md/connect/pb3zjg74qn0znbywd3y1q89mz1Zbbk0xj1Ayj1h7s0dcAqww2zlz4tgfxk445p70ccprAy6A6bv157573y6b51g3t9xzz4cvhr7brcgrvA14hmgn9stp35rwwzmgtypvb28mwk51yjAg06pxxrqtt9k7plgcqx4qvyvm8c4y70nqz1jwhpcff1w3cdc1yqwfn07zp6gjsk8wcdft9vf45k3g9p3v8A2kkn7pf2pc5rq3vjhAjA5vzmd8fp9n0fwf2tnnlyw60bfqf152c9001ty2n1z1y1zd1n2pk23g6fs252f7rf7vqzdc4rg4vn8swmvlrwA4wyc6b15k7jpA150h918mh07trAmcwzgq/eyJ1aV9tZXNzYWdlX3ZlcnNpb24iOjQsInVpX21lc3NhZ2Vfd2Vidmlld191cmxfc2NoZW1lIjoibXgiLCJjb2xvcl9zY2hlbWUiOiJkYXJrIn0%3D"
}

Next, we need to obtain a faux member and their associated memberGuid

GET /api/trust/v1/financial-institutions/sandbox/members/{personalIdentityId} //the identity of who you're simulating this bank linking for

//Sample Response

{
  "data": [
    {
      "memberGuid": "MBR-ab11f6eb-96bd-4720-b4b2-bdf042cb0187", //this is the field you'll need for subsequent calls
      "name": "Checking",
      "connectionStatus": "created" //choose the "connected" account
    }
  ]
}

Next, we connect the memberGuid to the identityId of the identity we're simulating this bank linking for.

POST /api/trust/v1/financial-institutions/members

//Sample Request

{
  "identityId": "9A4DC5AF-448B-4DA3-991B-900D5FCE68EA", //The identity you're simulating the bank linking for
  "memberGuid": "MBR-ab11f6eb-96bd-4720-b4b2-bdf042cb0187" //returned value from the above call
}

Followup with a call to obtain the accountGuid which will simulate the id that is returned after a successful MX widget bank linking.

GET /api/trust/v1/financial-institutions/accounts?identityId={personalIdentityId}

//Sample Response

[
  {
    "name": "Checking",
    "accountNumberLast4": "x0034",
    "accountGuid": "ACT-92f8ecd9-2d9b-4dfe-bd1e-4426f0c7j8h2" //This will be used to establish the externalAccount object used for deposits/withdrawals
  }
]

Lastly, make the API call to create the externalAccount object that will be used as a reference for the selected bank in any payments.

POST /api/trust/v1/external-accounts/financial

//Sample Request

{
  "identityId": "9A4DC5AF-448B-4DA3-991B-900D5FCE68EA", //identity who you are creating the bank linking for
  "financialAccountId": "ACT-92f8ecd9-2d9b-4dfe-bd1e-4426f0c7j8h2" //accountGuid returned from the previous call
}

With these steps finished, you can now make an ACH payment.


Did this page help you?