LogoLogo
Go back to Configure
  • ๐Ÿ”—Guide & Integrations
  • ๐Ÿš€Onboarding
  • ๐Ÿ‘ŒCommon Use Cases
  • ๐Ÿ•ต๏ธSystem Overview
  • Authentication
  • Access
  • API Reference
    • Collections
    • ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘Users
      • Setting up
      • Managing Users
    • ๐Ÿ“ŠDecisioning
    • ๐Ÿ™Loan Request
      • Managing Loan Requests
    • ๐Ÿ’ธLoans
      • Managing Loans
    • ๐Ÿ’ตRepayments
      • Managing Repayments
      • Overview
    • ๐Ÿ’ดDisbursement
      • Managing Disbursement
    • ๐ŸงพDebit Mandate
      • Setting up debit mandates
      • Overview
    • ๐Ÿ’ณCredit Order
  • Use Cases
    • Traditional Lending
    • Buy Now Pay Later (BNPL)
Powered by GitBook
On this page

Was this helpful?

  1. Use Cases

Traditional Lending

abierta was built to help you manage your loan easily, seamlessly, and automatically

PreviousUse CasesNextBuy Now Pay Later (BNPL)

Last updated 2 years ago

Was this helpful?

if you are building a digital lending system, abierta can help you

  • - you can use abierta to create and track loan requests

  • - we can help you disburse your loans automatically

  • - we can help you make better decisions, and help you lend smarter and more effectively

  • - our API enables you to handle collections automatically using either the remita debit mandate or cards

For traditional lending, abierta pairs well with the core lending platform to enabling you to track all loan requests, loans, and repayments and provide you with insights to lend smarter with metrics

Now, let's take you through one way you could implement these endpoints to maximize abierta for your lending process. You are welcome to customize the workflow by consulting the to suit your specific needs.

1. Creating a User server side

Every loan request is tied to a user - the person who the loan was requested for, so the first step when creating a loan request for a new user is usually to on the configure platform.

