Product

SDK.finance is the full-fledged Payment and Loyalty Platform with the strong API orchestration layer. Loyalty program e commerce is cloud ready with strong DevOps culture (CI/CD automatization).

The functionality of the Loyalty Program (back-end) is represented in 400+ API endpoints and 60+ modules. API layer enables teams of front-end developers (web, iOS, and Android) do not code any kind of business logic on their side but just consume API. Such approach saves a lot of time and resources of front-end teams in their customization. 

The Loyalty Program consists of main components: 

  • Business Application (back-end) in Java EE; database agnostic; datacenter agnostic.
  • Rich API orchestration layer with more than 400 API endpoints
  • More than 60 business modules and components

SDK.finance Loyalty Program for E commerce has a wide range of transaction types, like transfers, payment/loyalty functionality for different business cases, as a payment acceptance, e-wallets, merchant services, rewards programs, P2P money transfer, mass payment, currency exchange, prepaid cards, mobile payments, cashback, etc.

Even such a powerful Loyalty Program doesn’t have all the desired functionality that a company probably may wish. That’s why the Platform is designed for integration with any 3rd-party providers like banks, payment providers, KYC, Risk, AML, etc. 

FinTech today is all about integrations.

Advantages of Loyalty software that is built on API-first architecture:

  • Significantly decreasing time-to-market 
  • A cost of ownership is less 
  • Less buggy and more stable products
  • Fastest updates and release cycle

Business Benefits

Launch fast & save cost

Normally developing a loyalty system from scratch can take up to 1 year and incurs exorbitant costs. Thanks to ready-to-use features and an open architecture, you can launch and customize your solution within days while dramatically decreasing costs. We have spent over 10 years developing FinTech products which combined with deep industry know-how make us a proven partner for growing your business with loyalty. 

Take full control over your data

Set up an application on your servers and retain full control of your valuable databases. Get all the benefits of our loyalty solution without having to change your established systems. You have total control over your data, while we take care of the technological agility of your solution. 

Manage your loyalty solution with ease

Bring the efficiency and flexibility of our tech platform to your loyalty program. It is easy to set up and use for both businesses and end-customers and integrates with major e-commerce point-of-sale systems. We help you with design, implementation, and training for your server and database infrastructures.

Features &Functionality

Loyalty Program for E commerce by SDK.Finance is a full-fledged effective platform developed to create different loyalty programs and therefore encourage loyal buying behavior from your buyers. With our Loyalty Program, you will maximize customer retention and increase customer spending.  

There is a variety of business models you can implement with the help of the SDK.finance Loyalty Program functionality that will suit your business needs and bring you the highest rewards:

  • bonus cards
  • loyalty coupons/promo codes
  • cashback
  • freebies
  • discounts within your Merchant network, etc.

Our module-based loyalty software gives you the possibility to combine any marketing ideas and tools to increase sales and attract customers.

Loyalty Program allows companies to grow faster and gain popularity among customers. SDK.finance offers a wide range of models to help the Loyalty Program succeed and bring the most efficient results, adapting individual requests and tasks to the system.

Main components of Loyalty Programs:

  • Client’s identifier: It can be a Gift card, or a member card, or User ID: email or phone number  – in any case, each client shall have his unique identifier which will create Client’s loyalty profile.
  • Merchant: Loyalty programs can be run by one merchant who has a network of Points of Sale (POS) or there can be a coalition Loyalty Program with dozens of Merchants. Still, Merchants are the main Actors, as long as they create promotions for their goods and services and attract customers to make new purchases.
  • Promotions: Merchant has to create promotion so that Clients could earn some points or rewards. Sometimes Merchants have a permanent promotion, it means that from each purchase by this particular merchant client will always earn some points or gets a discount once he has a Member card. Promotions can be created with a particular set of conditions, for example, time, POS, number of goods, types of goods etc. Merchants can initiate notification of Customers about current or new promotions.
  • Client’s Balance: Having registered in the Loyalty Program Client is able to check his current balance of points or other units collected at the Loyalty Program. The balance can be reflected in different units such as points, bonuses, miles, coins or real money.
  • Rewards: rewards is the possibility of a client to spend his collected bonuses or points for some real goods or services. Often Loyalty Programs provide the chance to exchange the collected points for some bundles of goods or provide a discount by the next purchase for a selected list of items.

