Skip to main content
1

Generate Keypair

Use the following command:ssh-keygen -t [rsa|ecdsa|ed25519]The following keys are accepted:
  • rsa
  • ecdsa
  • ed25519
Once generated, you’ll have access to a public key (in a .pub file).Run cat <public_key_file> to view the public key to send to Lead.Example Public Key
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDJOuq4BpCsr4KQyPd06oGNJyV5rWmpV7QjWAWz8imZIC27MypB37p9ahFUqlaT80qKIeoR8Zb/uamvdMxp9yKThjbvVKXUpPb0LmwGk3Dxnm0bdR21vrgujje3Y5kD3DJKOLNMuKGEzc6tU0F0l4BXE8PoW0VWRx+A0QWsVPhULzXuuEE51WqYE+Aru0UWEpJnC+HF2QcuWPfKfU6xiZ5Skma3DH5cLrGUKiv7jMyfEKBzPSmtO4cYvS6Mc1L6DbH33mBGu476r4ptzTqjP9T1MZdfubyCRLQTtPDIUSbJ0C0c8RFBwm3AePrbmZtbCymVlkaL8De9gRqTg2+cNox2oL30xOxStxGX/8t1Rs7L00jFgLAd18cyeyFSyCUJbRVlNuHzPW0DROwf7KO7kvHYSvisUYYT+oM7Ye0mLmrux7JBvuaR1uYOkC3ux+D9mt/LZH7iEJGlhEcTsJSQjftBtot1bvPicnpT599xym3GVCAx59YSO4qU6tu0D27u2o0= user@user-MW7DGQQ445
2

Send Public Key To Lead

Once your public key has been generated, send it to your Lead Implementation Manager as a plain text email.
3

Validate Lead Public Key (Host Key Generation)

Verify the fingerprint and add the public key to your known_hosts file by following the below steps:
  1. Generate a public key fingerprint by running the below command:
    ssh-keyscan sftp.lead.bank 2>&1 | ssh-keygen -lf -
The above command generates a public key fingerprint
  1. Use the public key fingerprint and compare it with the fingerprint below:
    2048 SHA256:PWqq5lPPd0zWCawxwSnqOkyy168esipmaPy2t3H1uFE sftp.lead.bank (RSA)
4

Add Lead Public Key To Your Known Hosts file

After the fingerprint is verified, run the below command to add the public key to your known_hosts file:
ssh-keyscan sftp.lead.bank >> ~/.ssh/known_hosts
5

Connect To SFTP Server

Connect by running the following command:
sftp -v -i \~/.ssh/your\_key username@sftp.lead.bank

Connectivity Details

EnvironmentSFTP Server HostnamePort
Sandboxsftp.sandbox.lead.bank22
Productionsftp.lead.bank22
Set-up Checks
  • Static IP addresses are strongly encouraged for the IP allowlist.
  • CSV files should use a pipe (|) delimiter.
  • You may provide multiple SSH public keys for each environment.
  • Lead supports RSA, ECDSA, and ED25519 keys.
  • Both 2048 and 4096 bits are supported.
  • It is strongly recommended that to do periodic key rotation.
  • Rotation of these keys can be processed upon request.

Folder Structure

All program related files will be dropped into folders on the SFTP server with the following access:
  • Read/Write: For all folders where you are the submitter
  • Read Only: For folders where Lead is the submitter
We do not use the root directory of the SFTP server to store or handle files.
Missing Directories?When your SFTP is initially set up, you may not see all directories.Create the required directories by uploading a file to the desired path.
FileSubmitterFolder NameFile Example
CustomerYoucustomer2026-01-01_customer_v1.csv
Customer RelationshipYoucustomer-relationship2026-01-01_customer_relationship_v1.csv
Authorized UsersYouauthorized-users2026-01-01_authorized_users_v1.csv
ApplicationsYouapplications2026-01-01_applications_v1.csv
AccountsYouaccounts2026-01-01_accounts_v1.csv
CardsYoucards2026-01-01_cards_v1.csv
DocumentsYoudocumentsRefer to Documents row in Customer Applications Accounts Balances data schema
BalancesYoubalances2026-01-01_balances_v1.csv
TransactionsYoutransactions2026-01-01_transactions_v1.csv
Non-Posted TransactionsYounon-posted transactions2026-01-01_non_posted_transactions_v1.csv
Transactions UpdateYoutransactions-update2026-01-01_transactions_update_v1.csv
CollateralsYoucollaterals2026-01-01_collaterals_v1.csv
Network Settlement (Primary)You or Issuing Processornetwork-settlement/<primary network name>

Example:
network-settlement/visa
Format varies based on network.
Network Settlement (Secondary)You or Issuing Processornetwork-settlement/<secondary network name>

Example:
network-settlement/maestro
Format varies based on network.
Sales RequestLeadsales-request2026-01-01_sales_request_v1.csv
Sales ResponseYousales-response2026-01-01_sales_response_v1.csv
ACH OutgoingYouach/outgoing2026-01-01_outgoing_ach_v1.ach
ACH FailedLeadach/failed2026-01-01_outgoing_ach_v1.ach
ACH IncomingLeadach/incoming2026-01-01_incoming_ach_return_noc_v1.ach 2026-01-01_incoming_ach_return_v1.ach 2026-01-01_incoming_ach_noc_v1.ach 2026-01-01_incoming_ach_forward_v1.ach
ACH ProcessedLeadach/processed2026-01-01_outgoing_ach_v1.ach
Daily Activity ReportLeadbank-account-reports2026-01-01_[partnername]-daily-activity-report_[epoch].csv
Daily Balance ReportLeadbank-account-reports2026-01-01_[clientname]-daily-balance-report_[epoch].csv
ACH Cash Recon ReportLeadbank-account-reports2026-01-01_[clientname]-ach-cash-recon-report_[UNIQUE-POSTFIX].csv

File Naming

We utilize a consistent filename format that aims to:
  • Indicate the type of file
  • Indicate the content represented in the particular file
  • Prevent filename collisions for similar files

Example File Format

20260115T171640Z_incoming_ach_forwards_1768497400.ach
20260115T171640Zincoming_ach_forwards1768497400
Content IdentifierFile TypeEpoch Time of File Generation
This will correspond to the content of the file.

For loan origination files, this will be a date.

For ACH files, this will be a date and time.
This indicates the meaning and format of the file.This serves to prevent similar files from colliding and preserves generation time ordering for similarly name files.
File versions can be represented by either an epoch timestamp (not ISO 8601) or an incremental version label such as v1, v2, etc. Each subsequent submission must use a higher version value.

Example Invalid File Name

If the initial file version is invalid or changes are required, you must submit the updated version of the file — with an updated epoch time of version label, such as “v2”.
Original20260115T171640Z_incoming_ach_forwards_1768497400.ach
Updated Resubmission20260115T171640Z_incoming_ach_forwards_1768642400.ach

Notice the updated epoch timestamp

Common Pitfalls

You may receive the below error if your key permissions are too open:
Permissions 0777 for ‘/Users/username/.ssh/id_rsa’ are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored.
This error indicates that your public key is read/writeable by any system user rather than just the current user. You may resolve this error by running: chmod 600 ~/.ssh/id_rsa