Skip to content

Additional Resources

Additional resources refer to supplementary tools that are available to enhance partner experience, address specific needs, offer guidance, and improve the overall usability of the products.

Refunds

Inbank has both full and partial returns available over API, you can find more information on full refunds in the Merchant Withdrawal section and on partial returns in the Partial Returns Guide.

ePOS Short Flow

ePOS Short Flow is applicable for cases when the partner would like to send the credit application over API and redirect the customer to Inbank's ePOS environment for contract signing. Please note, that this flow is available only in Estonia at the moment and should be pre-agreed with Inbank before integration.

You can find the detailed description of the flow in the ePOS Short Flow Guide.

Documentation Archive

Here you can find links to our archived integration guides using the v2 endpoints:

Languages
Servers
Demo environment
https://demo-api.inbank.ee/
Live environment
https://api.inbank.ee/

Additional Endpoints

Apart from the obligatory workflow, Partner API has the following endpoints which can provide additional possibilities that partners can use for their specific flows.

Operations

Product Details

Request

GET /partner/v2/shops/:shop_uuid/products?=product_code

This endpoint can be used before all the steps in the flow for showing the details of the product. The endpoint is applicable both to Redirect Payment integration and Direct API integration.

The product details endpoint retrives product parameters for a given product_code. The product parameters are set from Inbank's side following the partner's requirements, and the product code thus created is communicated to the partners. Partners can use this product code to GET details on product parameters.

Security
bearerAuth
Path
shop_uuidstringrequired

The unique identifier of the shop.

Example: 38571c75-2590-4c81-8252-531613c96363
Query
product_codestring

Code of the Inbank product about which details are required. The product code is provided by Inbank.

Example: product_code=test_code123
curl -i -X GET \
  'https://demo-api.inbank.ee/partner/v2/shops/38571c75-2590-4c81-8252-531613c96363/products?product_code=test_code123' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Return product details by shop UUID & product code

Bodyapplication/json
productobject
Response
application/json
{ "code": "product_code_here", "name": "Järelmaks (ePOS downpayment)", "type": "loan", "id": 826, "uuid": "c6ea4dcd-7c08-4e0a-9448-089e85d44142", "parameters": { "allowed_application_signing_methods": [], "allowed_contract_signing_methods": [], "application_required_params": [], "automatic_contract_signing": null, "automatically_sign_application": true, "customer_digital_verification_method": null, "display_max_limit_pp": false, "epos_amount_and_period_changeable": true, "epos_openable": true, "identification_required_from": "15000.0", "interest_segment_0": "0.1", "internetbank_openable": null, "internetbank_manageable": null, "internetbank_viewable": null, "min_amount": "30.0", "max_amount": "25000.0", "default_amount": "500.0", "period_options": [], "default_period": 48, "blue_media_verification_required": null, "contract_activation_requires_partner_approval": true, "contract_signing_on_frontend": null, "default_down_payment_prc": null, "default_payment_day": 10, "down_payment_enabled": true, "down_payment_min_prc": null, "down_payment_fixed_prc_limit": "100000.0", "down_payment_fixed_prc": "0.0", "down_payment_fixed_prc2_limit": "100000.0", "down_payment_fixed_prc2": "0.0", "down_payment_collected_by": 1, "expose_max_credit_limit": null, "max_limit_offer": null, "max_loan_offer_amount_difference": null, "max_financeable_amount": "25000.0", "min_age": 21, "min_financeable_amount": "30.0", "min_net_monthly_income": 240, "payment_day_options": [], "payout_to_merchant": true, "sales_flow_code": "ee_epos_hp_2", "residual_amount_prc": null, "show_epos_partner_logo": true, "instant_contract_fee_amount": null, "partnerportal_openable": false, "product_group": "hp", "requires_manual_employee_signature": null, "show_emta_consent": false, "vacation_length": null, "vacation_type": null, "use_ria_consent_for_emta": false, "contract_fee_type": 1, "currency": null }, "subtype": "hire_purchase", "valid_from": "2020-05-04", "valid_to": null }

Credit Application Submission

Request

POST /partner/v2/shops/:shop_uuid/applications

The example below includes all parameters that can be sent in the POST /application request. Please note, that not all parameters listed below are required. For examples of required parameters for this request, refer to the Direct API Guide.

A credit application can be submitted with minimum dataset capturing mandatory fields, partners have the option to submit a detailed application to capture more information regarding the application itself.