SDK.finance loyalty software covers the main business processes used by Loyalty Programs:

  • User Profile
  • Loyalty card management
  • Calculation of bonuses and their transfer to user’s account (transfer)
  • Loyalty rules configurator
  • User Management
  • Notifications
  • Transactions
  • Others

Examples

Our loyalty engine is very flexible and allows us to implement a bunch of different loyalty flows.

Our wallet and issuers concept allows us to have any item as a bonus wallet, it just requires us to create an  Issuer and a new currency. One such example is described above: buy 20 litres and take 1 to the bonus wallet.

You can also have the usual bonus wallet and pay bonuses depends on different conditions:

  • fixed amount of bonus for buying defined products
  • percent of the payment amount depends on the amount value

Bonus cards

For implementing bonus cards (this flow assumes that you already have merchants and customers in our Loyalty program for E commerce):

  • Add new Issuer for bonuses
  • Add new currency for bonuses, e.g. “BONUS”
  • Open bonus wallet for merchant and customer
  • Top-up merchant bonus wallet with the appropriate amount of bonuses
  • Set loyalty groups and loyalty rules as described in Loyalty settings, in loyalty rule settings specify the amount of bonuses depends on the product, amount etc.  and merchant bonus wallet as source wallet for bonuses payment
  • Issue physical or virtual cards to the customers’ bonus wallets
  • Set exchange rate for bonus currency
  • Integrate terminals or web site with our system
  • Use bonus cards for full or partial payments from a customer to the merchant

Loyalty coupons and promo codes

Loyalty coupons and promo codes can be implemented using our prepaid functionality.

To  implement coupons or promo codes (this flow assumes that you already have merchants and customers in our system):

  • Generate prepaid vouchers  to merchant wallet in the main currency
  • Give customers voucher serial  and PIN in any required way (physical cards with the scratch place for PIN, e-mail, SMS, WhatsApp, etc.)
  • Integrate terminals or web site with our system
  • Use coupons or promo codes for full or partial payments from a customer to the merchant

Cashback

For implementing bonus cards (this flow assumes that you already have merchants and customers in our system):

  • Set loyalty groups and loyalty rules as described in Loyalty settings, in loyalty rule settings specify the amount in the main currency depends on the product, amount etc. and merchant wallet in the main currency as source wallet for bonuses payment

In this case the amount in the main currency will be paid back to the customer wallet.

API

APIs cover all loyalty functionality  and can be used for loyalty integration with any UI or external system.

RESTful application program interface (API) allows SDK.finance platform to connect to other internal and external systems securely. Using our RESTful APIs, businesses can build multiple innovative products on top of their existing internal architecture.

We use Swagger, an industry-leading framework, to design, build, and document our flexible APIs. The framework allows us to automatically create and update our interactive API documentation to keep our users up to date.

API Layer: https://sdkfinance.app/api/ui

Contact us to find out more about our RESTful APIs

Contact Us

API Methods
Loyalty groups management

 

Using this stack of API methods, you can create and manage target users’ target group. Loyalty rules will be created for such created groups. 

  • Get loyalty groups
  • Create a new loyalty group
  • Get profile fields eligible to use during loyalty group creation
  • Delete loyalty group
Loyalty rule management

 

