NAV
shell python javascript

Welcome to Flow Finance Docs

Welcome to the API documentation of Flow Finance. We help companies build and launch industry leading financial products on top of our banking infrastructure. This API reference provides information on available endpoints and how to interact with them. All of our endpoints are guided by REST, have predictable, resource-oriented URLs, and use HTTP response codes to indicate errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. JSON is returned by all API responses, including errors.

Getting Started

Follow the steps below to get started:

Authentication

Every request must be signed with an API key. For this, obtain an API Key from your Customer Support, as described in How to get the API key. Then set this key to the auth-token header value.

Versioning

Our API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number.

For example:

https://api.platform.flowfinance.com.br/v1/loans

Errors

This API uses the following error codes:

Error Code Meaning
400 Bad Request -- Your request is invalid.
401 Unauthorized -- Your API key is wrong.
403 Forbidden -- You don't have persmission to access the requested resource.
404 Not Found -- The resource could not be found.
405 Method Not Allowed -- Invalid method.
406 Not Acceptable -- You requested a format that isn't supported.
429 Too Many Requests -- Too many requests in a given amount of time.
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later.

Environments

We offers two environments for integration:

Sandbox: test environment, mirroring the logic and functionality of the production environment. Some minor configuration differences might be present with the production environment (e.g. account auto-approval) for enabling easier testing process. Production: real environment, used for providing our services.

Base URLs


title: Banking API v0.0.1 language_tabs: - ruby: Ruby - python: Python language_clients: - ruby: "" - python: "" toc_footers: [] includes: [] search: false highlight_theme: darkula headingLevel: 2


Banking API v0.0.1

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Flow Finance Banking API

Base URLs:

Auth

Obtain an access token

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json'
}

result = RestClient.post '/api/v1/oauth2/token',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json'
}

r = requests.post('/api/v1/oauth2/token', headers = headers)

print(r.json())

POST /api/v1/oauth2/token

The client_credentials grant type is used by clients to obtain an access token outside of the context of a user.

Body parameter

{
  "grant_type": "client_credentials",
  "client_id": "string",
  "client_secret": "string"
}

Parameters

Name In Type Required Description
body body Credentials true none

Responses

Status Meaning Description Schema
default Default none None

Persons

Retrieve all persons

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/persons',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/persons', headers = headers)

print(r.json())

GET /api/v1/persons

Retrieve all persons created under your partner_id.

Parameters

Name In Type Required Description
auth-token header string true none
range header string false none

Responses

Status Meaning Description Schema
default Default none None

Create the resource for a person

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/persons',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/persons', headers = headers)

print(r.json())

POST /api/v1/persons

Create the resource for a person. In the context of a business, a person may be its legal representative or its beneficial owner.

Body parameter

{
  "phone_number": "string",
  "taxpayer_id": "string",
  "occupation": "string",
  "nationality": "string",
  "pep": true,
  "birth_date": "string",
  "marital_status": "string",
  "full_name": "string",
  "email_address": "string",
  "mothers_name": "string",
  "drivers_license_number": "string",
  "marital_property_system": "string"
}

Parameters

Name In Type Required Description
auth-token header string true none
body body PersonCreate true none

Responses

Status Meaning Description Schema
default Default none None

Retrieve the given person

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.get '/api/v1/persons/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.get('/api/v1/persons/{id}', headers = headers)

print(r.json())

GET /api/v1/persons/{id}

Retrieve the given person.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none

Responses

Status Meaning Description Schema
default Default none None

Update the details of a person resource

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.patch '/api/v1/persons/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.patch('/api/v1/persons/{id}', headers = headers)

print(r.json())

PATCH /api/v1/persons/{id}

Update the details of a person resource.

Body parameter

{
  "phone_number": "string",
  "taxpayer_id": "string",
  "occupation": "string",
  "nationality": "string",
  "pep": true,
  "birth_date": "string",
  "marital_status": "string",
  "full_name": "string",
  "email_address": "string",
  "mothers_name": "string",
  "drivers_license_number": "string",
  "marital_property_system": "string"
}

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body PersonUpdate true none

Responses

Status Meaning Description Schema
default Default none None

Delete the given person

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/persons/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/persons/{id}', headers = headers)

print(r.json())

DELETE /api/v1/persons/{id}

Delete the given person.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none

