Skip to content

Embedded Finance API (v1.2.0) (1.0.0)

API documentation for the Embedded Finance Microservice.

Download OpenAPI description
Overview
Languages
Servers
Mock server
https://embed-docs.eunifin.com/_mock/openapi
Local development server
http://localhost:8080

Transactions

Transaction initiation and query endpoints.

Operations

Loan Transactions

Loan lifecycle transaction endpoints.

Operations

Pay a loan

Request

Makes a repayment for a loan.

All fields are required.

Path
loanIdinteger(int64)required

Loan identifier.

Example: 236
Bodyapplication/jsonrequired
metaDataobject(MetaData)required

Standard metadata supplied with each partner request.

metaData.​idempotencyKeystringrequired

Unique idempotency key for the request.

Example: "partnerId_uuid"
metaData.​partnerIdstringrequired

Partner identifier.

Example: "partner-id"
metaData.​partnerUserRefstringrequired

Partner-side user reference.

Example: "partner-user-id"
payloadobjectrequired

Operation-specific payload.

Example: {"accountId":"6c9083ce-b9d6-4415-8ad1-e32050fc8f93"}
payload.​property name*anyadditional property
curl -i -X POST \
  https://embed-docs.eunifin.com/_mock/openapi/transactions/loans/236/repay \
  -H 'Content-Type: application/json' \
  -d '{
    "metaData": {
      "idempotencyKey": "partnerId_uuid",
      "partnerId": "partner-id",
      "partnerUserRef": "partner-user-id"
    },
    "payload": {
      "accountId": "6c9083ce-b9d6-4415-8ad1-e32050fc8f93"
    }
  }'

Responses

Loan repayment processed successfully.

Bodyapplication/json
transactionDataobject(TransactionData)required

Summary information about a saga transaction.

transactionData.​transactionIdinteger(int64)required

Internal transaction identifier.

Example: 1
transactionData.​transactionTypestringrequired

Type of transaction performed.

Example: "TRANSFER"
transactionData.​transactionStatusstringrequired

Current transaction status.

Example: "COMPLETED"
transactionData.​failedStepstring or null

Name of the failed saga step when applicable.

Example: "BANK_SUBMITTED"
payloadobjectrequired

Operation-specific response payload.

Example: {"cardId":"97c89895-372b-48ee-81c4-3230b4dbb6fd"}
payload.​property name*anyadditional property
Response
application/json
{ "transactionData": { "transactionId": 1, "transactionType": "TRANSFER", "transactionStatus": "COMPLETED", "failedStep": "BANK_SUBMITTED" }, "payload": { "cardId": "97c89895-372b-48ee-81c4-3230b4dbb6fd" } }

Disburse an approved loan

Request

Disburses an approved loan to the borrower. The loan must already be in approved status.

All fields are required.

Path
loanIdinteger(int64)required

Loan identifier.

Example: 236
Bodyapplication/jsonrequired
metaDataobject(MetaData)required

Standard metadata supplied with each partner request.

metaData.​idempotencyKeystringrequired

Unique idempotency key for the request.

Example: "partnerId_uuid"
metaData.​partnerIdstringrequired

Partner identifier.

Example: "partner-id"
metaData.​partnerUserRefstringrequired

Partner-side user reference.

Example: "partner-user-id"
payloadobjectrequired

Operation-specific payload.

Example: {"accountId":"6c9083ce-b9d6-4415-8ad1-e32050fc8f93"}
payload.​property name*anyadditional property
curl -i -X POST \
  https://embed-docs.eunifin.com/_mock/openapi/transactions/loans/236/disburse \
  -H 'Content-Type: application/json' \
  -d '{
    "metaData": {
      "idempotencyKey": "partnerId_uuid",
      "partnerId": "partner-id",
      "partnerUserRef": "partner-user-id"
    },
    "payload": {
      "accountId": "6c9083ce-b9d6-4415-8ad1-e32050fc8f93"
    }
  }'

Responses

Loan disbursed successfully.

Bodyapplication/json
transactionDataobject(TransactionData)required

Summary information about a saga transaction.

transactionData.​transactionIdinteger(int64)required

Internal transaction identifier.

Example: 1
transactionData.​transactionTypestringrequired

Type of transaction performed.

Example: "TRANSFER"
transactionData.​transactionStatusstringrequired

Current transaction status.

Example: "COMPLETED"
transactionData.​failedStepstring or null

Name of the failed saga step when applicable.

Example: "BANK_SUBMITTED"
payloadobjectrequired

Operation-specific response payload.

Example: {"cardId":"97c89895-372b-48ee-81c4-3230b4dbb6fd"}
payload.​property name*anyadditional property
Response
application/json
{ "transactionData": { "transactionId": 1, "transactionType": "TRANSFER", "transactionStatus": "COMPLETED", "failedStep": "BANK_SUBMITTED" }, "payload": { "cardId": "97c89895-372b-48ee-81c4-3230b4dbb6fd" } }

Approve a loan

Request

Attempts to approve a submitted loan.

All fields are required.

Path
loanIdinteger(int64)required

Loan identifier.

Example: 236
Bodyapplication/jsonrequired
metaDataobject(MetaData)required

Standard metadata supplied with each partner request.

metaData.​idempotencyKeystringrequired

Unique idempotency key for the request.

Example: "partnerId_uuid"
metaData.​partnerIdstringrequired

Partner identifier.

Example: "partner-id"
metaData.​partnerUserRefstringrequired

Partner-side user reference.

Example: "partner-user-id"
payloadobjectrequired

Operation-specific payload.

