GoodFunds Gateway - RESTful API Documentation

Bank Verification Services

Bank Verification Services provides real-time account verification and check verification for consumers or businesses, so you can be confident an account is valid prior to enrolling customers or processing check or ACH transactions.

POST bankVerify

Real-time account verification.

    Resource Information

  • Method: POST
  • URL: https://demo.goodfundsgateway.com/demoapi/bankverify.json
  • Requires authentication? Yes

Method Parameters

N/A

Query Parameters

Parameter Type Required Description
accounts node Y List of accounts that need to be verified.
uniqueId string Y A username or user ID in your own records, e.g. "Simulatedusername", "98765432".
depositType string Y Bank account deposit type which can be either "Business" or "Personal".
first_name string Y John
last_name string Y Doe
company_name string Y Test Company
routingNumber string Y Routing/Transit Number as printed on the Check.
accountNumber string Y Bank account number as printed on the Check.
accountType string Y Checking or Savings
test node Y Use Sandbox 1 "Yes" or 0 "No"

PHP Sample Request: (json format)

      $data = array(
        'accounts' =>  array(
          '0' => array(
            'uniqueId' => time(),
            'depositType' => 'Business',
            'first_name' => 'John',
            'last_name' => 'Doe',
            'company_name' => 'Test Company',
            'routingNumber' => '{routing number}',
            'accountNumber' => '{account number}',
            'accountType'   => 'Checking'
          ),
          '1' => array(
            'uniqueId' => time(),
            'depositType' => 'Personal',
            'depositType' => 'Business',
            'first_name' => 'John',
            'last_name' => 'Doe',
            'company_name' => 'Test Company',
            'routingNumber' => '{routing number}',
            'accountNumber' => '{account number}',
            'accountType'   => 'Checking'
          )
        ),
        'test' => 1
      );

      $data_string = json_encode($data);

      $url = 'https://demo.goodfundsgateway.com/demoapi/bankVerfiy.json';

      $ch = curl_init($url);
      curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
      curl_setopt($ch, CURLOPT_SSLVERSION, 6);
      curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json',
        'Content-Length: ' . strlen($data_string),
        'svs-api-id: [SVS-API-ID]',
        'svs-api-key: [SVS-API-KEY]')
      );

      $result = curl_exec($ch);

      $err = curl_error($ch);

      curl_close($ch);

      if ($err) {
      echo "cURL Error #:" . $err;
      } else {
      echo $result;
      }
    

Response data: (json format)

      {
        "data": [
          {
            "uniqueId": "1495221111",
            "verificationResponse": "NegativeData"
          },
          {
            "uniqueId": "1495221113",
            "verificationResponse": "PrivateBadChecksList"
          },
          {
            "uniqueId": "1495221119",
            "verificationResponse": "NoData"
          },
          {
            "uniqueId": "1495221121",
            "verificationResponse": "Declined"
          },
          {
            "uniqueId": "1495221122",
            "verificationResponse": "RejectItem"
          },
          {
            "uniqueId": "1495221123",
            "verificationResponse": "AcceptWithRisk"
          },
          {
            "uniqueId": "1495221124",
            "verificationResponse": "PassNdd"
          },
          {
            "uniqueId": "1495221126",
            "verificationResponse": "Pass"
          }
        ]
      }