The request payload consists of the following sub-objects:

  • credit_application: monthly income, product code and other credit-related data
  • customer: customer's identity code, name and gender
  • customer_addresses: customer's address details
  • customer_contact: customer's email and phone number
  • customer_identification: the type of customer identification document and its number
  • purchase: details about the purchased items
  • consents: customer's consent related to the credit application process.
  • customer_consents: customer's consent for receiving data
  • customer_ubos: customer's Ultimate Beneficial Ownership (UBO) information
  • customer_pep: required details if the customer is PEP (politically exposed person)
  • customer_self_ubo: whether the customer applying for credit is also the UBO
  • else_ubo_pep: captures information about individuals who are UBOs of the loan but are not the customers applying themselves and are also identified as PEPs
  • customer_consent: customer's consent for processing of their individual data
  • partner_urls: partner/merchant's callback URL
  • additional_details: additional custom parameters that are related to the credit application.
Security
bearerAuth
Path
shop_uuidstringrequired

The unique identifier of the shop.

Example: 38571c75-2590-4c81-8252-531613c96363
Bodyapplication/jsonrequired
credit_applicationobject
customerobject
customer_addressesobject
customer_contactobject
customer_identificationobject
customer_consentsobject
consentsArray of objects(consents)

Array of all types of consents related to the credit application process

purchaseobject
customer_pepArray of objects(customer_pep)
customer_self_uboobject
customer_ubosArray of objects(customer_ubos)
customer_consentArray of objects(consents)

Array of consents to consents that are directly linked to the customer's individual permissions or agreements with Inbank.

else_ubo_pepobject
partner_urlsobject
additional_detailsobject

Any additional details about the credit application that are not covered with predefined parameters. To be added in key-value pair format.

