Node Object Details
Node Schema
Key
Type
Required
Description
_id
String
N.A. Included in API response.
Primary Key of the node object.
allowed
String
Depends. Only required if you are trying to verify micro-deposit or close a node.
The current allowed permissions of the node object. Go to Possible Allowed Values to learn more.
allowed_status_code
String
Depends. Only required if you are trying to close a node.
The reason for the current allowed value. Go to Possible Allowed Status Codes to learn more.
is_active
Boolean
Only required when trying to unindex a node.
If false
, the node will not be shown in View all User Nodes response. This feature is used to remove old accounts from a user list call if the user is not intending to use them anymore, usually used for old Payment Accounts. If you wish to update the transaction ability of a node, please review the allowed
field. Toggling is_active
does not impact the ability of a node to transact.
client.id
String
N.A. Included in API response.
The Primary Key that denotes your client object in our system.
client.name
String
N.A. Included in API response.
Your common name in our system.
extra.note
String
Only required when you are trying to register a loan rejection in our system.
This value stores the loan rejection reasons. Go to Possible Loan Rejection Reasons to learn more.
extra.supp_id
String
No
You can use this field to store the Primary Key of this object in your system.
timeline.date
Number
N.A. Included in API response.
Unix timestamp (in ms) value of when the timeline object was created.
timeline.note
String
N.A. Included in API response.
Human readable notes associated with the timeline object.
interest.fee
Number
No
Charges the user a loan origination fee. Is added as part of the APR and requires a payment_node_id
.
Possible Loan Rejection Reasons
Reason
Description
Set By
INCOME|INSUFFICIENT
Income insufficient for amount of credit requested.
You
INCOME|NOINFO
Cash flow information is insufficient.
You
INCOME|UNVERIFIABLE
Unable to verify income.
You
ACCOUNT|TOOSHORT
Length of account is too short with you.
You
ASSETS|INSUFFICIENT
Loan rejected because the amount in their checking account is lower than the amount of their first installment.
You
ACCOUNT|OVERMAXLOANS
They have reached the maximum number of loans that can be offered at one time. This is defined in your spec sheet. Go to Intro to Spec Sheets to learn more.
Us
ACCOUNT|OVERMAXAMOUNT
The amount requested is higher than what can be offered. This is defined in your spec sheet. Go to Intro to Spec Sheets to learn more.
Us
ACCOUNT|WRONGTYPE
Wrong loan type being requested. This is defined in your spec sheet. Go to Intro to Spec Sheets to learn more.
Us
USER|NOKYC
KYC is not finished on the user. Please finish KYC and try again.
Us
ASSETS|INSUFFICIENT
Loan rejected because the amount in your checkings account is lower than the amount of your first installment.
You
LOAN|INSUFFICIENT
This loan is intended to help you pay down your debt, and we have determined your approved loan amount is insufficient to cover your debts at this point in time.
You
USER|UNVERIFIABLE
Your request for a loan was not able to be processed because we were unable to validate your identity with the details and credentials provided.
You
Possible Allowed Values
Allowed
Description
Next Steps
CREDIT-AND-DEBIT
Funds can be debited or credited from this node.
No action required.
CREDIT
Funds can only be sent to this node. No Debits allowed.
If this node is ACH-US, next step could be micro-deposit verification. If not, no action required. This is the final allowed permission. For example, in instances of a check, you can only send money to it, cannot debit from a check node.
DEBIT
Funds can only be debited from this node. No Credits allowed.
This is a common allowed value for Interchange nodes in instances where push to card has not been enabled my the issuer of the card. If the user wishes to push to card, ask the user to link another card.
INACTIVE
Currently the node is not active and is unable to transact.
Currently only used for One-time Credit Accounts. These nodes are set to INACTIVE
after 60 days of inactivity. You can also use this status to suspend a loan with a PATCH
API call. If you have set allowed to INACTIVE
, please ensure that the end user has been notified of this change.
NOTE: Unable to set LOAN-US node of REVOLVING or OPEN types to INACTIVE if node age is under one month or any non-cancelled or returned transaction created during past month exists.
LOCKED
The node has been locked.
If this is set by you, please ensure that a proper allowed status code has been supplied with it. Go to Possible Allowed Status Codes to learn more. Please ensure that the end user has been notified of this change.
REJECTED
Loan request was rejected.
Currently used for credit accounts, this code denotes that the loan request was rejected. This can be done by you when calling POST
node API call or our internal rules could cause a rejection as well. The score card is documented on your spec sheet. Go to Intro to Spec Sheets to learn more. Please ensure that the end user has been notified of this outcome.
Possible Allowed Status Codes
Allowed Status Code
Description
Next Steps
USER_REQUESTED
User requested the allowed status change.
No action required.
ISSUER_DIRECTED
Issuer of the node requested status change. Mostly used when an ACH or Interchange account needs to be locked for suspicious activity or invalid details.
Please ensure that the end user has been notified of this outcome.
ACCOUNT_CLOSED
Since the user account was being closed, the node was closed as well.
Please ensure that the end user has been notified of this outcome.
ACCOUNT_LOCKED
Since the user account was bing locked, the node was locked as well.
Please ensure that the end user has been notified of this outcome.
NOT_KNOWN
Allowed status change reason unknown.
No next steps recommend here since legacy tag.
Info Schema
The node resource is used to create or link various types of liquidity accounts to the user. The purpose of this is to allow you to easily interface and build with deposit, credit or payment. For that reason, various types of nodes have various types of information avaliable inside the info
object.
Info Schema of Deposit Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Default Checking Account".
balance.amount
Number
N.A. Included in API response
Balance held in the deposit node.
balance.currency
String
N.A. Included in API response
Currency of the deposit node.
monthly_withdrawals_remaining
Integer
N.A. Included in API response
If the deposit node has withdrawal restrictions, this value will denote how many more withdrawals are allowed. This value resets every month.
bank_code
String
N.A. Included in API response
Code of the bank where this account resides. Since we have multiple partner banks, this code can vary based on the bank partner where this account was opened.
agreements.type
String
N.A. Included in API response
Type of agreement attached on the node. Go to Possible Agreement Types to learn more.
agreements.url
String
N.A. Included in API response
The PDF URL of the appropriate agreement. Each agreement contains the IP, Timestamp and Device Fingerprint of the user at the time of node creation.
Info Schema of IC-DEPOSIT-US and IB-DEPOSIT-US
info.balance.interest
Number
N.A. Included in API response
Daily interest accrual of interest (accumulator). Will zero out on the following month after interest rate payout to the user.
Info Schema of Cash Management Account Object
Key
Type
Required
agreements.type
String
N.A. Included in API response
Type of agreement attached on the node. Go to Possible Agreement Types to learn more.
agreements.url
String
N.A. Included in API response
The PDF URL of the appropriate agreement. Each agreement contains the IP, Timestamp and Device Fingerprint of the user at the time of node creation.
bank_code
String
N.A. Included in API response
Code of the bank where all the processing for this account will happen. Since we have multiple partner banks, this code can vary.
document_id
String
N.A. Included in API response
ID of the base document who is the primary owner of this node.
bank_code
String
N.A. Included in API response
Code of the bank where this account resides. Since we have multiple partner banks, this code can vary based on the bank partner where this account was opened.
custody
String
Yes
Custody values include: FDIC
or MMF.
risk
String
Yes
Risk values include: CONSERVATIVE
, MODERATE
or AGGRESSIVE
. Please note, in case of FDIC custody, risk values currently do not change impact on which banks funds are swept to.
balances
Object
N.A. Included in API response
Object containing the balances in the CMA account. The key is the accounts currency and the value is the amount of funds per currency. Eg. for USD, the key-value pair would be USD:100.00
.
Info Schema of Revolving Credit Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Default Credit Account".
balance.amount
Number
N.A. Included in API response
Current Balance owed by the user on this credit node.
balance.currency
String
N.A. Included in API response
Currency of the credit node.
credit_limit.amount
Number
Yes
Max credit extended to the user.
credit_limit.currency
String
Yes
Currency of the credit node.
interest.apr
Number
Yes
Current APR rate in %.
interest.cap
Number
Yes
Max interest owed by the user in appropriate currency.
interest.accrued
Number
N.A. Included in API response
Interest accrued so far.
interest.fee
Number
No
Charges the user a loan origination fee. Is added as part of the APR and requires a payment_node_id
.
agreements.type
String
N.A. Included in API response
Type of agreement attached on the node. Go to Possible Agreement Types to learn more.
agreements.url
String
N.A. Included in API response
The PDF URL of the appropriate agreement. Each agreement contains the IP, Timestamp and Device Fingerprint of the user at the time of node creation.
schedule
String
Yes.
Payment schedule associated with the credit node. Currently only MONTHLY
allowed.
bank_code
String
N.A. Included in API response
Code of the bank where all the processing for this account will happen. Since we have multiple partner banks, this code can vary.
reserve_node_id
String
No
If the resolving loan is intended to be a secured loan. Reserve Node ID can be used to supply the ID of the collateral/reserve account associated with the secured loan.
split_ratio
Integer
No
If the only is partially secured, supplying this value will require only upto the supplied value split in the reserve_node_id
. For instance if split_ratio
is 30, that means only 30% of credit_limit needs to be in reserve_node_id
.
Info Schema of Open Credit Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Default Credit Account".
balance.amount
Number
N.A. Included in API response.
Current Balance owed by the user on this credit node.
balance.currency
String
N.A. Included in API response.
Currency of the credit node.
interest.apr
Number
Yes
Current APR rate in %.
interest.cap
Number
Yes
Max interest owed by the user in appropriate currency.
interest.accrued
Number
Yes
Interest accrued so far.
agreements.type
String
N.A. Included in API response.
Type of agreement attached on the node. Go to Possible Agreement Types to learn more.
agreements.url
String
N.A. Included in API response.
The PDF URL of the appropriate agreement. Each agreement contains the IP, Timestamp and Device Fingerprint of the user at the time of node creation.
schedule
String
Yes
Payment schedule associated with the credit node. Currently only MONTHLY
allowed.
bank_code
String
N.A. Included in API response.
Code of the bank where all the processing for this account will happen. Since we have multiple partner banks, this code can vary.
reserve_node_id
String
Yes
ID of the collateral/reserve account associated with the open loan.
Info Schema of One-Time Credit Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Default Credit Account".
balance.amount
String
N.A. Included in API response.
Current Balance owed by the user on this credit node.
balance.currency
String
N.A. Included in API response.
Currency of the credit node.
credit_limit.amount
Number
Yes
Max credit extended to the user.
credit_limit.currency
String
Yes
Currency of the credit node.
interest.apr
Number
Yes
Current APR rate in %.
interest.cap
Number
Yes
Max interest owed by the user in appropriate currency.
interest.accrued
Number
N.A. Included in API response.
Interest accrued so far.
agreements.type
String
N.A. Included in API response.
Type of agreement attached on the node. Go to Possible Agreement Types to learn more.
agreements.url
String
N.A. Included in API response.
The PDF URL of the appropriate agreement. Each agreement contains the IP, Timestamp and Device Fingerprint of the user at the time of node creation.
auto_pay
Boolean
No
If true
, users will be charged automatically based on their payment schedule. Default is false
.
payment_node_id
String
No
Node ID where the repayment would come from when auto_pay
is set to true
.
disbursement_node_id
String
Yes
Node ID where the loan should be disbursed.
schedule
String
Yes
Payment schedule associated with the credit node. Currently only MONTHLY
allowed.
next_payment
Number
Yes
Unix timestamp (in ms) value of when the next payment is due. When creating the loan, you need to supply an int value of how many days from today the next payment should happen.
NOTE: next_payment
is updated automatically if auto_pay
is set to True, otherwise it must be updated manually
num_payments
Integer
Yes
Number of installments to break the repayment into.
installments.amount
Number
N.A. Included in API response.
Amount due for the installment.
installments.date
Number
N.A. Included in API response.
Unix timestamp (in ms) value of when the installment payment is due.
bank_code
String
N.A. Included in API response.
Code of the bank where all the processing for this account will happen. Since we have multiple partner banks, this code can vary.
reserve_node_id
String
No
ID of the collateral/reserve account associated with the open loan.
split_ratio
Integer
No
If the only is partially secured, supplying this value will require only upto the supplied value split in the reserve_node_id
. For instance if split_ratio
is 30, that means only 30% of credit_limit needs to be in reserve_node_id
.
Info Schema of ACH Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "BofA Checking Account".
account_num
String
Yes
Account number of the bank account.
routing_num
String
Yes
Routing number of the bank account.
speeds
Array of Strings
N.A. Included in API response.
Returns possible speeds at which payments can be sent to this account.
Possible values are NEXTDAY
,SAMEDAY
,RTP
.
In all cases, whenNEXTDAY
is supported, SAMEDAY
is as well. So functional variance will be RTP
support or not.
match_info.email_match
String
N.A. Included in API response.
If bank account is liked with our account aggregation feature, here you can see if email listed on the bank account is a match with the email on the base document. Possible values: not_found/match/no_match
.
match_info.phonenumber_match
String
N.A. Included in API response.
If bank account is liked with our account aggregation feature, here you can see if email listed on the bank account is a match with the phone on the base document. Possible values: not_found/match/no_match
.
match_info.name_match
String
N.A. Included in API response.
If bank account is liked with our account aggregation feature, here you can see if email listed on the bank account is a match with the name on the base document. Possible values: not_found/match/no_match
.
type
String
Yes if not through our account aggregation feature.
Type of ACH account. Possible values: PERSONAL
, BUSINESS
.
class
String
Yes if link not happening through our account aggregation feature.
Class of ACH account. Possible Values: CHECKING
, SAVINGS
, GENERAL_LEDGER
, LOAN
.
bank_name
String
N.A. Included in API response.
Name of bank.
bank_long_name
String
N.A. Included in API response.
Full name of the bank. In most cased bank_name
and bank_long_name
have the same value.
bank_logo
String
N.A. Included in API response.
Logo of the bank.
address
String
N.A. Included in API response.
Non-normalized address of the bank.
bank_code
String
Yes if link happening through our account aggregation feature.
Bank code used by us to denote this bank.
bank_hlogo
String
N.A. Included in API response.
Horizontal orientation friendly logo of the bank.
bank_url
String
N.A. Included in API response.
URL of the banks's website.
bank_address.address_city
String
N.A. Included in API response.
Address city of the bank's primary location.
bank_address.address_country_code
String
N.A. Included in API response.
ISO Alpha-2 formatted Address country code of the bank's primary location.
bank_address.address_postal_code
String
N.A. Included in API response.
Address zip/postal code of the bank's primary location.
bank_address.address_street
String
N.A. Included in API response.
Address street of the bank's primary location.
bank_address.address_subdivision
String
N.A. Included in API response.
Address subdivision (state) of the bank's primary location.
Info Schema of Interchange Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "BofA Debit Card".
card_hash
String
N.A. Included in API response.
Hash of the card details. This value can help you identify if the same card is being linked again and again throughout your platform.
exp_date
String
Yes. Not in response.
Encrypted expiration date in YYYYMM format. Go to Encryption Keys for Interchange.
is_international
Boolean
N.A. Included in API response.
If the card is a non-US based card.
network
String
N.A. Included in API response.
Card's primary network. Possible values: AMEX
, CCPay
, Discover
, IntlMasterCard
, IntlVisa
, MasterCard
, MasterCardSend
, MoneySend
, Visa
, VisaFF
.
type
String
N.A. Included in API response.
Type of card. Possible values: Debit
, Credit
, PrePaid
.
Encryption Keys for Interchange
Please use PKCS1_v1_5
padding to encrypt your data.
Info Schema of RPPS Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Comcast Account".
biller_id
String
Yes
ID of the biller.
Encryption Keys for RPPS
Please use PKCS1_v1_5
padding to encrypt your data.
Info Schema of Check Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Rent Check".
payee_name
String
Yes
Name of the individual or business who will be receiving the check
payee_address.address_street
String
Yes
Address street of the payee.
payee_address.address_city
String
Yes
Address city of the payee.
payee_address.address_subdivision
String
Yes
Address subdivision (state) of the payee.
payee_address.address_country_code
String
Yes
ISO Alpha-2 formatted Address country code of the payee.
payee_address.address_postal_code
String
Yes
Address zip/postal code of the payee.
Info Schema of FedWire (WIRE-US) Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "Chase Checking Account".
account_num
String
Yes
Account number of the bank account.
routing_num
String
Yes
Routing number of the bank account.
bank_name
String
N.A. Included in API response.
Name of bank.
bank_long_name
String
N.A. Included in API response.
Full name of the bank. In most cased bank_name
and bank_long_name
have the same value.
bank_logo
String
N.A. Included in API response.
Logo of the bank.
address
String
N.A. Included in API response.
Non-normalized address of the bank.
bank_code
String
N.A. Included in API response.
Bank code used by us to denote this bank.
bank_hlogo
String
N.A. Included in API response.
Horizontal orientation friendly logo of the bank.
bank_url
String
N.A. Included in API response.
URL of the banks's website.
bank_address.address_city
String
N.A. Included in API response.
Address city of the bank's primary location.
bank_address.address_country_code
String
N.A. Included in API response.
ISO Alpha-2 formatted Address country code of the bank's primary location.
bank_address.address_postal_code
String
N.A. Included in API response.
Address zip/postal code of the bank's primary location.
bank_address.address_street
String
N.A. Included in API response.
Address street of the bank's primary location.
bank_address.address_subdivision
String
N.A. Included in API response.
Address subdivision (state) of the bank's primary location.
correspondent_info.routing_num
String
No
Routing number of the correspondent bank.
correspondent_info.bank_name
String
No
Name of the correspondent bank.
correspondent_info.address
String
No
Address of the correspondent bank.
Info Schema of SWIFT Wire (WIRE-INT) Object
Key
Type
Required
Description
nickname
String
Yes
Common name you wish to assign to the node. Eg. "HSBC Checking Account".
account_num
String
Yes
Account number of the bank account. NOTE: some countries require the account number to be in IBAN format. Please contact Synapse for a full list of countries that require IBAN account numbers.
swift
String
Yes
Routing number of the bank account in SWIFT format.
bank_name
String
N.A. Included in API response.
Name of bank.
bank_long_name
String
N.A. Included in API response.
Full name of the bank. In most cased bank_name
and bank_long_name
have the same value.
bank_logo
String
N.A. Included in API response.
Logo of the bank.
address
String
N.A. Included in API response.
Non-normalized address of the bank.
bank_code
String
N.A. Included in API response.
Bank code used by us to denote this bank.
bank_hlogo
String
N.A. Included in API response.
Horizontal orientation friendly logo of the bank.
bank_url
String
N.A. Included in API response.
URL of the banks's website.
bank_address.address_city
String
N.A. Included in API response.
Address city of the bank's primary location.
bank_address.address_country_code
String
N.A. Included in API response.
ISO Alpha-2 formatted Address country code of the bank's primary location.
bank_address.address_postal_code
String
N.A. Included in API response.
Address zip/postal code of the bank's primary location.
bank_address.address_street
String
N.A. Included in API response.
Address street of the bank's primary location.
bank_address.address_subdivision
String
Included in API response.
Address subdivision (state / province) of the bank's primary location. Required for banks in Canada (CA).
correspondent_info.routing_num
String
No
Routing number of the correspondent bank.
correspondent_info.bank_name
String
No
Name of the correspondent bank.
correspondent_info.address
String
No
Address of the correspondent bank.
bsb_number
String
No
State branch of the bank. Only needed for banks in AU
.
branch_code
String
No
Branch code of the bank. Only needed for banks in BR
,ID
,UY
.
branch_name
String
No
Branch name of the bank. Only needed for banks in CN
.
clabe
INT (18)
No
CLABE number of the bank. Only needed for banks in MX
.
routing_number
String
No
Routing number of the bank. Only needed for banks in PH
.
tax_number
String
No
Tax or Government ID number of the recipient. Required for some countries. AR
, CO
, CR
, DO
, GT
, PE
, RU
.
Possible Agreement Types
Type
Description
NODE_AGREEMENT
Agreement associated with node creation. This is the agreement that was presented to the user before the node was created. Please ensure that the end user has access to a copy of this agreement.
ADVERSE_ACTION
Only used in case of Credit Accounts, this is an aversion action notice. Go to Possible Loan Rejection Reasons to learn more. Please ensure that the end user has been notified of this outcome.
TERMINATION_LETTER
Only used in case of Credit Accounts in instances when a credit account is terminated. Please ensure that the end user has been notified of this outcome.
Last updated