Loyalty rule management – would be useful in case, when you want to  modify “share”. For example add/remove loyalty group, add/remove product or category, that should activate top up customer’s bonus wallet.

  • Retrieve merchant’s loyalty rules
  • Create a new loyalty rule
  • Find loyalty rules eligible for current user
  • Delete an existing loyalty rule
  • Update an existing loyalty rule
  • View issuers used by loyalty rule
  • Remove issuer from loyalty rule
  • Add issuer to the loyalty rule
  • View loyalty groups used by loyalty rule
  • Remove loyalty group from loyalty rule
  • Add loyalty group to the loyalty rule
  • Retrieve media files attached to the loyalty rule
  • View merchant products categories used by loyalty rule
  • Remove merchant product category from loyalty rule
  • Add merchant product category to the loyalty rule
  • View merchant products used by loyalty rule
  • Remove merchant product from loyalty rule
  • Add merchant product to the loyalty rule
  • View point of sale used by loyalty rule
  • Remove point of sale from loyalty rule
  • Add point of sale to the loyalty rule
Loyalty rule activations

 

You can get loyalty rule and how it was implemented on your payment cheque.

  • Get activations of the loyalty rules occurred during merchant payment
Merchant product measure units

 

Merchant can manage measure units, which are used in product descriptions (pieces, kilos ets).

  • Get list of all measure units
  • Create a measure unit
  • Create a measure unit from batch
  • Delete a measure unit by its external code
  • Update measure unit data by its external code
  • Delete a measure unit by its ID
  • Update measure unit data by its ID
Merchant product categories

 

Merchant can manage product categories, sort products. This functionality allows creating more flexible loyalty rules.

  • View product categories
  • Create a product category
  • Delete a product category
  • Update a product category
  • View products belonging to category
  • Remove product from category
  • Add product into category
Merchant product

 

Merchant can manage products, their names, descriptions and measure units.

  • Create one product
  • Create products from batch
  • Delete list of products
  • Delete by external code
    Update product by its external code
  • View product list
  • Delete by ID
  • View product by its ID
  • Update product by it’s identifier
Merchant product price

 

Merchant can manage prices of products.

  • Create prices from batch
  • Delete a price by product filter
  • Delete all prices for product and point of sale
  • Get prices by product filter
  • Get prices by product ID
  • Add price for a product with the given ID
  • Delete a price by its ID for the given product ID

Loyalty program settings

Base loyalty program settings are covered by basic UI needs clarification and further customisation, based on specification.

Product categories

In the “Product categories” section, the merchant is able to see his product categories list, delete or create product category.

To create a new product category merchant should specify the following information:

  • Category external code – if it’s required to link category to an external system
  • Category name
  • Category description

By clicking on the product category record merchant is able to see products included in the selected category, remove or add products.

Product measure units

Product measure units should be created before the product.

In the “Product measure units” section merchant is able to see the list of existing measure units, delete or create new measure units.

In the measure units list the following information is displayed:

  • Unit external code
  • Unit name
  • Unit description
  • Column “Actions”

To create a new measure unit merchant should specify the following information:

  • Unit external code –  if it’s required to link category to an external system
  • Unit name
  • Unit description

Merchant is able to delete or edit the measure unit by clicking “…” in the “Actions” column and choosing appropriate action.

Products

In the “Products” section merchant is able to see the list of existing products, delete or create a new product.

In the product list the following information is displayed:

  • Product ID
  • Product external code
  • Product name
  • Product description
  • Product measure unit
  • Button  “Categories”  – to see list of categories which selected product belongs to
  • Product price and product price currency. If there is more the one product price – price is shown as the expandable link.
  • Column “Actions”: edit, delete, set price

To create a new product merchant should specify the following information:

  • Product external code –  if it’s required to link category to an external system
  • Product name
  • Product description
  • Product measure unit – chose from the drop-down list

Merchant is able to delete or edit the product by clicking “…” in the “Actions” column and choosing appropriate action.

Product price

Merchant is able to manage product prices in different currencies in the “Products” section.

To manage product price:

  • Go to the “Products” section.
  • Find required product
  • Click “…” in the column “Actions” and choose “set price”
  • Specify required information
    • Currency from the drop-down list
    • Price value
  • Press  button “Save”

Loyalty group

Loyalty group – set of users for whom loyalty rule can be activated. The loyalty group is formed depending on user information in the system.

Loyalty groups are managed by Merchant.

