Development

Unleash the Power of Neobanking with SynapseFi - Your Guide to the Future of Finance

Christian Casaran
Christian Casaran
Blog Main Image

During the last couple of years and as a result of the digital transformation, Neobanks have grown and expanded rapidly. Their low-cost, seamless, and user-friendly digital experiences have secured its adoption throughout the world, and increasingly more business and traditional banks are riding the neobaniking wave. Providing a digital layer on top of traditional banking, they promise a streamlined and hassle-free experience.

SynapseFi is one such neobanking solution that has taken the industry by storm. The company provides Bank as a service (BaaS) platforms to fintech companies, enabling them to launch innovative financial products, such as bank accounts, payments, and loans. SynapseFi's platform is scalable, secure, and customizable, making it an ideal solution for companies looking to reduce market entry costs and foster competition and innovation in the digital financial services space.

In this blog post, we'll dive deeper into the world of neobanking, exploring its origin, how it works, its key features, and the different types of neobanks. We'll also take a closer look at SynapseFi and how it's changing the way we think about banking. So, if you're curious about the future of finance and want to learn how you can boost the potential of neobanking, keep reading!

Understanding Neobanking

What is Neobanking

Neobanking is a new banking model that provides a fully digital platform for customers to access banking services. Unlike traditional banks, neobanks have no physical presence and operate 100% online. They have as a result of the digital transformation in the United Kingdom and Germany and have rapidly expanded throughout Europe, with the recent introduction in Latin America.

One of the main advantages of neobanks is that customers can access banking services easily and quickly without the need to visit a physical branch. Neobanks offer a seamless online experience through an experiential digital layer on top of traditional banking. Customers can create accounts and use their offerings seamlessly due to their technology-driven nature.

Moreover, neobanks often offer competitive rates, low fees, and personalized services. These services are accessible to a broad range of customers, especially millennials who are tech-savvy and prefer a digital experience. The involvement of neobanks in the development of artificial intelligence (AI) is also a contributing factor to their popularity. The use of AI in financial services enhances the customer experience and provides personalized services that traditional banks may not offer.

With the increasing popularity of neobanking, it's likely that we'll see further development in this area as more fintech companies enter the market, and traditional banks look to compete by investing in their own digital platforms.

Neobanking Characteristics

Neobanks are rapidly becoming a popular option for customers who prioritize user experience, convenience, and cost savings. These digital banks provide an array of benefits that cater to the needs of new-age users and constantly work to improve the overall customer experience. Here are some key characteristics that make neobanking an attractive option for users:

Savings Accounts: Neobanks provide a hassle-free way to open a savings account without the long wait times associated with traditional banks. They offer the ability to open accounts quickly, and even receive a physical card if required.

Credit Accounts: Through strategic alliances with various commercial entities, neobanks offer credit cards with numerous benefits.

Loans: In addition to credit accounts, neobanks also offer a variety of services such as individual and start-up loans. They also aim to serve unbanked communities, contributing significantly to economic growth in different countries.

Lower operating costs: Neobanks have low or no maintenance costs, which translates to lower fees and interest rates for customers. The absence of physical branches allows neobanks to pass on cost efficiencies to their clients.

Improved user experience: Neobanks operate through easy-to-use applications that provide real-time financial information for users. Since operations are 100% systematized, they are designed to be intuitive and operate via cell phones, catering to the needs of digital natives.

Neobanking vs. Traditional Banking

Neobanks and digital banks are similar in many ways, but they have some crucial differences. While digital banks are online branches of traditional banks, which offer digital services to online customers while supporting traditional banking, neobanks are 100% digital and independent of traditional banks. Furthermore, neobanks do not have physical branches like traditional banks and instead offer a variety of services and benefits through digital media, which are built using the latest technologies, including artificial intelligence models.

Despite traditional banks adapting to the current situation by offering technological solutions, neobanks have exceeded the percentage of users compared to traditional banks in some countries, such as Brazil and Argentina. Among the most popular neobanks, Nubank stands out, founded in Brazil, with about 50 million users in Brazil, Mexico and Colombia. Another popular option is Ualá, founded in Argentina, which has around 5 million users in Argentina, Mexico and Colombia.

