Transactions

Modify ACH Account

Use the Modify ACH Account endpoint to change an existing ACH account's information. You can add the same ACH account to multiple customer accounts, but you cannot add the same ACH account to the same customer account multiple times.

For instructions on using this endpoint see <a href="doc:ach-endpoints#modifying-ach-accounts" target="_blank">Modifying ACH Accounts</a> in the ACH Endpoints guide.

post/modifyAchAccount

Request

  • Base URL
    api-{corename}.{env}.gpsrv.com/intserv/4.0/ (relative, and the document’s source URL is not known)
  • URL
    api-{corename}.{env}.gpsrv.com/intserv/4.0/modifyAchAccount
  • Auth
    none declared

Request body application/x-www-form-urlencoded

apiLoginstring required

Web service username, as provided by SoFi Tech Solutions. Pattern: Max 50 characters Example: "AbC123-9999"

apiTransKeystring required

Web service password, as provided by SoFi Tech Solutions. Pattern: Max 15 characters Example: "4sb62fh6w4h7w34g"

providerIdinteger required

Your unique provider identifier from SoFi Tech Solutions. Pattern: Max 10 digits Example: 9999

transactionIdstring required

Supply a globally unique ID to identify this endpoint request ("transaction"). Might be used for <a href="ref:idempotency#endpoints-that-use-transactionid-for-idempotency" target="_blank">idempotency</a>. A UUID is preferred. Pattern: Maximum 60 characters Example: "9845dk-39fdk3fj3-4483483478"

accountNostring required

The <glossary:PRN> or <glossary:PAN> of the account. Pattern: PAN or PRN Example: "074103447228"

achAccountIdinteger required

ACH account identifier (ach_account_id), as returned by <a href="ref:post_addachaccount" target="_blank">Add ACH Account</a> or <a href="ref:post_getachaccounts" target="_blank">Get ACH Accounts</a> endpoint. Pattern: Integer Example: 354656

namestring nullable

The display name of the ACH account. Pattern: Alphanumeric string, max 22 characters Example: "Checking account"

type'C' | 'S' | 'M' nullable

Type of the external bank account:

  • C — Checking
  • S — Savings
  • M — Money market

Pattern: String Example: "C"

achAccountNostring nullable

External bank account number. Pattern: Max 22 digits Example: "4483434234348"

achRoutingNostring nullable

Routing number for the external bank where achAccountNo is housed. Pattern: 9-digit routing number, including check digit Example: "124001545"

entityType'I' | 'C' nullable

Specifies the type of ACH account to modify: individual (I) or company (C). C is valid only when BTBPG is set at the program level and when the ACH account was created using the <a href="ref:post_addachaccountcorporate" target="_blank">Add ACH Account Corporate</a> endpoint. When this value is I then firstName and lastName are required. When this value is C then companyName is required. Pattern: String Example: "C"

firstNamestring nullable

Required when entityType: I. First name(s) of the external account holder. Only the first 9 characters of this field are present in the outgoing <<glossary:Nacha file>>. Pattern: 1–40 alphanumeric characters Example: "Maricela Elena"

lastNamestring nullable

Required when entityType: I. Last name(s) of the external account holder. Only the first 12 characters of this field are present in the outgoing Nacha file. Pattern: 1–40 alphanumeric characters Example: "Garcia Castro"

companyNamestring nullable

Required when entityType: C. Name of the company that holds the external account. Keep in mind that only the first 22 characters of this name will be present in the outgoing <<glossary:Nacha file>>. Pattern: 1–40 alphanumeric characters Example: "Mountain Star Utilities"

locationstring nullable

Unique location identifier (location) as returned by the <a href="ref:post_createlocation" target="_blank">Create Location</a> endpoint. This value is also returned by the <a href="ref:post_getlocations" target="_blank">Get Locations</a> endpoint depending on the value of locationType when the location was created:

  • 0 or 2 — Returned in the location_id field
  • 1 — Returned in the provider_specified_id field

Pattern: Integer if locationType: 0 or locationType: 2; max 15 characters if locationType: 1 Example: "a455-3483"

locationType0 | 1 | 2 nullable

Type of ID in location:

  • 0 — SoFi Tech Solutions location ID
  • 1 — Partner location ID
  • 2 — Don't validate

Pattern: Integer Example: 1

Example request

{
  "apiLogin": "AbC123-9999",
  "apiTransKey": "4sb62fh6w4h7w34g",
  "providerId": 9999,
  "transactionId": "123e4567-e89b-12d3-a456-426614174000",
  "accountNo": "074103447228",
  "achAccountId": 354656,
  "name": "Checking account",
  "type": "C",
  "achAccountNo": "4483434234348",
  "achRoutingNo": "124001545",
  "entityType": "C",
  "firstName": "Maricela Elena",
  "lastName": "Garcia Castro",
  "companyName": "Mountain Star Utilities",
  "location": "a455-3483",
  "locationType": 1
}

Response

status_codeinteger nullable required

The response status code. May return a string for some statuses.

statusstring nullable required

The condition of a process or response

processing_timenumber float nullable required

The time elapsed in processing the transaction

system_timestampstring date-time nullable required

A system generated timestamp

rtokenstring nullable required

A system-generated ID used for tracking

errorsstring[]

A list of errors generated while the request was processed

Changes

No recorded changes to this operation across all 2 revisions of this API.