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.

info

Object

Some values Yes.

Go to Info Schema to learn more.

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.

document_id

String

Yes

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.

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

KeyTypeRequiredDescription

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: FDICor MMF.

risk

String

Yes

Risk values include: CONSERVATIVE, MODERATEor 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.

document_id

String

Yes

ID of the base document who is the primary owner of this node.

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.

document_id

String

Yes

ID of the base document who is the primary owner of this node.

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.

document_id

String

Yes

ID of the base document who is the primary owner of this node.

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".

document_id

String

Yes

ID of the base document who is the primary owner of this node.

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.

card_number

String

Yes. Not in response.

Encrypted card number. Go to Encryption Keys for Interchange.

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.

-----BEGIN PUBLIC KEY-----

MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2QTPfkJW2xvWQUqAWt5+Q0QXHKw1+Z1I8mMPPN+Dfw3PkANwfkPh+cWT1lexLhAyk6IdQY3g02p5fcCBvnjWlLtfNIgC7ZoVWnv+eE7kPPipzpZPtolCS8q2iNm3/0+tU+0Xtz/SfJFrvIgBJgElCNSHz7gv4jmUDPdkgH5jm1xw1ElDK6lHH9YxL581X3oLF4FjJqcn1xXOfRB/eW5Ebj0JuLz7g3sm02FJTi4qeJwTjjVX5UqdZrV4gEmzhU3kGr2Mq+w0tEAIUvud0sy3Yu5g9BRf/MLY8HQcMrbuZwely1/d8Xypas4VN5L8lWgklIRO9L+h9BVaxEzg2nKZCwIDAQAB

-----END PUBLIC KEY-----

Info Schema of RPPS Object

Key

Type

Required

Description

nickname

String

Yes

Common name you wish to assign to the node. Eg. "Comcast Account".

account_num

String

Yes

Encrypted account number. Go to Encryption Keys for RPPS.

biller_id

String

Yes

ID of the biller.

Encryption Keys for RPPS

Please use PKCS1_v1_5 padding to encrypt your data.

-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0b1tpW5s6k/d7thDpmup
TlNMva9h+QQn17c0ypo2uzWM+zpj5OAXwkjz7TmmMl/Uiu1Wm7WThIcMBQ+KLzm4
590UXxSTWxzOSQXWWAEzp4YkpxICYsNHA1GpLtqdA+rGQcyx3TJkdh1+5SWRCcRJ
QikUa5wcApEs+L/NBm8AeKy/rqtDjb0BjAqZvoVPe4J2zJlPwwbxrIspuSCQmxle
bIHti97+maflGuy/9XV8aw1FhKbM5oeQxs9M0J49x1a7aqpIEuW3Z224UQwuGzRo
0vN3pP3YGS5cfFjVjlaQFX0Ezavl4G7u9G2IpmPky/A1eDWyC50K/F0NRCtYb4Uk
wwIDAQAB
-----END PUBLIC KEY-----

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