Loyalty groups list

  • Group identifier
  • Group name
  • “View group conditions” link. When clicking on this link the user sees the conditions of the current group.

Loyalty group deletion

In the loyalty group list, the user is able to delete the selected loyalty group. For the deletion user should press the button “Delete” near the selected loyalty group and then confirm the deletion.

New loyalty group creation

For the loyalty group creation, the user should specify the loyalty group name and the loyalty group conditions. For condition specification: 

  • choose a field from the drop-down list
  • choose a condition from the drop-down list (LIKE, EQUAL, MORE THEN, LESS THEN)
  • specify required value
  • press “+” if it’s required to specify more condition
  • choose logical operator from the drop-down list (AND, OR)
  • specify the next condition

Users are able to add any number of conditions for the loyalty group.

Loyalty rules

In the loyalty rules section, Merchant is able to manage the loyalty rules list and to create a new loyalty rule.

Loyalty rule creation

For loyalty rule creation the following fields should be specified:

  • Loyalty rule name
  • Loyalty rule description
  • Active – if this option is switched on rule will be active just after creation
  • Date start – date at which rule will be started
  • Date end – date at  which rule will be stopped
  • Type of bonus calculation:
    • FIXED
    • PERCENT
    • NOT_SPECIFIED – will be specified during product addition
  • Value – for FIXED or PERCENT type
  • Merchant bonus coin serial number – merchant wallet from which bouses will be debited – can be chosen from the drop-down list
  • Activation policy
    • ALL_POINTS_OF_SALE – the rule is applicable for all point of sale
    • selected points of sale
  • Upload file – can be uploaded a picture which will be displayed with the action conditions in the client UI.

Loyalty rule activation

Merchant is able to activate selected loyalty rule:

  • find the required loyalty rule
  • press button “…” in the “Actions” column for selected loyalty rule
  • choose action “Activate”
  • confirm action

Loyalty rule deactivation

Merchant is able to deactivate selected loyalty rule:

  • find the required loyalty rule
  • press button “…” in the “Actions” column for selected loyalty rule
  • choose action “Deactivate”
  • confirm action

Loyalty rule update

By clicking on selected loyalty rule merchant sees loyalty rule detailed information and is able to update loyalty rule.

To change loyalty rule details:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Update”
  • specify new information
  • press button save

Loyalty rule loyalty groups management

Merchant is able to see the list of loyalty groups for which the current loyalty rule is applicable and remove or add loyalty groups.

To see the list of loyalty groups:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Loyalty groups”

To delete the loyalty group:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Loyalty groups”
  • near the required loyalty group press button “Delete”

To add the loyalty group:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Loyalty groups”
  • press button “Add”
  • choose the loyalty group from the drop-down list
  • press button “Save”

Loyalty rule product management

Merchant is able to see the list of products for the selected loyalty rule and remove or add products.

To see the list of products:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Products”

To delete the product:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Products”
  • near the required product press button “Delete”

To add the product:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Products”
  • press button “Add”
  • choose the product from the drop-down list
  • press button “Save”

Loyalty rule product categories management

Merchant is able to see the list of product categories for the selected loyalty rule and remove or add product categories.

To see the list of product categories:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Product categories”

To delete the product category:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Product categories”
  • near the required product category press button “Delete”

To add the product category:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Product categories”
  • press button “Add”
  • choose the product category from the drop-down list
  • press button “Save”

Loyalty rule points of sale management

Merchant is able to see the list of points of sale for the selected loyalty rule and remove or add points of sale.

To see the list of points of sale:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Points of sale ”

To delete the point of sale :

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Points of sale ”
  • near the required point of sale press button “Delete”

To add the  point of sale:

  • find the required loyalty rule
  • click on loyalty rule record
  • press button “Points of sale ”
  • press button “Add”
  • choose the point of sale from the drop-down list
  • press button “Save”

Database & servers

Business-ready application for all your loyalty program needs

Set up an application on your servers and retain full control of your valuable databases. Get all the benefits of our loyalty solution without having to change your established systems. We are happy to guide you through the process and help with the design, implementation, and training for your server and database infrastructures.