Types of Neobanking

There are three main types of neobank:

Front-end neobank: This type of neobank focuses on the front end and does not have an operating banking license. It is usually backed by a traditional financial institution and operates in partnership with these entities to provide services to its clients. They generally use the traditional bank's balance sheets to operate.

Digital banking units: Stand-alone or independent digital banks are the digital arms of an established bank. These entities must obtain a virtual banking license to operate, which can be obtained once they have sufficient capital to secure deposits from their investors.

Full-stack digital banks: Full-stack digital banks have the required bank regulatory approvals and provide a wide selection of services. They issue deposits and loans and maintain their independent brand and balance sheets, in an increasingly digital environment, these banks are not burdened by costly physical branch networks.

Advantages of Neobanking

In this blog section, we'll explore the pros and cons of neobanking to help you make an informed decision about whether it's the right fit for your financial needs.

ProsCons
Less operational costs.Incompatibility with some entities and platforms.
Faster processes with high availability.Not all neobanks issue Mastercard cards.
Multiple cash withdrawal options.Impersonal customer service.
Portability.Lack of trust and reliability.

Some successful neo-banks around the world

NuBankIt was founded in Brazil in 2013, it offers a range of financial products and services, including no-fee credit cards, savings accounts, personal loans, insurance, and investment products. It has over 70 million customers and is valued at over $45 billion.
RevolutRevolut is a UK-based neobank that was founded in 2015, it offers banking services in multiple currencies. It has over 16 million customers and is valued at over $33 billion.
N26It’s a German neobank that was founded in 2013, it offers banking services across Europe and the US. It has over 7 million customers and is valued at over $3.5 billion.
ManzoThis UK-based neobank was founded in 2015, it offers fee-free banking services and a user-friendly app. It has over 5 million customers and is valued at over $2 billion.

Introducing SynapseFi

SynapseFi is a banking-as-a-service (BaaS) platform that enables companies around the world to create and launch their own financial products, including deposits, credit, and cryptocurrency. By using SynapseFi's modular platform, companies of all sizes can implement enterprise-scale solutions and customize them to their specific business needs.

One of the benefits of SynapseFi is its high-speed performance, which enables companies to innovate and grow their businesses quickly. Additionally, its infrastructure layer provides customizable financial solutions that are compliant and scalable, making it a valuable tool for driving fintech business models across various industries and geographies.

SynapseFi offers multiple options for integrating its platform with third-party applications, including easy-to-use SDKs for various programming languages such as Python, Javascript, Ruby, PHP, and Go.

Overall, SynapseFi's BaaS platform is a powerful tool for companies seeking to launch financial products quickly and efficiently. Its customizable financial solutions and high-speed performance make it an attractive option for businesses of all sizes.

SynapseFI — Success Stories

Synapse has enabled numerous clients to offer services through the implementation of neobanks, which provide a range of financial products to users. Some notable customers include:

ChimeIt is a U.S. neobank, which offers various services such as debit cards, checking accounts, transfers and electronic payments. One of its main qualities is that it does not require its users to maintain a minimum balance, nor does it have a monthly fee.
DaveThis neobank offers debit card issuance services, loans or payroll advances, automatic savings, and budgets. It also helps its users to avoid overdrafts and extra charges.
VaroIt is a mobile-only neobank in the United States, offering traditional banking services such as debit cards, transfers, checking, and savings accounts. This platform offers very competitive rates and fees and is primarily targeted at the millennial population.
CurrentIt is a neobank that differs from the other options for its various features, one of the most relevant is that it offers current accounts that use artificial intelligence. It also provides budgeting tools and parental controls for accounts aimed at teenagers.
MercuryThis neobank allows the creation of accounts in a simple way, even if you are not a US resident. Among its features, it has a low and simple fee structure, the creation of multiple physical and up to 50 virtual debit cards, savings accounts, and sub-accounts, and a very user-friendly interface.

Alternatives to SynapseFi