curl -i -X POST \
  https://demo-api.inbank.ee/partner/v2/shops/38571c75-2590-4c81-8252-531613c96363/applications \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "credit_application": {
      "amount": "15000",
      "period": "24",
      "product_code": "example_product",
      "einvoice_account_number": "EE123456789012345678",
      "cfd_uuid": "123e4567-e89b-12d3-a456-426614174000",
      "civil_status": "single",
      "credit_purpose": "buying_a_car",
      "consolidation_loans": [
        {
          "financier": "Bank of Estonia",
          "fin_amount": "5000",
          "currency": "EUR",
          "financier_registry_number": 10123456,
          "financier_bank_account": "EE987654321098765432"
        }
      ],
      "dependants_count": "2",
      "down_payment_amount": "3000",
      "employer_name": "Estonian Tech Co.",
      "employer_phone": 3721234567,
      "employer_registry_code": 10765432,
      "employment_duration": "3 years",
      "employment_end": "2024-12-31",
      "employment_position": "Software Engineer",
      "employment_start": "2021-01-01",
      "housing_status": "owning_house_apartment",
      "income_source": "salary",
      "monthly_financial_obligations": "400",
      "monthly_household_costs": "800",
      "monthly_income": "2500",
      "payment_day": "15",
      "payout_account_number": "EE123456789012345678",
      "pos_session_uuid": "987e6543-b21c-34d5-a456-426614174000",
      "salesperson_reference": "SP123456",
      "underage_dependants_count": "1"
    },
    "customer": {
      "identity_code": "EE12345678901",
      "first_name": "John",
      "last_name": "Doe",
      "gender": "m",
      "residency": "EE",
      "tax_residency": "EE",
      "pep_status": "not_pep",
      "is_ubo": "false",
      "communication_language": "en",
      "occupation": "Software Engineer",
      "birth_date": "1985-06-15",
      "birth_place": "Tallinn"
    },
    "customer_contact": {
      "mobile": 37251234567,
      "email": "john.doe@example.com",
      "phone": 3726543210
    },
    "purchase": {
      "purchase_reference": "PUR123456",
      "id": "PUR7890",
      "description": "New Car Purchase",
      "additional_details": {},
      "items": [
        {
          "item_reference": "CAR123",
          "id": "CAR7890",
          "type": "product",
          "description": "Sedan, 2024 Model",
          "quantity": "1",
          "amount": "15000",
          "serial_number": "VIN1234567890",
          "url": "https://car-dealer.com/product/123",
          "image_url": "https://car-dealer.com/images/product123.jpg",
          "additional_details": {},
          "vehicle_vin": "VIN1234567890",
          "vehicle_licence_plate": "123ABC",
          "vehicle_make": "Toyota",
          "vehicle_model": "Camry",
          "vehicle_registration_date": "2024-08-01"
        }
      ]
    },
    "customer_consents": {
      "marketing": "true",
      "marketing_email": "true",
      "marketing_sms": "true",
      "marketing_post": "true",
      "marketing_phone": "true",
      "product_notifications": "true"
    },
    "customer_ubos": [
      {
        "full_name": "Jane Doe",
        "residency": "EE",
        "identity_code": "EE23456789012",
        "birth_place": "Tartu",
        "birth_date": "1987-09-12",
        "pep_status": "not_pep"
      }
    ],
    "callback_urls": "https://example.com/callback",
    "customer_addresses": [
      {
        "type": "legal",
        "country": "EE",
        "county": "Harju",
        "parish": "Kesklinna",
        "city": "Tallinn",
        "township": "Kesklinn",
        "street": "Pärnu mnt",
        "house": "15A",
        "apartment": "12",
        "zip_code": "10151",
        "provider": "Estonian Address Service"
      }
    ],
    "consents": [
      {
        "type": "EMTA_REGISTRY_QUERY",
        "value": true,
        "text": "Consent for EMTA registry query",
        "valid_from": "2024-08-29T14:35:16.534Z",
        "attachment": {
          "uuid": "e1234567-e89b-12d3-a456-426614174000"
        }
      }
    ],
    "customer_identification": {
      "document_type": "id_card",
      "document_number": "ID1234567",
      "document_valid_from": "2020-01-01",
      "document_valid_to": "2030-01-01",
      "document_valid_to_not_applicable": false,
      "identification_method": "in_person",
      "identification_location": "Tallinn",
      "issuer": "Estonian Police and Border Guard Board"
    },
    "customer_consent": [
      {
        "type": "EMTA_REGISTRY_QUERY",
        "value": true,
        "text": "Consent for EMTA registry query",
        "valid_from": "2024-08-29T14:35:16.534Z",
        "attachment": {
          "uuid": "e1234567-e89b-12d3-a456-426614174000"
        }
      }
    ],
    "customer_pep": {
      "valid_from": "2024-08-29T14:35:16.534Z",
      "pep_location": "NO",
      "position": "Member of Parliament",
      "relation": "CUSTOMER_IS_PEP",
      "time": "CURRENTLY"
    },
    "customer_self_ubo": {
      "value": true
    },
    "else_ubo_pep": {
      "ubo": {
        "ubo_first_name": "Jane",
        "ubo_last_name": "Doe",
        "residency": "EE",
        "id_code": "EE23456789012",
        "birth_place": "Tartu",
        "birth_date": "1987-09-12"
      },
      "pep": {
        "valid_from": "2024-08-29T14:35:16.534Z",
        "pep_location": "NO",
        "position": "Member of Parliament",
        "relation": "CUSTOMER_IS_PEP",
        "time": "CURRENTLY"
      }
    },
    "partner_urls": {
      "callback_url": "https://campaign.inbank.ee/tmp/post.php?type=callback"
    },
    "additional_details": {
      "example_custom_key": "example custom value"
    }
  }'

Responses

Create a new application

Bodyapplication/json
uuidstring

Application uuid.

Example: "471e6282-3384-412b-af7b-646eb8f04391"
numbernumber(double)

Application reference number.

Example: 89002917439
statusstring

Session status.

Example: "pending"
productCodestring

Product code.

Example: "example_product"
amountnumber(double)

Financing amount.

Example: 1001
periodinteger(int32)

Financing period in months.

Example: 12
downPaymentAmountnumber(double)

Down payment amount.

Example: 0
paymentDayinteger(int32)

Payment day.

Example: 15
startDatestring(date)

Start date.

Example: "2020-12-15"
endDatestring(date)

End date.

Example: "2021-11-15"
decisionStatusstring

It can be considered that the application received a positive decision if its decisionStatus is positive. Usually, a new application has decisionStatus as pending until the decision is reached. To receive the application decision, the GET /application endpoint should be polled once a second for a maximum of 30 seconds.

Enum"positive""negative""manual_negative""failed""income_proof_requested""pending""manual"
Example: "positive"
decisionMessagesstring

Contain a list of messages to be displayed to the customer on why the application decision received the corresponding status.

Example: "Positive decision"
changedConditionsboolean

Annual credit cost rate.

Example: false
previousUuidstring

Previous uuid.

Example: null
salespersonReferencestring

First name and last name of the sales person as it should appear on reports.