Security

Keep your data safe with our strong security measures

We follow the latest safety practices and methods during the development process to implement high security layers at all stages. From the beginning of the source code development to supporting infrastructure in ongoing projects, you can rest easy and focus on your business with SDK.finance.

Each new product version is automatically audited by the OWASP ZAP system, which allows us to identify and fix any potential infrastructure vulnerabilities in early stages.

  • All communications and data exchange is done using strong SSL encryption certificates.
  • Source code is checked by active and passive analysis tools such as SonarQube & Lapse +
  • Infrastructure logs, servers, databases, and application servers can be monitored using Logentries or other services like Nagios or Zabbix

Technology

Programming language

We chose Java Enterprise Edition 7 and Java Standard Edition 8 for their highly stable performance and powerful functionality.

Java has a proven track record of fulfilling all software requirements for the enterprise level software as a programming language and technology stack. Java requires developers to clearly formalize the processes and data with which the system operates. As a result, this strongly typed language ensures stability and minimizes the chance of errors.                                        

Business logic

Best in class tools for Business Process Modeling help us create new features “on business language” first and then implement it in code structure. We use powerful tools, like https://plantuml.com/ and https://www.figma.com/ which enable our Business Analytics professionally create need diagrams and flows, which minimize errors and misunderstoods on the development stage.

Code repository

A lot of specialists from different departments work with project source code. The storage and management functionality of our source code is built on GIT technology, using the GitLab platform, which provides effective management and monitoring of all changes made by each developer.

We also use GitLab CI/CD for continuous deployments and updates.

Testing and Quality Assurance

Source code for any project must meet the highest quality, stability, and security standards. We automatically check operability and test functions when the project is ready to be deployed.

Each new addition to source code goes through the following checks:

  • unit tests using JUnit framework; 
  • integration tests using Arquillian
  • automatic code quality control using SonarQube;
  • manual code review by our lead developer using UpSource.

   User Acceptance Test scenarios are prepared during the project specification phase.    

Before deployment to production environment all project scope is tested manually by QA using previously prepared User Acceptance test scenarios. 

Source Code Quality

Our developers use source code development tools supported by best-in-class solutions to create a robust, efficient, and secure code. For passive code analysis, we use UpSource and FindBugs from “IntelliJ Idea” vendor. For active code analysis, we use SonarQube and Lapse+ tools which are highly recommended by the OWASP community.

DevOps

Our software development and delivery process helps in emphasizing communication along with cross-functional collaboration between product management, software development, and operations professionals.

DevOps is essentially the integration of development and operations – that brings a whole new perspective to the execution of software development.

The focus of DevOps is mostly on easing delivery processes and standardizing development environments with the aim of improving efficiency, security, and delivery predictability.

We have implemented the most efficient DevOps process to integrate development, operations, and testing departments into collaborative cross-functional teams, to be able to:

  • Improve the frequency of deployment
  • Reduce the time between updates/fixes
  • Achieve speedy delivery
  • Improve time to recovery
  • Reduce the failure rate of new releases

We build and deploy projects with Jenkins and GitLab CI/CD, a highly functional and customizable service. Gathered system components are versioned and delivered to one or multiple Application Servers.

Our DevOps process consists of the following phases:

  • Continuous Development – involves planning, outlining, and introducing new code. The aim of continuous development is to optimize the procedure of code-building and to reduce the time between development and deployment.
  • Continuous Integration (CI) – involves the integration of developed code into a central repository where configuration management (CM) tools are integrated with test & development tools to track the code development status. CI also includes quick feedback between testing and development to be able to identify and resolve various code issues that might arise during the process.
  • Continuous Testing – involves the simultaneous running of pre-scheduled and automated code tests as application code is being updated. The aim of continuous testing is to speed up the delivery of code to production.
  • Continuous Delivery – ensures that even with frequent changes by developers, code is always in the deployable state. Continuous delivery is aimed at quick and sustainable delivery of updates and changes ready to be deployed in a production environment.
  • Continuous Deployment (CD) – automates the release of new or changed code into production, similar to continuous delivery. The use of various container technology tools such as Docker and Kubernetes allows continuous deployment as they play a key role in maintaining code consistency across different deployment environments.
  • Continuous Monitoring – involves ongoing monitoring of the operational code and the underlying infrastructure supporting it. Changes/application deployed in the production environment is continuously monitored to ensure stability and best performance of the application.  