While SynapseFi offers a range of benefits for companies looking to create and launch financial products quickly, it's not the only option on the market. There are several other BaaS platforms that offer similar services and features. Here are some alternatives:

Alternatives 1 Alternatives 2

Getting Started with SynapseFi

To get started with exploring the SynapseFi API and integrating the services to a neobanking platform, follow the steps detailed below.

Create and integrate a SynapseFi account

synapse account.gif
  • The first step is to create a sandbox account, for that, you must navigate to the website provided by Synapsefi, and perform the respective signUp process.
  • The next step is to perform the onboarding process, here you can enter false or real information, which will facilitate the process of moving to production once everything is tested.
  • For the account configuration, the platform itself provides a guide with the required steps. Regarding the creation of the billing account, you must use a valid routing number corresponding to a bank.
  • After completing the onboarding process and saving the account configuration, the next step is to go to the overview page to generate the credentials needed to integrate the application.
  • The next step recommended in the guide is to download and import the Postman collection with the respective environment variables to test all API resources.
  • Once the collection and variables have been imported into Postman, it is required to replace the client_id and client_secret variables previously generated in the Synapse platform.

After exploring the available endpoints, you can start with the implementation. In the case of NodeJs, there are two integration options, using the SDK, which is the node-synapse library, or making the API calls directly using libraries such as axios or fetch.

In this practical example with Typescript and Express, direct API calls will be made, since the library does not have typing available yet.

The services were implemented according to the API documentation, which specifies all the resources and the respective options provided by each of the endpoints.

  • The API entry point available to date is https://api.synapsefi.com/v3.1/, to consume the resources, by default, the headers 'X-SP-USER', 'X-SP-USER-IP', 'X-SP-USER', among others must be sent depending on the resource being consumed.
X-SP-GATEWAY: <client_id_###>|<client_secret_###>
X-SP-USER-IP: 255.127.79.76
X-SP-USER: |<user_id>
  • The first service that was addressed is the query of the users associated with the account, the response includes an array of json objects. The parameters that can be used are per_page, page, and show_refresh_tokens.
GET https://api.synapsefi.com/v3.1/users?show_refresh_tokens=yes&per_page=10&page=1 HTTP/1.1
{
  "error_code": "0",
  "http_code": "200",
  "limit": 10,
  "page": 1,
  "page_count": 1,
  "success": true,
  "users": [
    {
      "_id": "63caf4ee337e1a32ea049e2e",
      "_links": {
        "self": {
          "href": "https://uat-api.synapsefi.com/v3.1/users/63caf4ee337e1a32ea049e2e"
        }
      },
      "account_closure_date": null,
      "client": {
        "id": "63c88320aa0d692a3dcfd7cb",
        "name": "Christian Casaran"
      },
      "flag": "NOT-FLAGGED",
      "flag_code": null,
      "is_hidden": false,
      "legal_names": [
        "Larry Lamda"
      ],
      "logins": [
        {
          "email": "[email protected]",
          "scope": "READ_AND_WRITE"
        }
      ],
      "permission": "SEND-AND-RECEIVE",
      "permission_code": null,
      "phone_numbers": [
        "901.111.1111"
      ],
      "refresh_token": "refresh_zyJKde0INOU02mqQ37pF5krwYZ8ACDHjt6WPTvuR",
      "watchlists": "NO_MATCH"
    }
  ],
  "users_count": 1
}
  • The following service corresponds to the query of a specific user. For this call, the user ID is required, and as a parameter, the option full_dehydrate is used to indicate if you want to receive all the user information. It returns a json object with the user information.
