Object Map
Six domains. Linked Instruments are the external accounts a client transacts against; Transactions are the rail-specific movements executed on them; Balances and the ledger record the result.
Authentication
Identity & Compliance
Balances & Reporting
Linked Instruments
Transactions
Disbursements

AccountStatus (Enum)
NameNotes
ActiveClient is verified and can transact.
Cancelled
Completed
OnHoldBlocked from transacting, typically after a returned draft.
Hold_Request

Note: enum values are sent and returned as their names — for example "accountStatus": "Active". Responses always carry the name, never a number.

DocumentType (Enum)
NameNotes
ACH_AGREEMENT
CC_AUTH
DEATH_CERTIFICATE
LOT_LETTER_OF_TESTAMENTARY_POA_POWER_OF_ATTORNEY
SETTLEMENT_AUTH
ID_VERIFICATION
ADDRESS_VERIFICATION
OTHER
CREDITOR_ADDR_VERIFICATION
GOVID_FRONT
GOVID_BACK
WEB_ACH_AGREEMENT
AUTHORIZED_USER_AGREEMENT
EXTERNAL_KYEExternally-performed KYC evidence.
DocumentStatus (Enum)
NameNotes
SUBMITTED
IN_REVIEW
APPROVED
REJECTED
BankAccountType (Enum)
NameNotes
NOT_SET
CONSUMER_DEBIT_SAVINGS
CONSUMER_DEBIT_CHECKING
BankAccountStatus (Enum)
NameNotes
Unknown
Pending
ConnectedLinked, but full bank details not yet on file.
Completed
AddressType (Enum)
NameNotes
EITHER
FUNDS_SOURCE
FUNDS_DESTINATION
Client Schema
PropertyTypeRequiredDescription
idstringOPTIONALInternal ID.
firstNamestringREQUIREDClient's first name.
lastNamestringREQUIREDClient's last name.
middleInitialstringOPTIONALMiddle initial.
addressstringREQUIREDStreet address.
address2stringOPTIONALAddress line 2.
citystringREQUIREDCity.
statestringREQUIREDState code.
zipstringREQUIREDZIP code.
taxIDstringREQUIREDTax ID / SSN.
dobdateREQUIREDDate of birth.
clientIDstringREQUIREDExternal client identifier.
emailstringREQUIREDEmail address.
phonestringOPTIONALPhone number.
accountStatusAccountStatusOPTIONALCurrent account status.
bankAccountstringOPTIONALBank account number.
bankRoutingstringOPTIONALBank routing number.
bankNameOnAccountstringOPTIONALName on bank account.
encTaxIDstringOPTIONALEncrypted form of taxID.
usernamestringOPTIONAL
miscellaneousstringOPTIONALFree-text field carried on the client.
userIDguidOPTIONALInternal user record ID.
feeGroupIDintOPTIONAL
dscIDintOPTIONAL
achBankIDintOPTIONAL
ramHoldboolOPTIONALWhether the account is currently held.
kycPassboolOPTIONALWhether KYC has passed.
bankAccountStatusBankAccountStatusOPTIONALLinked-bank state. See BankAccountStatus.
businessNamestringOPTIONALIf populated, this is a business / KYB client.
dateOfFormationdateOPTIONALBusiness date of formation.
internationalCustomerIdguidOPTIONALFK into the international KYC schema. Null for domestic-only clients.
currentKycAssessmentKycAssessmentLoadOPTIONALLatest KYC assessment (see below). Null if no international / external KYC record exists.
KycAssessmentLoad Schema

Returned on Client.currentKycAssessment for clients with an international or external-KYC record.

PropertyTypeRequiredDescription
assessmentIdlongREQUIRED
riskScoredecimalOPTIONAL
riskTierstringOPTIONAL
screeningStatusstringOPTIONAL
lastScreenedAtdatetimeOPTIONAL
screeningProviderstringOPTIONAL
screeningRefstringOPTIONAL
adverseMediaFlagboolOPTIONAL
pepMatchFlagboolOPTIONAL
sanctionsMatchFlagboolOPTIONAL
watchlistMatchFlagboolOPTIONAL
reviewerIdstringOPTIONAL
reviewedAtdatetimeOPTIONAL
reviewOutcomestringOPTIONAL
reviewNotesstringOPTIONAL
nextReviewDuedatetimeOPTIONAL
assessmentTriggerstringOPTIONAL
assessmentCreatedAtdatetimeREQUIRED
assessmentCreatedBystringREQUIRED
isExternalAttestationboolREQUIREDTrue when this assessment came from a caller-supplied external KYC attestation rather than RAMFi’s own screening.
TokenResponse Schema
PropertyTypeRequiredDescription
tokenstringREQUIREDThe authentication token.
expiresAtUTCdatetimeOPTIONALToken expiration timestamp.
tokenHashstringREQUIREDHash of the token.
tokenIDnumberOPTIONALToken identifier.
ClientBalances Schema
PropertyTypeDescription
clientIDstringThe client identifier.
amountnumber (double)Balance amount.
symbolstringCurrency symbol (BTC, USD, etc.).
currencyIDCurrencyTypeCurrency type enum.
tradablebooleanWhether the balance is tradable.
Supplement Schemas. Linked Account Intelligence, Card Operations & Digital Assets
AccountHolder Schema
PropertyTypeDescription
linkedAccountIdstring (UUID)Identifier of the bank account this record represents.
namestringFull name or business name on the bank account.
addressobjectSee structure below.
   .streetAddressstringStreet address.
   .additionalAddressstringApartment, suite, or unit.
   .citystringCity.
   .statestringState / region.
   .countrystringCountry code.
   .zipstringPostal / ZIP code.