Some of the key benefits of DevOps process implementation include:

  • Speedy and better product delivery
  • Scalability and greater automation
  • High clarity into system outcomes
  • Stable operating environments
  • Better utilization of resources
  • High clarity into system outcomes  

Application server

We use RedHat JBoss application server, Community Edition – Wildfly. The enterprise level application server meets all requirements for application monitoring, configuration, and scaling.

Application Monitoring

Complex systems are distributed on different infrastructure components to ensure continuous and stable operation. Monitoring hardware condition is the first step to understanding how health the system is. We use NewRelic, Zabbix and ELK Stack.  

Security

SDK.finance provides high-level security by using the best practices for designing and developing system components. SDK.finance pays close attention to the security of the following components during the development process and provides functionality for transaction processing security.

System architecture security

  • SDK.finance platform is developed according to strict security standards;
  • The interaction between clients and server components in the system is protected by a variety of traffic encryption methods (TLS v1.2 with PCI DSS recommended key sizes), data hashing with strong algorithms, signing requests, IP filtering and brute force attacks protection;
  • Additional methods of customer sensitive data encryption can be activated if necessary (encryption of cardholder data, personal account number, etc.) at the application or/and database level;
  • Both software and hardware solutions from the market leaders (Oracle, IBM, Amazon, Microsoft, Google, etc) are used;
  • Firewalls, IDS (Intrusion Detection System), WAF (Web Application Firewalls) and load-balancing are used;
  • Software is deployed on the PCI-DSS certified cloud hostings provided by the world leader Amazon Web Services (or Oracle, IBM, Microsoft, Google);
  • Regular penetration testing with OWASP ZAP;
  • VPN for cross-servers communications;
  • Strong SSL – for data encryption of network sessions for public services;

Additional security layer.

  • OTP authentication;
  • HMAC authentication for devices;
  • Two-factor authentication;
  • OAuth;
  • SSO;
  • Strict delimitation of user access rights to sensitive information in different system roles interfaces.

Scalability

We handpicked our technological stack to help businesses achieve three things: growth, flexibility, and security. An appropriate work environment is necessary to meet high project standards, software needs, and to ensure a stable project lifecycle. 

Using our extensive experience building high performing products in the Fintech sector, we developed all of our products using only the best tools for the job.

Depending on the infrastructure, SDK.finance platform can handle different types of load capacity and performance. SDK.finance platform is vertically and horizontally scalable and can be easily settled in case of increased traffic.

SDK.finance platform supports container-based architecture, decentralized databases and multi-tenancy instances for application servers and databases. 

The speed of results output depends on the throughput capability of a chosen server and the network channels.

Pricing

Feel free to contact us to get your pricing offer

Contact Us

Updates & maintenance

Keep your SDK.finance solution future-proof with frequent updates

Updates ensure that your SDK.finance solution works as described and remains protected against major security concerns.

  • Guarantee that new versions of your third party integrations remain compatible with our solutions
  • Minimize dependency on your internal resources to launch and maintain our products
  • Keep the product functioning at full efficiency with our professional maintenance
  • Rest easy while our dedicated professionals monitor and assist with reported bugs and issues  

Support

Get the most out of your SDK.finance solution with in-depth product training and support

Our medium-sized business support is designed for teams ready to launch production scale products. Release your product in a fraction of the time with our professional guidance and support that features

  • Live chat
  • Priority email support
  • Account management
  • Volume discounts
  • Quarterly advice calls
  • Integration and testing support
  • Certification support
  • On-site training/e-learning
  • Go-live support and babysitting
  • Compliance support