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.
Alternative Payment Method Integration must be
On
on Merchant Panel > Administration > Merchant Settings > Craftgate Features list.Enter the information sent to you by FinGate on Merchant Panel > Administration > APM Management > FinGate after
Enable
FinGate Integration status.
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:
Parameter | Type | Required | Description |
---|---|---|---|
buyerBirthdate | String | Yes | Customer's birthdate in YYYY-MM-DD format. |
buyerPhoneNumber | String | Yes | Customer's phone number in the format 5xxxxxxx . |
buyerIdentityNumber | String | Yes | Customer's national ID number. |
isPreApproved | Boolean | No | Used 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:
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.
- The customer is redirected by Craftgate, and the loan application is completed on the
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:
Parameter | Type | Required | Description |
---|---|---|---|
bankCode | String | No | Bank 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 . |
totalTerm | Integer | No | The 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 . |
preApprovedApplicationId | String | No | The ID returned by the Offers service for pre-approved loans. Should not be sent in the Hosted Page Flow. |
isHostedPage | Boolean | No | Indicates 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:
Parameter | isHostedPage=true (Hosted Page) | isHostedPage=false (Direct Application) |
---|---|---|
bankCode | Not sent | Must be sent |
totalTerm | Not sent | Must be sent |
preApprovedApplicationId | Not sent | Must be sent |
buyerBirthdate | Not sent | Must be sent |
buyerPhoneNumber | Not sent | Must be sent |
buyerIdentityNumber | Not sent | Must 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:
Value | Description |
---|---|
NONE | It 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_REQUIRED | It 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_WEBHOOK | It 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. |
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.