Skip to main content

FinGate

Craftgate has an integration with FinGate which is one of shopping loan integrator. You can inquire shopping loan bank payment table, make an shopping loan application and make payment with shopping loan via using Craftgate API.

Things to do first

In order to use the FinGate integration, you must have completed the following steps.

  1. Alternative Payment Method Integration must be On on Merchant Panel > Administration > Merchant Settings > Craftgate Features list.

    Alternative Payment Methods in Craftgate Features
  2. Enter the information sent to you by FinGate on Merchant Panel > Administration > APM Management > FinGate after Enable FinGate Integration status.

    Maslak Integration Settings

Bank Payment Plan Inquire

When making payments using shopping loan through Craftgate, the banks and the payment plan of these banks can be inquired by providing certain product-related information.

The payment plan inquiry may vary on a bank-by-bank basis, and some banks may not provide payment plan details.

Due to the restrictions imposed by the BDDK, when making an inquiry, quantity, amount, and category information related to the product should be provided. You can review the category codes defined by Craftgate: See: Category Codes

Pre-Approved Loan Inquiry

If the pre-approved loan process is being used, you can specify the loan application status with the isPreApproved parameter under the fingate header in the additionalParams field in the body request. When this parameter is set to true, it is mandatory to provide customer information. In this case, all loan options, including pre-approved loans, will be listed. If the isPreApproved parameter is not sent or set to false, providing customer information is not required. In this case, only regular loans will be queried.

When pre-approved loan options are queried, if there are banks that meet the pre-approved loan criteria, each returned data will include the preApprovedApplicationId field. This ID is used for subsequent loan application steps. If the pre-approved loan criteria are not met, this field will not be returned.

Request Parameters:

ParameterTypeRequiredDescription
buyerBirthdateStringYesCustomer's birthdate in YYYY-MM-DD format.
buyerPhoneNumberStringYesCustomer's phone number in the format 5xxxxxxx.
buyerIdentityNumberStringYesCustomer's national ID number.
isPreApprovedBooleanNoUsed for querying pre-approved loans. Defaults to false.

Example Request:

 "additionalParams": {
"buyerBirthdate": "1990-01-01",
"buyerPhoneNumber": "5555555555",
"buyerIdentityNumber": "11111111110",
"fingate": {
"isPreApproved": true
}
}

The example request above can be used to query pre-approved loans. If there are banks eligible for pre-approved loans, the response will include the preApprovedApplicationId field as shown below. Banks that do not support pre-approved loans will not return this field.

Example Response:

{
"data": {
"bankOffers": [
{
...
"bankCode": "012",
"preApprovedApplicationId": "12345678",
...
}
]
}

See: Bank Payment Table Inquire

Pay via FinGate Shopping Loan

After the payment plan is inquired, the bank will be selected and the payment flow begins. The loan application process is initiated by triggering the shopping loan payment flow via Craftgate. The customer should be directed to the bank's link that is received in response and the loan application process can continue at the bank side. Payment flows may differ depending on the bank.

In banks with an automatically approved loan application processes (such as İşbank, Akbank, TEB), when a loan application is approved by the bank, it will redirect to Craftgate system. Craftgate will redirect the payment page to callbackUrl which is sent in initialize request, and thus finalizes the payment process with shopping loan.

For banks without automatic approval (such as Fibabank, Denizbank), the process may vary according to customer agreements. However, when the bank approves the loan on their side, it transitions to the 'Credit ready for use' status, and the merchant is expected to make one final shopping loan approval service call to disburse the credit.

Payment Flow Process and init Service

The init service is the primary step that initiates the loan application. The following flows are supported in this service:

  1. Hosted Page Flow:

    • The customer is redirected by Craftgate, and the loan application is completed on the Fingate Hosted Page.
    • Customer information (buyerBirthdate, buyerPhoneNumber, buyerIdentityNumber) should not be sent in this flow. These details are collected on the Hosted Page.
  2. Direct Application Flow:

    • The customer is redirected by Craftgate, and the loan application is completed on the bank's side.
    • Customer information and other required fields (bankCode, preApprovedApplicationId, totalTerm) must be provided completely and accurately.

Request Parameters:

ParameterTypeRequiredDescription
bankCodeStringNoBank institution codes (The code returned by the Offers service for the selected bank must be sent). This field should not be included if the isHostedPage parameter is set to true.
totalTermIntegerNoThe selected installment term on the screen (Required for the Direct Application Flow). This field should not be included if the isHostedPage parameter is set to true.
preApprovedApplicationIdStringNoThe ID returned by the Offers service for pre-approved loans. Should not be sent in the Hosted Page Flow.
isHostedPageBooleanNoIndicates the Hosted Page flow. If true, the Hosted Page is used; if false, a direct application is made. Default: false.

Comparison of Hosted Page and Direct Application:

ParameterisHostedPage=true (Hosted Page)isHostedPage=false (Direct Application)
bankCodeNot sentMust be sent
totalTermNot sentMust be sent
preApprovedApplicationIdNot sentMust be sent
buyerBirthdateNot sentMust be sent
buyerPhoneNumberNot sentMust be sent
buyerIdentityNumberNot sentMust be sent

Example Hosted Page Request:

"additionalParams": {
"fingate": {
"isHostedPage": true
}
}

Example Direct Application Request:

{
"bankCode": "012",
...,
"additionalParams": {
"buyerBirthdate": "1990-01-01",
"buyerPhoneNumber": "5555555555",
"buyerIdentityNumber": "11111111110",
"fingate": {
"isHostedPage": false,
"preApprovedApplicationId": "12345678",
"totalTerm": 12
}
}
}

Callback and additionalAction Values

At the merchant's end, the flow should be designed based on the additionalAction parameter provided by Craftgate which will be sent to callbackUrl.

AdditionalAction values are as follows:

ValueDescription
NONEIt is used in the automatic approved shopping loan application process. The loan has been disbursed to the customer and the merchant has received the payment.
APPROVAL_REQUIREDIt is used when the shopping loan is ready for use. Without automatic approval process. bank wait for loan approval request. Merchant will check their system and calls loan approval service to complete the process.
WAIT_FOR_WEBHOOKIt is used for banks that do not work with automatic approval and are in the ongoing application process. The credit application is in the evaluation process. When the process is completed, information will be sent to the Craftgate system. Craftgate will notify the merchant through a Webhook Notification. By checking the additionalAction value in the Webhook message, credit can be disbursed by making a credit approval service call.

See: Pay via Shopping Loan

You can use the channel parameter in additionalParams to specify the channel through which the shopping credit will be used. This value can be WEB and MOBILE.

"additionalParams": {
"channel": "WEB"
}

Approving Shopping Loan

After the loan application process, the merchant should call the loan approval service on the Craftgate side when the additionalAction parameter is received as APPROVAL_REQUIRED at the callbackUrl address or - depending on the banks and agreements - at the webhook address when WAIT_FOR_WEBHOOK occurs. The merchant is required to perform their own checks and call the loan approval service on the Craftgate side to approve the loan.

See: Shopping Loan Approve