Transactions

Create Adjustment

Changed on

Use the Create Adjustment endpoint to move funds into or out of a customer account. Transactions using this endpoint are returned by the <a href="ref:post_getaccountoverview" target="_blank">Get Account Overview</a> endpoint only after several seconds have elapsed. To drive an account negative using this endpoint, set the ALWNB parameter at the provider level.

Consult the <a href="doc:creating-an-adjustment" target="_blank">Creating an Adjustment</a> guide for instructions on using this endpoint.

Duplicate requests

When this endpoint returns status_code: 24 (Duplicate transaction) because the same transactionId was already used successfully for Create Adjustment, response_data contains the same fields as a successful response (status_code: 0): adjustment_trans_id, transaction_id, old_balance, and new_balance. Use those values to update your records without a separate lookup. This is especially useful when a prior call timed out after the adjustment was committed: retrying with the same transactionId recovers the original result.

[block:callout]

{ "type": "warning", "title": "Warning", "body": "This endpoint requires a positive integer less than 9223372036854775807 (sys.maxint in Python 2 or sys.maxsize in Python 3) for transactionId rather than the alphanumeric string that all other endpoints use. The Reverse Adjustment endpoint uses this integer to identify the transaction to reverse out." } [/block]

post/createAdjustment

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/createAdjustment
  • 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"

transactionIdinteger required

A unique integer ID for the transaction. Pattern: 64-byte integer Example: 164736451002

accountNostring required

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

amountnumber float required

Currency amount as a whole or decimal amount. Pattern: Positive integer or decimal number Example: 100.00, 100, or 100.73

typestring required

The transaction type for the adjustment. Use the values provided by SoFi Tech Solutions for your program. Pattern: 1- or 2-character alphanumeric, case-sensitive Example: "le"

descriptionstring nullable

Description for the transaction. Pattern: 1–80 alphanumeric characters, including punctuation Example: "One time payroll load."

debitCreditIndicator'C' | 'D' required

Specifies whether this transaction credits or debits the account in accountNo:

  • C — Credit
  • D — Debit

Pattern: String Example: "D"

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: 0

verifyOnly'0' | '1' nullable

Pass 1 to test the validity of the parameter data without committing the information to the system. Pattern: Integer Example: 0

includeRtfTransfer'0' | '1' nullable

Specifies whether the amount in this transaction should be transferred to or from the RTF funding account that is associated with this RTF spending account. Default: 1

  • 0 — Do not perform an RTF transfer for this amount
  • 1 — Perform an RTF transfer for this amount.

Pattern: Integer Example: "1"

disputeIdstring nullable

External dispute ID, to be used by dispute providers only. Pattern: 1-16 alphanumeric characters Example: "21010000000D"

enforceTransactionLimits0 | 1 nullable

Pass 1 to enforce any adjustment transaction limits. Pattern: Integer Example: 0

Example request

{
  "apiLogin": "AbC123-9999",
  "apiTransKey": "4sb62fh6w4h7w34g",
  "transactionId": 164736451002,
  "accountNo": "074103447228",
  "amount": 25.5,
  "description": "One time payroll load.",
  "debitCreditIndicator": "D",
  "location": "a455-3483",
  "disputeId": "21010000000D"
}

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