Responses

Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/persons/{id}/documents',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/persons/{id}/documents', headers = headers)

print(r.json())

GET /api/v1/persons/{id}/documents

Retrieve all documents related to a given person.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Create the resource for one (or multiple) person documents

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/persons/{id}/documents',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/persons/{id}/documents', headers = headers)

print(r.json())

POST /api/v1/persons/{id}/documents

Create the resource for one (or multiple) person documents.

Body parameter

[
  {
    "document-type": "string",
    "document-value": "string"
  }
]

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body DocumentsCreate true none

Responses

Status Meaning Description Schema
default Default none None

Obtain an access token

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/persons/{id}/documents/{document-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/persons/{id}/documents/{document-id}', headers = headers)

print(r.json())

DELETE /api/v1/persons/{id}/documents/{document-id}

The client_credentials grant type is used by clients to obtain an access token outside of the context of a user.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
document-id path string(uuid) true none

Responses

Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/persons/{id}/addresses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/persons/{id}/addresses', headers = headers)

print(r.json())

GET /api/v1/persons/{id}/addresses

Retrieve all addresses related to a given person.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/persons/{id}/addresses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/persons/{id}/addresses', headers = headers)

print(r.json())

POST /api/v1/persons/{id}/addresses

Create the resource for one (or multiple) address related to a given person.

Body parameter

{
  "street_name": "string",
  "street_number": "string",
  "postal_code": "string",
  "district": "string",
  "city": "string",
  "state_code": "string",
  "country": "string",
  "extra_address_info": "string"
}
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body Address true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/persons/{id}/addresses/{address-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/persons/{id}/addresses/{address-id}', headers = headers)

print(r.json())

DELETE /api/v1/persons/{id}/addresses/{address-id}

Delete an address related to a given person.

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
address-id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/persons/{id}/external-accounts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/persons/{id}/external-accounts', headers = headers)

print(r.json())

GET /api/v1/persons/{id}/external-accounts

Retrieve all external accounts related to a given person.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/persons/{id}/external-accounts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/persons/{id}/external-accounts', headers = headers)

print(r.json())

POST /api/v1/persons/{id}/external-accounts

Create the resource for one (or multiple) external account related to a given person.

Body parameter

{
  "is_default": true,
  "bank_code": "string",
  "bank_account": "string",
  "bank_branch": "string",
  "account_holder_name": "string",
  "account_holder_type": "string",
  "account_holder_id": "string"
}
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body ExternalAccountWrite true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/persons/{id}/external-accounts/{external-account-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/persons/{id}/external-accounts/{external-account-id}', headers = headers)

print(r.json())

DELETE /api/v1/persons/{id}/external-accounts/{external-account-id}

Delete an external account related to a given person.

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
external-account-id path string(uuid) true none
Status Meaning Description Schema
default Default none None

Businesses

Retrieve all businesses

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/businesses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/businesses', headers = headers)

print(r.json())

GET /api/v1/businesses

Retrieve all businesses created under your partner_id.

Parameters

Name In Type Required Description
auth-token header string true none
range header string false none

Responses

Status Meaning Description Schema
default Default none None

Create the resource for a business

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/businesses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/businesses', headers = headers)

print(r.json())

POST /api/v1/businesses

Create the resource for a business. A business is the representation of a juridical person (a legal person) in our system. This representation is necessarily made up of at least one natural person attached to it.

Body parameter

{
  "legal_name": "string",
  "phone_number": "string",
  "taxpayer_id": "string",
  "incorporation_type": "string",
  "industry_classification": "string",
  "name": "string",
  "email_address": "string"
}

Parameters

Name In Type Required Description
auth-token header string true none
body body BusinessCreate true none

Responses

Status Meaning Description Schema
default Default none None

Retrieve the given business

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.get '/api/v1/businesses/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.get('/api/v1/businesses/{id}', headers = headers)

print(r.json())

GET /api/v1/businesses/{id}

Retrieve the given business.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none

Responses

Status Meaning Description Schema
default Default none None

Update the details of a business resource

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.patch '/api/v1/businesses/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.patch('/api/v1/businesses/{id}', headers = headers)

print(r.json())

PATCH /api/v1/businesses/{id}

Update the details of a business resource.

Body parameter

{
  "legal_name": "string",
  "phone_number": "string",
  "taxpayer_id": "string",
  "incorporation_type": "string",
  "industry_classification": "string",
  "name": "string",
  "email_address": "string"
}

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body BusinessUpdate true none

Responses

Status Meaning Description Schema
default Default none None

Delete the given business

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/businesses/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/businesses/{id}', headers = headers)

print(r.json())

DELETE /api/v1/businesses/{id}

Delete the given business.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none

Responses

Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/businesses/{id}/relations',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/businesses/{id}/relations', headers = headers)

print(r.json())

POST /api/v1/businesses/{id}/relations

Link a given business to a person or to another business.

Body parameter

{
  "person_id": 0
}
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body Relation true none
Status Meaning Description Schema
default Default none None

Retrieve all relations to a given business

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/businesses/{id}/relations',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/businesses/{id}/relations', headers = headers)

print(r.json())

GET /api/v1/businesses/{id}/relations

Retrieve all relations to a given business.

Parameters

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none

Responses

Status Meaning Description Schema
default Default none None

Obtain an access token

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/businesses/{id}/documents/{document-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/businesses/{id}/documents/{document-id}', headers = headers)

print(r.json())

DELETE /api/v1/businesses/{id}/documents/{document-id}

The client_credentials grant type is used by clients to obtain an access token outside of the context of a user.

Parameters

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
document-id path string(uuid) true none

Responses

Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/businesses/{id}/documents',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/businesses/{id}/documents', headers = headers)

print(r.json())

GET /api/v1/businesses/{id}/documents

Retrieve all documents related to a given business.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/businesses/{id}/documents',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/businesses/{id}/documents', headers = headers)