curl --location --request POST 'https://configure-abierta-test.herokuapp.com/api/v1/user' \
--header 'Authorization: Bearer cnfg_tst_LjZcK1wWEU5gac04IaeeBf188' \
--header 'Content-Type: application/json' \
--data-raw '{
    "firstname": "Daniel",
    "lastname": "Josiah",
    "email": "isongjosiah+34@gmail.com",
    "password": "password",
    "phone": "+2348182791196",
    "gender":"Male"
}'
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer token");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "firstname": "John",
  "lastname": "Doe",
  "email": "johndoe@gmail.com",
  "password": "password",
  "phone": "+2348182791196",
  "gender": "Male"
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};
var baseURL = "https://configure-abierta-test.herokuapp.com"
fetch(baseURL + "/api/v1/user", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://configure-abierta-test.herokuapp.com/api/v1/user")
  .header("Authorization", "Bearer cnfg_tst_LjZcK1wWEU5gac04IaeeBf188")
  .header("Content-Type", "application/json")
  .body("{\n    \"firstname\": \"Daniel\",\n    \"lastname\": \"Josiah\",\n    \"email\": \"isongjosiah+34@gmail.com\",\n    \"password\": \"password\",\n    \"phone\": \"+2348182791196\",\n    \"gender\":\"Male\"\n}")
  .asString();
java

2. Create a loan request for a user

  1. A User. To create a loan request, it must be attached to a User. Create a User object when your customer creates an account on your platform.

  2. A Loan Request is an object that represents a customer's request for a loan.

curl --location --request POST 'https://configure-abierta-test.herokuapp.com/api/v1/user/1/loan_request?product-id=1' \
--header 'Authorization: Bearer ' \
--header 'Content-Type: application/json' \
--data-raw '{
    "amount": 20000,
    "purpose": "House Rent"
}'
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer ");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "amount": 20000,
  "purpose": "House Rent"
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};
var baseURL = "https://configure-abierta-test.herokuapp.com"
fetch(baseURL + "/api/v1/user/1/loan_request?product-id=1", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("http://localhost:6000/api/v1/user/1/loan_request?product-id=1")
  .header("Authorization", "Bearer ")
  .header("Content-Type", "application/json")
  .body("{\n    \"amount\": 20000,\n    \"purpose\": \"House Rent\"\n}")
  .asString();

3. Submit a loan request

curl --location --request PUT 'https://configure-abierta-test.herokuapp.com/api/v1/loan_request/1/submit?product-id=1' \
--header 'Authorization: Bearer cnfg_tst_LjZcK1wWEU5gac04IaeeBf188'
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer cnfg_tst_LjZcK1wWEU5gac04IaeeBf188");

var requestOptions = {
  method: 'PUT',
  headers: myHeaders,
  redirect: 'follow'
};

var baseURL = "https://configure-abierta-test.herokuapp.com"
fetch(baseURL + "/api/v1/loan_request/1/submit?product-id=1", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.put("https://configure-abierta-test.herokuapp.com/api/v1/loan_request/1/submit?product-id=1")
  .header("Authorization", "Bearer cnfg_tst_LjZcK1wWEU5gac04IaeeBf188")
  .asString();

4. Approve a loan request

Loan approval can be triggered either from the configure dashboard or via this integration, allowing you more flexibility in your workflow. Most of our existing customers opt to approve a loan request from the dashboard. If you are approving a loan request from the API integration, you are required to send the terms of the approval, containing the following; 1. approved_amount: how much has been approved for the customer from the required amount. 2. rate: the interest rate for the loan 3. tenure: the length of time before the loan matures 4. tenured_in: what the tenure is measured in. allowed values are months, days, weeks 5. rate_type: allowed values are simple-interest, compound-interest, and fixed-amount 6. frequency: how often the loan would be paid back within the tenure, allowed values are daily, weekely, bi-weekly, monthly 7. note:

curl --location --request POST 'https://configure-abierta-test.herokuapp.com/api/v1/loan_request/38/action?action=approve&product-id=1' \
--header 'Authorization: Bearer token' \
--header 'Content-Type: application/json' \
--data-raw '{
    "approved_amount":200,
    "rate":2.5,
    "tenure":5,
    "tenured_in":"months", 
    "rate_type":"simple-interest",
    "exclude_weekends":true,
    "frequency":"monthly", 
    "grace_period":1,
    "note":"Approved because -- blah, blah, blah..." 
}'c
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer token");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "approved_amount": 200,
  "rate": 2.5,
  "tenure": 5,
  "tenured_in": "months",
  "rate_type": "simple-interest",
  "exclude_weekends": true,
  "frequency": "monthly",
  "grace_period": 1,
  "note": "Approved because -- blah, blah, blah..."
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

var baseURL = "https://configure-abierta-test.herokuapp.com"
fetch(baseURL + "/api/v1/loan_request/38/action?action=approve&product-id=1", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://configure-abierta-test.herokuapp.com/api/v1/loan_request/38/action?action=approve&product-id=1")
  .header("Authorization", "Bearer token")
  .header("Content-Type", "application/json")
  .body("{\n    \"approved_amount\":200,\n    \"rate\":2.5,\n    \"tenure\":5,\n    \"tenured_in\":\"months\", \n    \"rate_type\":\"simple-interest\",\n    \"exclude_weekends\":true,\n    \"frequency\":\"monthly\", \n    \"grace_period\":1,\n    \"note\":\"Approved because -- blah, blah, blah...\" \n}")
  .asString();

This integration, uses two configure API objects, to .

This integration allows you to submit a loan request. When a user has created a loan request and added additional information that you require for your loan product such as the , ,, you can trigger this endpoint to for consideration.

disburse loans
decisioning
manage collections
configure
API reference
create a user
manage origination
create a loan request
bank details
employment information
guarantor information
submit the loan request