Example: "Earl James"
Response
application/json
{ "uuid": "471e6282-3384-412b-af7b-646eb8f04391", "number": 89002917439, "status": "pending", "productCode": "example_product", "amount": 1001, "period": 12, "downPaymentAmount": 0, "paymentDay": 15, "startDate": "2020-12-15", "endDate": "2021-11-15", "decisionStatus": "positive", "decisionMessages": "Positive decision", "changedConditions": false, "previousUuid": null, "salespersonReference": "Earl James" }

Add Payout Account to Contract

Request

POST /partner/v2/shops/:shop_uuid/contracts/:contract_uuid/payout_accounts

The endpoint specifies the account number to which Inbank transfers the required financing amount. Partners can submit a credit application without the indicated account number, and add it later before the credit contract is activated.

The endpoint applies only to contracts with status either signed or unsigned. After a credit contract is activated (has status activated), the payout account cannot be added.

Security
bearerAuth
Path
shop_uuidstringrequired

The unique identifier of the shop.

Example: 38571c75-2590-4c81-8252-531613c96363
contract_uuidstringrequired

The unique identifier of a particular credit contract.

Example: 788ec8c4-c497-470b-8505-2303f151d427
Bodyapplication/json
payout_bank_accountstring

The account to which Inbank is to transfer the financing amount.

Example: "PL96109010444793218160811234"
curl -i -X POST \
  https://demo-api.inbank.ee/partner/v2/shops/38571c75-2590-4c81-8252-531613c96363/contracts/788ec8c4-c497-470b-8505-2303f151d427/payout_accounts \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "payout_bank_account": "PL96109010444793218160811234"
  }'

Responses

Submit payout account to contract

Response
No content

Get Payment Schedule of Credit Application

Request

GET /partner/v2/shops/:shop_uuid/applications/:application_uuid/payment_schedules?response_level=full

This endpoint can be used after application has been submitted within the Direct API integration flow.

To retrieve the payment schedule for an application and present it to the customer, the
GET /partner/v2/shops/:shop_uuid/applications/:application_uuid/payment_schedules?response_level=full request can be used. The level of detail that the response will include, depends on the selected response_level.

Security
bearerAuth
Path
shop_uuidstringrequired

The unique identifier of the shop.

Example: 38571c75-2590-4c81-8252-531613c96363
application_uuidstringrequired

The unique identifier of a particular credit application.

Example: 471e6282-3384-412b-af7b-646eb8f04391
Query
response_levelstringrequired

Indication of how detailed the returned response should be. Options: summary, items, full.

Example: response_level=full
curl -i -X GET \
  'https://demo-api.inbank.ee/partner/v2/shops/38571c75-2590-4c81-8252-531613c96363/applications/471e6282-3384-412b-af7b-646eb8f04391/payment_schedules?response_level=full' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Get payment schedule

Bodyapplication/json
payment_scheduleobject
Response
application/json
{ "payment_schedule": null, "credit_application_uuid": "11d11011-101b-1e01-1ed1-ca111111f11", "response_level": "full", "period": 1, "amount": "450.0", "payment_day": 10, "down_payment_amount_total": "0.0", "down_payment_amount_prc": null, "net_credit_amount": "450.0", "payment_amount_monthly": "146.25", "interest_rate_annual": "0.0", "contract_fee_amount_total": "135.0", "contract_fee_prc": "0.075", "admin_fee_amount_monthly": "0.0", "admin_fee_amount_total": "0.0", "insurance_fee_amount_monthly": null, "insurance_fee_amount_total": null, "credit_cost_rate_annual": "2.6839", "credit_cost_amount_total": "135.0", "residual_amount_total": null, "residual_amount_prc": null, "interest_type": "floating", "campaign_interest_type": "fixed", "campaign_interest_period_start_date": "2022-03-17", "campaign_interest_period_end_date": "2022-10-10", "campaign_interest_rate": "0.029", "floating_interest_rate": { "base_rate_type": "EURIBOR_6M", "base_rate_value": "0.0", "margin": "0.11", "campaign_margin": "0.029", "next_base_rate_change_date": "2022-10-10" }, "interest_bearing_amount": "450.0", "interest_amount_total": "0.0", "repayments_amount_total": "585.0", "first_payment_date": "2019-06-10", "first_payment_amount": "146.25", "last_payment_date": "2019-09-10", "last_payment_amount": "146.25", "payment_schedule_items": [ {} ] }