print(r.json())

POST /api/v1/businesses/{id}/documents

Create the resource for one (or multiple) document related to a given business.

Body parameter

[
  {
    "document-type": "string",
    "document-value": "string"
  }
]
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body DocumentsCreate true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/businesses/{id}/addresses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/businesses/{id}/addresses', headers = headers)

print(r.json())

GET /api/v1/businesses/{id}/addresses

Retrieve all addresses related to a given business.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/businesses/{id}/addresses',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/businesses/{id}/addresses', headers = headers)

print(r.json())

POST /api/v1/businesses/{id}/addresses

Create the resource for one (or multiple) addresses related to a given business.

Body parameter

{
  "street_name": "string",
  "street_number": "string",
  "postal_code": "string",
  "district": "string",
  "city": "string",
  "state_code": "string",
  "country": "string",
  "extra_address_info": "string"
}
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body Address true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/businesses/{id}/addresses/{address-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/businesses/{id}/addresses/{address-id}', headers = headers)

print(r.json())

DELETE /api/v1/businesses/{id}/addresses/{address-id}

Delete an address related to a given business.

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
address-id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/businesses/{id}/external-accounts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/businesses/{id}/external-accounts', headers = headers)

print(r.json())

GET /api/v1/businesses/{id}/external-accounts

Retrieve all external accounts related to a given business.

Name In Type Required Description
auth-token header string true none
range header string false none
id path integer(int64) true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/businesses/{id}/external-accounts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/businesses/{id}/external-accounts', headers = headers)

print(r.json())

POST /api/v1/businesses/{id}/external-accounts

Create the resource for one (or multiple) external account related to a given business.

Body parameter

{
  "is_default": true,
  "bank_code": "string",
  "bank_account": "string",
  "bank_branch": "string",
  "account_holder_name": "string",
  "account_holder_type": "string",
  "account_holder_id": "string"
}
Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
body body ExternalAccountWrite true none
Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.delete '/api/v1/businesses/{id}/external-accounts/{external-account-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.delete('/api/v1/businesses/{id}/external-accounts/{external-account-id}', headers = headers)

print(r.json())

DELETE /api/v1/businesses/{id}/external-accounts/{external-account-id}

Delete an external account related to a given business.

Name In Type Required Description
auth-token header string true none
id path integer(int64) true none
external-account-id path string(uuid) true none
Status Meaning Description Schema
default Default none None

Loan Preview

Preview the details of a loan

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/loan-preview',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/loan-preview', headers = headers)

print(r.json())

POST /api/v1/loan-preview

Preview the details of a loan.

Body parameter