LinkedAccountBalance Schema
PropertyTypeDescription
linkedAccountIdstring (UUID)Identifier of the bank account this balance represents.
availableBalanceintegerAvailable balance in cents. Divide by 100 for dollar display.
LinkedAccountHistory Schema
PropertyTypeDescription
linkedAccountIdstring (UUID)Identifier of the bank account this history belongs to.
transactionsLinkedAccountTransaction[]Array of enriched transaction objects for this account.
LinkedAccountTransaction Schema
PropertyTypeDescription
transactionIdstring (UUID)Unique transaction identifier.
accountIdstring (UUID)Linked bank account UUID.
amountnumber (double)Transaction amount. Positive = debit from account.
typeenumdebit or credit.
currencystringISO 4217 currency code.
pendingbooleanWhether the transaction has cleared.
enrichment.categoryobjectSee structure below.
   .valuestringTop-level merchant category name.
   .confidencenumber (0–100)Confidence score for the category.
enrichment.subcategoryobjectSee structure below.
   .valuestringSubcategory name.
   .confidencenumber (0–100)Confidence score for the subcategory.
AccountValidationResult Schema
PropertyTypeDescription
confidenceScorenumber (0.00–1.00)Overall validation confidence.
validRoutingNumberbooleanWhether the routing number is a valid ABA number.
nameMatchenumyes, no, or not_available.
taxpayerNumberMatchenumyes, no, or not_available.
phoneNumberPresentbooleanWhether a phone number is associated with the account.
decisioningInsightsobjectSee structure below.
   .accountDuplicatebooleanWhether the account is flagged as a duplicate.
   .daysSinceFirstSeenintegerDays since the account was first observed.
   .daysSinceLastTransactionintegerDays since the most recent transaction.
   .hasNegativeTransactionsbooleanWhether negative transaction history is on file.
   .hasPaidTransactionsbooleanWhether the account has cleared transactions.
   .hasPositiveTransactionsbooleanWhether the account has positive transaction history.
TransactionRiskScore Schema
PropertyTypeDescription
riskScorenumberCalculated risk score for the transaction.
validityExpirationdatetime (ISO 8601)UTC timestamp after which the score should be re-fetched.
WalletRiskAssessment Schema (KnowYourAddress response)
PropertyTypeDescription
walletAddressstringThe wallet address that was assessed.
riskenumLow, Medium, High, or Severe.
riskReasonstringHuman-readable explanation of the risk rating.
addressTypeenumPRIVATE_WALLET or LIQUIDITY_POOL.
clusterobjectSee structure below. Null if no cluster.
   .namestringCluster name.
   .categorystringCluster category.
addressIdentificationsarrayList of address identifications, each item has the structure below.
   .namestringIdentification name.
   .addressstringIdentified address.
   .categorystringCategory.
   .descriptionstringDescription.
   .urlstringSource URL.
   .createdAtinteger (epoch ms)Creation timestamp.
   .memostringMemo.
exposuresarrayList of exposures, each item has the structure below.
   .categorystringEntity category name.
   .valuenumberUSD-denominated exposure amount.
   .exposureTypeenumdirect or indirect.
   .directionstringDirection.
triggersarrayList of triggered exposure rules, each item has the structure below.
   .categorystringTriggering category.
   .percentagenumberPercentage of exposure.
   .messagestringTrigger summary.
   .ruleTriggeredobjectSee structure below.
      .riskenumLow, Medium, High, or Severe.
      .minThresholdnumberMinimum threshold.
      .maxThresholdnumberMaximum threshold.
      .exposureTypeenumdirect or indirect.
      .directionstringDirection.
poolMetadataobjectSee structure below. Present only when addressType = LIQUIDITY_POOL.
   .feesnumberPool transaction fees.
   .tokensarray<string>Token symbols traded in the pool.
statusstringAlways COMPLETE.
BankAccount Schema (GetBankAccount response)
PropertyTypeDescription
linkedAccountIdstring (UUID)Unique identifier for this bank account on file.
institutionNamestringDisplay name of the bank.
accountNicknamestringUser-friendly account name.
accountTypeenumchecking or savings.
last4stringLast 4 digits of the account number.
isDefaultbooleanTrue if this is the active default account for ACH originations.
linkedAtdatetimeTimestamp when this account was linked.
Card Schema (GetCardOnFile response)
PropertyTypeDescription
cardIdstring (UUID)RAMFi-issued token. Use in PullFromCard and PushToCard.
last4stringLast 4 digits of the card number.
cardBrandenumVisa, Mastercard, Discover, or Amex.
cardTypeenumCurrently only debit is supported.
nicknamestringOptional user-friendly label.
capturedAtdatetimeTimestamp when the card was tokenized.
CardTransaction Schema (Pull & Push response)
PropertyTypeDescription
transactionIDstringRAMFi transaction ID. Store for reconciliation.
statusenumApproved or Declined.
amountnumberTransaction amount.
externalReferencestringYour externalReference echoed back for confirmation.
Standard Response Envelope

All RAMFi API endpoints return responses wrapped in this consistent envelope:

JSON { "isSuccess": true, // or false on error "result": { ... }, // the typed return model, null on error "errorMessage": "" // populated when isSuccess = false }
RAMFi Developer Documentation · Version 1.1