Example: {"accountId":"6c9083ce-b9d6-4415-8ad1-e32050fc8f93"}
payload.​property name*anyadditional property
curl -i -X POST \
  https://embed-docs.eunifin.com/_mock/openapi/transactions/loans/236/approve \
  -H 'Content-Type: application/json' \
  -d '{
    "metaData": {
      "idempotencyKey": "partnerId_uuid",
      "partnerId": "partner-id",
      "partnerUserRef": "partner-user-id"
    },
    "payload": {
      "accountId": "6c9083ce-b9d6-4415-8ad1-e32050fc8f93"
    }
  }'

Responses

Loan approved successfully.

Bodyapplication/json
transactionDataobject(TransactionData)required

Summary information about a saga transaction.

transactionData.​transactionIdinteger(int64)required

Internal transaction identifier.

Example: 1
transactionData.​transactionTypestringrequired

Type of transaction performed.

Example: "TRANSFER"
transactionData.​transactionStatusstringrequired

Current transaction status.

Example: "COMPLETED"
transactionData.​failedStepstring or null

Name of the failed saga step when applicable.

Example: "BANK_SUBMITTED"
payloadobjectrequired

Operation-specific response payload.

Example: {"cardId":"97c89895-372b-48ee-81c4-3230b4dbb6fd"}
payload.​property name*anyadditional property
Response
application/json
{ "transactionData": { "transactionId": 1, "transactionType": "TRANSFER", "transactionStatus": "COMPLETED", "failedStep": "BANK_SUBMITTED" }, "payload": { "cardId": "97c89895-372b-48ee-81c4-3230b4dbb6fd" } }

Write off a loan

Request

Writes off a loan.

All fields are required.

Bodyapplication/jsonrequired
metaDataobject(MetaData)required

Standard metadata supplied with each partner request.

metaData.​idempotencyKeystringrequired

Unique idempotency key for the request.

Example: "partnerId_uuid"
metaData.​partnerIdstringrequired

Partner identifier.

Example: "partner-id"
metaData.​partnerUserRefstringrequired

Partner-side user reference.

Example: "partner-user-id"
payloadobjectrequired

Operation-specific payload.

Example: {"accountId":"6c9083ce-b9d6-4415-8ad1-e32050fc8f93"}
payload.​property name*anyadditional property
curl -i -X POST \
  https://embed-docs.eunifin.com/_mock/openapi/transactions/loans/write-off \
  -H 'Content-Type: application/json' \
  -d '{
    "metaData": {
      "idempotencyKey": "partnerId_uuid",
      "partnerId": "partner-id",
      "partnerUserRef": "partner-user-id"
    },
    "payload": {
      "accountId": "6c9083ce-b9d6-4415-8ad1-e32050fc8f93"
    }
  }'

Responses

Loan written off successfully.

Bodyapplication/json
transactionDataobject(TransactionData)required

Summary information about a saga transaction.

transactionData.​transactionIdinteger(int64)required

Internal transaction identifier.

Example: 1
transactionData.​transactionTypestringrequired

Type of transaction performed.

Example: "TRANSFER"
transactionData.​transactionStatusstringrequired

Current transaction status.

Example: "COMPLETED"
transactionData.​failedStepstring or null

Name of the failed saga step when applicable.

Example: "BANK_SUBMITTED"
payloadobjectrequired

Operation-specific response payload.

Example: {"cardId":"97c89895-372b-48ee-81c4-3230b4dbb6fd"}
payload.​property name*anyadditional property
Response
application/json
{ "transactionData": { "transactionId": 1, "transactionType": "TRANSFER", "transactionStatus": "COMPLETED", "failedStep": "BANK_SUBMITTED" }, "payload": { "cardId": "97c89895-372b-48ee-81c4-3230b4dbb6fd" } }

Apply for a loan

Request

Attempts to create and submit a loan application.

All fields are required.

Bodyapplication/jsonrequired
metaDataobject(MetaData)required

Standard metadata supplied with each partner request.

metaData.​idempotencyKeystringrequired

Unique idempotency key for the request.

Example: "partnerId_uuid"
metaData.​partnerIdstringrequired

Partner identifier.

Example: "partner-id"
metaData.​partnerUserRefstringrequired

Partner-side user reference.

Example: "partner-user-id"
payloadobjectrequired

Operation-specific payload.

Example: {"accountId":"6c9083ce-b9d6-4415-8ad1-e32050fc8f93"}
payload.​property name*anyadditional property
curl -i -X POST \
  https://embed-docs.eunifin.com/_mock/openapi/transactions/loans/create \
  -H 'Content-Type: application/json' \
  -d '{
    "metaData": {
      "idempotencyKey": "partnerId_uuid",
      "partnerId": "partner-id",
      "partnerUserRef": "partner-user-id"
    },
    "payload": {
      "accountId": "6c9083ce-b9d6-4415-8ad1-e32050fc8f93"
    }
  }'

Responses

Loan application submitted successfully.

Bodyapplication/json
transactionDataobject(TransactionData)required

Summary information about a saga transaction.

transactionData.​transactionIdinteger(int64)required

Internal transaction identifier.

Example: 1
transactionData.​transactionTypestringrequired

Type of transaction performed.

Example: "TRANSFER"
transactionData.​transactionStatusstringrequired

Current transaction status.

Example: "COMPLETED"
transactionData.​failedStepstring or null

Name of the failed saga step when applicable.

Example: "BANK_SUBMITTED"
payloadobjectrequired

Operation-specific response payload.

Example: {"cardId":"97c89895-372b-48ee-81c4-3230b4dbb6fd"}
payload.​property name*anyadditional property
Response
application/json
{ "transactionData": { "transactionId": 1, "transactionType": "TRANSFER", "transactionStatus": "COMPLETED", "failedStep": "BANK_SUBMITTED" }, "payload": { "cardId": "97c89895-372b-48ee-81c4-3230b4dbb6fd" } }

Rail Notifications

Rail notification simulation and status endpoints.

Operations