GET https://api.synapsefi.com/v3.1/users/:user_id
{
      "_id": "63caf4ee337e1a32ea049e2e",
      "_links": {
        "self": {
          "href": "https://uat-api.synapsefi.com/v3.1/users/63caf4ee337e1a32ea049e2e"
        }
      },
      "account_closure_date": null,
      "client": {
        "id": "63c88320aa0d692a3dcfd7cb",
        "name": "Christian Casaran"
      },
      "flag": "NOT-FLAGGED",
      "flag_code": null,
      "is_hidden": false,
      "legal_names": [
        "Larry Lamda"
      ],
      "logins": [
        {
          "email": "[email protected]",
          "scope": "READ_AND_WRITE"
        }
      ],
      "permission": "SEND-AND-RECEIVE",
      "permission_code": null,
      "phone_numbers": [
        "901.111.1111"
      ],
      "refresh_token": "refresh_zyJKde0INOU02mqQ37pF5krwYZ8ACDHjt6WPTvuR",
      "watchlists": "NO_MATCH"
    }
  • The following service implemented corresponds to the creation of users. The minimum required parameters are the following: logins, phone_numbers, legal_names, extra, and an optional parameter called documents. This call returns a json object with the created account information.
POST https://api.synapsefi.com/v3.1/users
{
  "logins": [
    {
      "email": "[email protected]"
    }
  ],
  "phone_numbers": [
    "901.111.1111"
  ],
  "legal_names": [
    "Test User"
  ],
  "extra": {
    "supp_id": "my_user_id",
    "cip_tag":1,
    "is_business": false
  }
}
  • The following service is the update of the users' information, similar to the creation of the users. The logins, phone_numbers, legal_names, extra, and documents fields can be updated. This call returns a json object with the updated account information.
PATCH https://api.synapsefi.com/v3.1/users/:user_id
{
    "documents": [
        {
            "email": "[email protected]",
            "phone_number": "901.111.1111",
            "ip": "::1",
            "name": "Test User",
            "alias": "Test",
            "entity_type": "M",
            "entity_scope": "Arts & Entertainment",
            "day": 2,
            "month": 5,
            "year": 1989           
        }
    ]
}
  • The following service is the creation of accounts or nodes as indicated in the documentation. This resource supports a large number of parameters since there are several types of accounts that can be created and each one has some particular fields, but in common the type and info fields are sent.
POST https://api.synapsefi.com/v3.1/users/:user_id/nodes
{
  "type": "DEPOSIT-US",
  "info": {
    "nickname":"My Deposit Account",
    "document_id":"2a4a5957a3a62aaac1a0dd0edcae96ea2cdee688ec6337b20745eed8869e3ac8"
  }
}
  • The following service corresponds to the update of a user's nodes or accounts, the parameters vary depending on the type of account to be updated. This call returns a json object with the updated node information.
POST https://api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id
{
	"payment_node_id": "63c88320aa0d692a3dcfd7cb"
}
  • The following service allows you to perform a transaction, the parameters vary according to the type of transaction to be performed. This call returns a json object with the transaction information.

    POST https://api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans
    
    {
      "to": {
        "type": "DEPOSIT-US",
        "id": "deposit_node_id"
      },
      "amount": {
        "amount": 100.1,
        "currency": "USD"
      },
      "extra": {
        "ip": "ip",
        "note": "Test transaction"
      }
    }
    
  • The following service allows to query of all the transactions associated to a user, the parameters that can be sent in this query are per_page and page. The response contains a json object array with each transaction information.