{
  "requested_amount": 0,
  "interest_rate": 0,
  "tac_amount": 0,
  "finance_fee": 0,
  "iof_rate_base": 0,
  "iof_rate_daily": 0,
  "num_periods": 0,
  "creation_date": "2019-08-24"
}

Parameters

Name In Type Required Description
auth-token header string true none
body body LoanPreview true none

Responses

Status Meaning Description Schema
default Default none None

Loans

Retrieve all loans

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/loans',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/loans', headers = headers)

print(r.json())

GET /api/v1/loans

Retrieve all loans created under your partner_id.

Parameters

Name In Type Required Description
auth-token header string true none
range header string false none

Responses

Status Meaning Description Schema
default Default none None

Create the resource for a loan

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/loans',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/loans', headers = headers)

print(r.json())

POST /api/v1/loans

Create the resource for a loan.

Body parameter

{
  "schedule": "monthly",
  "issue_date": "2019-08-24",
  "num_payments": 0,
  "iof_rate_base": 0,
  "finance_fee": 0,
  "requested_amount": 0,
  "interest_rate": 0,
  "tac_amount": 0,
  "disbursement_date": "2019-08-24",
  "loan_type": "pj",
  "first_payment": "2019-08-24",
  "iof_rate_daily": 0
}

Parameters

Name In Type Required Description
auth-token header string true none
body body LoanWrite true none

Responses

Status Meaning Description Schema
default Default none None

Retrieve the given loan

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string'
}

result = RestClient.get '/api/v1/loans/{id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string'
}

r = requests.get('/api/v1/loans/{id}', headers = headers)

print(r.json())

GET /api/v1/loans/{id}

Retrieve the given loan.

Parameters

Name In Type Required Description
auth-token header string true none
id path string(uuid) true none

Responses

Status Meaning Description Schema
default Default none None

Code samples

require 'rest-client'
require 'json'

headers = {
  'auth-token' => 'string',
  'range' => 'string'
}

result = RestClient.get '/api/v1/loans/{id}/signatures',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'auth-token': 'string',
  'range': 'string'
}

r = requests.get('/api/v1/loans/{id}/signatures', headers = headers)

print(r.json())

GET /api/v1/loans/{id}/signatures

Retrieve all signatures related to a given loan.

Name In Type Required Description
auth-token header string true none
range header string false none
id path string(uuid) true none
Status Meaning Description Schema
default Default none None

Create the the details of a signature

Code samples

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'auth-token' => 'string'
}

result = RestClient.post '/api/v1/loans/{id}/signatures',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'auth-token': 'string'
}

r = requests.post('/api/v1/loans/{id}/signatures', headers = headers)

print(r.json())

POST /api/v1/loans/{id}/signatures

Create the the details of a signature.

Body parameter

{
  "signed_at": "2019-08-24T14:15:22Z",
  "ip_address": "string",
  "user_agent": "string",
  "person_id": 0
}

Parameters

Name In Type Required Description
auth-token header string true none
id path string(uuid) true none
body body Signature true none

Responses

Status Meaning Description Schema
default Default none None

Schemas

Address

{
  "street_name": "string",
  "street_number": "string",
  "postal_code": "string",
  "district": "string",
  "city": "string",
  "state_code": "string",
  "country": "string",
  "extra_address_info": "string"
}

Properties

Name Type Required Restrictions Description
street_name string true none none
street_number string true none none
postal_code string true none none
district string true none none
city string true none none
state_code string true none none
country string true none none
extra_address_info string false none none

BusinessCreate

{
  "legal_name": "string",
  "phone_number": "string",
  "taxpayer_id": "string",
  "incorporation_type": "string",
  "industry_classification": "string",
  "name": "string",
  "email_address": "string"
}

Properties

Name Type Required Restrictions Description
legal_name string true none none
phone_number string true none none
taxpayer_id string true none none
incorporation_type string true none none
industry_classification string true none none
name string false none none
email_address string false none none

BusinessUpdate

{
  "legal_name": "string",
  "phone_number": "string",
  "taxpayer_id": "string",
  "incorporation_type": "string",
  "industry_classification": "string",
  "name": "string",
  "email_address": "string"
}

Properties

Name Type Required Restrictions Description
legal_name string false none none
phone_number string false none none
taxpayer_id string false none none
incorporation_type string false none none
industry_classification string false none none
name string false none none
email_address string false none none

Credentials