GET https://api.synapsefi.com/v3.1/users/:user_id/trans
{
  "trans": [
    {
      "_id": "63d2f3fc97c26f844d9e2104",
      "_v": 2,
      "amount": {
        "amount": 600.8,
        "currency": "USD"
      },
      "client": {
        "id": "63c88320aa0d692a3dcfd7cb",
        "name": "* test user"
      },
      "extra": {
        "asset": null,
        "created_on": 1674769397506,
        "filename": null,
        "group_id": null,
        "interchange_meta": {
          "soft_descriptor": null
        },
        "ip": "255.127.79.76",
        "latlon": "unknown,unknown",
        "location": {
          "address_city": null,
          "address_country_code": null,
          "address_postal_code": null,
          "address_subdivision": null,
          "lat": 0,
          "lon": 0
        },
        "meta": {},
        "note": "Test transaction crypto",
        "other": {
          "affect_limits": true,
          "attachments": [],
          "chargeback_disputed": false,
          "dispute_form": null,
          "dispute_meta": {},
          "dispute_reason": null,
          "disputed": false,
          "is_provisional_credit": false
        },
        "process_on": 1674769397506,
        "rate": null,
        "rate_limit": null,
        "same_day": false,
        "settlement_delay": 0,
        "speed": null,
        "supp_id": "",
        "tracking_number": null,
        "txp_meta": {
          "amount_types": [],
          "amounts": [],
          "payment_code": null,
          "tax_period_end_date": null,
          "taxpayer_verification": null,
          "tin": null
        }
      }
	]
}
  • The following service allows to query of all the transactions associated with a specific node of a user, the parameters that can be sent in this query are per_page and page. The response contains a json object array with each transaction information.
GET https://api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans
{
  "trans": [
    {
      "_id": "63d2f3fc97c26f844d9e2104",
      "_v": 2,
      "amount": {
        "amount": 600.8,
        "currency": "USD"
      },
      "client": {
        "id": "63c88320aa0d692a3dcfd7cb",
        "name": "* test user"
      },
      "extra": {
        "asset": null,
        "created_on": 1674769397506,
        "filename": null,
        "group_id": null,
        "interchange_meta": {
          "soft_descriptor": null
        },
        "ip": "255.127.79.76",
        "latlon": "unknown,unknown",
        "location": {
          "address_city": null,
          "address_country_code": null,
          "address_postal_code": null,
          "address_subdivision": null,
          "lat": 0,
          "lon": 0
        },
        "meta": {},
        "note": "Test transaction crypto",
        "other": {
          "affect_limits": true,
          "attachments": [],
          "chargeback_disputed": false,
          "dispute_form": null,
          "dispute_meta": {},
          "dispute_reason": null,
          "disputed": false,
          "is_provisional_credit": false
        },
        "process_on": 1674769397506,
        "rate": null,
        "rate_limit": null,
        "same_day": false,
        "settlement_delay": 0,
        "speed": null,
        "supp_id": "",
        "tracking_number": null,
        "txp_meta": {
          "amount_types": [],
          "amounts": [],
          "payment_code": null,
          "tax_period_end_date": null,
          "taxpayer_verification": null,
          "tin": null
        }
      }
	]
}
  • The following service allows to query of a transaction associated with a specific node and user, the parameters that can be sent in this query are per_page and page. The response contains a json object with the transaction information.
GET https://api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans/:trans_id
{
      "_id": "63d2f3fc97c26f844d9e2104",
      "_v": 2,
      "amount": {
        "amount": 600.8,
        "currency": "USD"
      },
      "client": {
        "id": "63c88320aa0d692a3dcfd7cb",
        "name": "test user"
      }
}
  • The following service allows you to reverse a transaction.
PATCH https://api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans/:trans_id

{
    "retry_transaction": true
}
  • The following service corresponds to the subscription to events. To be able to make this subscription, two parameters are required, the scope, which represents so to speak the categories of events that you want to track, and the URL, which corresponds to the client that will be listening to the messages that will be issued. In this case, you can create an account in pipedream which provides you with a URL to receive the messages issued. This call returns a json object with the subscription information.
POST https://api.synapsefi.com/v3.1/subscriptions
{
  "scope": [
    "USERS|POST",
    "USER|PATCH",
    "NODES|POST",
    "NODE|PATCH",
    "TRANS|POST"
  ],
  "url": "https://eoey9ujcjduzcdo.m.pipedream.net"
}
{
  "_id": "63fe7760418a9b4c1d313e1e",
  "_links": {
    "self": {
      "href": "https://uat-api.synapsefi.com/v3.1/subscriptions/63fe7760418a9b4c1d313e1e"
    }
  },
  "_v": 2,
  "client_id": "63c88320aa0d692a3dcfd7cb",
  "is_active": true,
  "scope": [
    "USERS|POST",
    "USER|PATCH",
    "NODES|POST",
    "NODE|PATCH",
    "TRANS|POST"
  ],
  "url": "https://eoey9ujcjduzcdo.m.pipedream.net"
}
  • The following service allows you to update the status of a subscription. This call returns a json object with the subscription information.
PATCH https://api.synapsefi.com/v3.1/subscriptions/:subscription_id
{
  "is_active": false
}
{
  "_id": "63fe7760418a9b4c1d313e1e",
  "_links": {
    "self": {
      "href": "https://uat-api.synapsefi.com/v3.1/subscriptions/63fe7760418a9b4c1d313e1e"
    }
  },
  "_v": 2,
  "client_id": "63c88320aa0d692a3dcfd7cb",
  "is_active": false,
  "scope": [
    "USERS|POST",
    "USER|PATCH",
    "NODES|POST",
    "NODE|PATCH",
    "TRANS|POST"
  ],
  "url": "https://eoey9ujcjduzcdo.m.pipedream.net"
}
  • The following service allows you to list all subscriptions made. This call returns a json object array with the subscriptions information.
GET https://api.synapsefi.com/v3.1/subscriptions
{
	"subscriptions": [
		{
		  "_id": "63fe7760418a9b4c1d313e1e",
		  "_links": {
		    "self": {
		      "href": "https://uat-api.synapsefi.com/v3.1/subscriptions/63fe7760418a9b4c1d313e1e"
		    }
		  },
		  "_v": 2,
		  "client_id": "63c88320aa0d692a3dcfd7cb",
		  "is_active": false,
		  "scope": [
		    "USERS|POST",
		    "USER|PATCH",
		    "NODES|POST",
		    "NODE|PATCH",
		    "TRANS|POST"
		  ],
		  "url": "https://eoey9ujcjduzcdo.m.pipedream.net"
		}
	]
}
  • The last service implemented allows viewing the message logs issued by the webhook. This call returns a json object array with the logs information.
GET https://api.synapsefi.com/v3.1/subscriptions/logs
Example code

Example code

Going to Production with SynapseFi

In order to go into production using Synapse services, a series of phases must be completed to verify that the technical and legal requirements for providing a neobanking platform are met.

  • Phase 1: Configuration

    This process starts with the creation and configuration of an account in the platform, in this configuration all the legal information of the company must be provided.

    Once the account is created and configured, a call will be scheduled with a Synapse commercial agent, where the following points must be explained.

    1. Implementation schedule.

    2. Specification sheet of the product to be implemented with all the relevant controls it will have.

    3. The API guide to be implemented.

    4. Guide of good practices to be included.

  • Phase 2: Initial Testing.

    The platform will provide a test environment with all the necessary resources so that all the functionalities supported by Synapse resources can be tested, such tests should include the following:

    1. Card creation and configuration with card printers.
    2. Card generation with networks.
    3. Generation of mobile and third party wallets.
    4. Account integration with banks.

    As part of the process, Synapse will request a series of documents to verify compliance with legal and marketing requirements. For this stage, a reserve account must also be in place, as a backup for possible losses that may be generated.

    At this point of the implementation, end customers should be clearly informed that the application is in Beta, this is important if there are regulatory inquiries while the implementation is being finalized.

    It should be noted that even with bank approval, the Synapse API will limit the number of users for Beta testing.

  • Phase 3: Beta Testing.

    In this phase, the respective approvals from the associated banks will also be received, based on the documentation previously submitted. If everything is approved correctly, the limit on the number of users will be eliminated.

  • Phase 4: Deploy an application to production.

    Once all the implementation points have been verified, the Synapse team will make a complete guide of all the possibilities that the platform offers as a service.

    In the first weeks, after generating information, Synapse will provide support to verify that everything is running correctly.

    Depending on the type of services offered, Synapse will provide differentiated support and verification.

Conclusion

In conclusion, neobanking is a rapidly growing industry that's changing the way people interact with financial services. As the demand for digital financial products and services continues to increase, more and more companies are turning to banking-as-a-service (BaaS) platforms like SynapseFi to create and launch their own innovative solutions.

With SynapseFi's modular platform, customizable financial solutions, and easy-to-use SDKs, companies can quickly and efficiently create a range of financial products, including deposits, credit, and cryptocurrency options. And with its high-speed performance and compliance, SynapseFi is an attractive option for businesses of all sizes.

frontend-developmentalpaca APIjavascript development