{
  "grant_type": "client_credentials",
  "client_id": "string",
  "client_secret": "string"
}

Properties

Name Type Required Restrictions Description
grant_type string true none none
client_id string true none none
client_secret string true none none

Enumerated Values

Property Value
grant_type client_credentials

DocumentsCreate

{
  "document-type": "string",
  "document-value": "string"
}

Properties

Name Type Required Restrictions Description
document-type string true none none
document-value string true none none

ExternalAccountWrite

{
  "is_default": true,
  "bank_code": "string",
  "bank_account": "string",
  "bank_branch": "string",
  "account_holder_name": "string",
  "account_holder_type": "string",
  "account_holder_id": "string"
}

Properties

Name Type Required Restrictions Description
is_default boolean true none none
bank_code string true none none
bank_account string true none none
bank_branch string true none none
account_holder_name string true none none
account_holder_type string true none none
account_holder_id string true none none

LoanPreview

{
  "requested_amount": 0,
  "interest_rate": 0,
  "tac_amount": 0,
  "finance_fee": 0,
  "iof_rate_base": 0,
  "iof_rate_daily": 0,
  "num_periods": 0,
  "creation_date": "2019-08-24"
}

Properties

Name Type Required Restrictions Description
requested_amount number(double) true none none
interest_rate number(double) true none none
tac_amount number(double) true none none
finance_fee number(double) true none none
iof_rate_base number(double) true none none
iof_rate_daily number(double) true none none
num_periods integer(int64) true none none
creation_date string(date) true none none

LoanWrite

{
  "schedule": "monthly",
  "issue_date": "2019-08-24",
  "num_payments": 0,
  "iof_rate_base": 0,
  "finance_fee": 0,
  "requested_amount": 0,
  "interest_rate": 0,
  "tac_amount": 0,
  "disbursement_date": "2019-08-24",
  "loan_type": "pj",
  "first_payment": "2019-08-24",
  "iof_rate_daily": 0
}

Properties

Name Type Required Restrictions Description
schedule string true none none
issue_date string(date) true none none
num_payments integer(int64) true none none
iof_rate_base number(double) true none none
finance_fee integer(int64) true none none
requested_amount integer(int64) true none none
interest_rate number(double) true none none
tac_amount integer(int64) true none none
disbursement_date string(date) true none none
loan_type string true none none
first_payment string(date) true none none
iof_rate_daily number(double) true none none

Enumerated Values

Property Value
schedule monthly
loan_type pj
loan_type pf

PersonCreate

{
  "phone_number": "string",
  "taxpayer_id": "string",
  "occupation": "string",
  "nationality": "string",
  "pep": true,
  "birth_date": "string",
  "marital_status": "string",
  "full_name": "string",
  "email_address": "string",
  "mothers_name": "string",
  "drivers_license_number": "string",
  "marital_property_system": "string"
}

Properties

Name Type Required Restrictions Description
phone_number string true none none
taxpayer_id string true none none
occupation string true none none
nationality string true none none
pep boolean true none none
birth_date string true none none
marital_status string false none none
full_name string true none none
email_address string false none none
mothers_name string false none none
drivers_license_number string false none none
marital_property_system string false none none

PersonUpdate

{
  "phone_number": "string",
  "taxpayer_id": "string",
  "occupation": "string",
  "nationality": "string",
  "pep": true,
  "birth_date": "string",
  "marital_status": "string",
  "full_name": "string",
  "email_address": "string",
  "mothers_name": "string",
  "drivers_license_number": "string",
  "marital_property_system": "string"
}

Properties

Name Type Required Restrictions Description
phone_number string false none none
taxpayer_id string false none none
occupation string false none none
nationality string false none none
pep boolean false none none
birth_date string false none none
marital_status string false none none
full_name string false none none
email_address string false none none
mothers_name string false none none
drivers_license_number string false none none
marital_property_system string false none none

Relation

{
  "person_id": 0
}

Properties

Name Type Required Restrictions Description
person_id integer(int64) true none none

Signature

{
  "signed_at": "2019-08-24T14:15:22Z",
  "ip_address": "string",
  "user_agent": "string",
  "person_id": 0
}

Properties

Name Type Required Restrictions Description
signed_at string(date-time) true none none
ip_address string true none none
user_agent string true none none
person_id integer(int64) true none none