# Credit Application Submission Credit applications are the initial step in the Inbank financing process. Once the application is reviewed and accepted by the customer, a credit contract is created. POST /partner/v2/shops/:shop_uuid/applications A credit application is submitted using the POST /partner/v2/:shop_uuid/applications endpoint. The credit application contains the credit period and amount, identification data and other information regarding the customer and the purchase. Once the e-shop receives a response to the payment session initiation request with the redirect URL and the UUID of the session, it can forward the data of the credit application to Inbank. To submit credit application data to Inbank, use the POST /partner/v2/shops/:shop_uuid/applications request. Request payload consists of several sub-objects: - credit_application: monthly income, product code and other credit related data - customer: customer\'s identity code, name and gender - customer_contact: customer\'s email and phone number - customer_addresses: customer's address details - customer_identification: the type of customer identification document and its number - consents: customer's consent for processing of their data - purchase: details about the purchased items - partner_urls: URL for the callbacks about the process status updates. Important note for test environments Document number, phone number and email of one customer cannot be used for another customer. For testing purposes it means that if you introduce a new identity code, you should also generate a new document number, phone number and email address. If you use an existing customer's identity code, you can use both existing and new values for document number, phone number and email address. Due to banking secrecy we cannot indicate the exact reason behind the application failure (e.g. customer with such an email already exists) and will return a generic error: "Error has occurred, contact customer support". The decision_status parameter can have the following values: positive, negative, manual_negative, failed, income_proof_required, pending, manual. It can be considered that the application received a positive decision if its decision_status is positive. Usually, a new application has decision_status 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. The decision_messages contain a list of messages to be displayed to the customer on why the application decision received the corresponding status. If the response includes the income_proof_required decision status, the customer needs to submit their income proof documents to Inbank. The new income_proof_type parameter in the response to POST /applications indicates the manner in which the documents need to be submitted, either via the AIS upload process or the manual upload, or via a manual upload only. Possible values are: - ais_with_fallback_manual_upload_option - the customer can submit their income proof statement via AIS upload process or manual upload. To perform the AIS upload process, you need to redirect the customer to a third party URL. After the AIS upload process is complete, the customer will be redirected back to the flow on your site. - manual_internal_verification - the customer can submit their income proof statement via the manual upload only. Please note that after the AIS upload process, the application might once again receive the income_proof_required decision status with the manual_internal_verification verification type in cases when Inbank needs additional data from the customer to make a decision. Endpoint: POST /partner/v2/shops/{shop_uuid}/applications Security: bearerAuth ## Path parameters: - `shop_uuid` (string, required) The unique identifier of the shop. Example: "a93f1f44-d5dd-4469-bfcc-c1de9e969213" ## Request fields (application/json): - `credit_application` (object) - `credit_application.product_code` (string, required) Product code. - `credit_application.amount` (number, required) Financing amount. - `credit_application.period` (integer, required) Financing period in months. Options depend on the particular product. - `credit_application.monthly_income` (number) Monthly income. Required for Inbank Hire Purchase in Estonia. - `credit_application.monthly_financial_obligations` (number) Amount of monthly financial obligations. Required for Inbank Hire Purchase in Estonia. - `credit_application.payout_account_number` (string) The account number to which the credit amount will be transferred. Required if payout to customer. - `credit_application.einvoice_account_number` (string) The account number to which e-invoices will be sent. Required if payout to customer. - `credit_application.down_payment_amount` (number) Down payment amount. Required if down payment is to be used. Note that down payment is required in Latvia for Hire Purchase payment products for amounts over 1400 EUR. - `credit_application.dependants_count` (integer) Number of dependants the customer has. Required for Inbank Hire Purchase in Latvia. - `credit_application.salesperson_reference` (string) First name and last name of the sales person as it should appear on reports. - `customer` (object) - `customer.identity_code` (string, required) Customer identity code / PESEL. Must be present and be valid according to current country's identity code rules, where country is taken from application configuration. - `customer.first_name` (string, required) Customer first name. See validation rules below. - `customer.last_name` (string, required) Customer last name. See validation rules below. - `customer.pep_status` (string) Required for Inbank Hire Purchase. Not required for Split into parts. Enum: "not_pep", "pep_in_local_country", "pep_in_eu", "pep_in_third_country" - `customer.is_ubo` (boolean) Whether the customer is the ultimate beneficiary of the credit. If set to false, Inbank cannot offer credit to this customer. Required for Inbank Hire Purchase. Not required for Split into parts. - `customer_addresses` (object) - `customer_addresses.type` (string) Type of customer address. If more than one address is added, a legal type address is required and set as primary. If one address is added without type, it is set as primary. Enum: "legal", "contact" - `customer_addresses.country` (string, required) Customer address country. ISO 3166-1 alpha-2, codes. Enum: "EE", "LV", "LT", "RU", "FI", "SE", "NO", "PL", "CZ", "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AU", "AT", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CY", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "GQ", "ER", "ET", "FK", "FO", "FJ", "FR", "GF", "PF", "TF", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LB", "LS", "LR", "LY", "LI", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "AN", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "OM", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PT", "PR", "QA", "RE", "RO", "RW", "SH", "KN", "LC", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SK", "SI", "SB", "SO", "ZA", "GS", "ES", "LK", "SD", "SR", "SJ", "SZ", "CH", "SY", "TW", "TJ", "TZ", "TH", "TL", "TG", "TK", "TO", "TT", "TN", "TR", "TM", "TC", "TV", "UG", "UA", "AE", "GB", "US", "UM", "UY", "UZ", "VU", "VE", "VN", "VG", "VI", "WF", "EH", "YE", "ZM", "ZW" - `customer_addresses.county` (string) Customer address county name. E.g. HARJU MAAKOND - `customer_addresses.parish` (string) Customer address city name. E.g. HARJU - `customer_addresses.township` (string) Customer address township name. E.g. HARJU MAAKOND - `customer_addresses.street` (string, required) Customer address street name, i.e. Niine. - `customer_addresses.house` (string) Customer address house number, i.e. 11. - `customer_addresses.apartment` (string) Customer address apartment number, i.e. 4A. - `customer_addresses.zip_code` (string, required) Customer address postal code, i.e. 10414. - `customer_contact` (object) - `customer_contact.mobile` (string) Customer contact mobile number, i.e. +37253630000, 53630000. Not required only if the email parameter is sent. Must be new or unique to current customer. - `customer_contact.email` (string) Customer contact email address. Not required only if the mobile parameter is sent. Must be new or unique to current customer. - `customer_identification` (object) - `customer_identification.document_type` (string, required) Customer identification document type. Enum: "id_card", "passport", "residence_permit" - `customer_identification.document_number` (string, required) Customer identification document number. Must be new or unique to current customer and be valid for current country and document_type. - `customer_identification.document_valid_from` (string) Must be in the past and be before the date of valid_to parameter. - `customer_identification.document_valid_to` (string) Must be in the future and be after the date of valid_from parameter. - `consents` (object) - `consents.type` (string, required) Consent type. The complete list of required consents will be provided by Inbank. Consents required for Split into parts in Estonia: SERVICE_AGREEMENT_SLICE_EE, ESERVICES_AGREEMENT. Consents required for Split into parts in Latvia: ESERVICES_AGREEMENT. Consents required for All Financing Products in Latvia: MARKETING_EMAIL, MARKETING_PHONE and MARKETING_SMS. All available options: ESERVICES_AGREEMENT, DATA_PROCESSING, PRIVACY_POLICY, CLICK_ACCEPT,MARKETING_EMAIL, MARKETING_PHONE, MARKETING_POST, MARKETING_SMS, PRODUCT_NOTIFICATION, NO_PEP_CONFIRMATION, BO_CONFIRMATION, INBANK_INTERNAL_QUERY, SERVICE_AGREEMENT_HP_EE, SERVICE_AGREEMENT_SLICE_EE, VERIFF_AGREEMENT, EMTA_REGISTRY_QUERY. - `consents.value` (boolean, required) Whether the customer has given their consent or not. - `consents.text` (string, required) The precise consent text to which the customer is agreeing. - `partner_urls` (object) - `partner_urls.callback_url` (string) URL for sending server-to-server callback messages about financing process status changes. - `purchase` (object) - `purchase.purchase_reference` (string) Unique reference number of the shopping cart or order at the partner side. Not required only if the description parameter is sent. - `purchase.id` (string) Unique identificator of the shopping cart or order at the partner side. - `purchase.description` (string) Textual description of the order or shopping cart, meaningful for customers. Not required only if the purchase_reference parameter is sent. - `purchase.additional_details` (object) Any additional details about the order that are not covered with predefined parameters. - `purchase.items` (array) Array of items in the order/shopping cart. - `purchase.items.item_reference` (string) Item reference provided by partner. - `purchase.items.id` (string) Item identificator provided by partner. - `purchase.items.type` (string) Item type. Some types require additional information/validations. Options: product, service, vehicle. - `purchase.items.description` (string) Textual name of the item. - `purchase.items.quantity` (integer) Quantity of items in this row. - `purchase.items.amount` (number) Price of item(s) in this row (row sum). - `purchase.items.serial_number` (string) Serial number of the purchased item. - `purchase.items.url` (string) Link to the purchased item. - `purchase.items.image_url` (string) Link to an image of the purchased item. - `purchase.items.additional_details` (object) Any additional details about the purchased item that are not covered with predefined parameters. - `purchase.items.vehicle_vin` (string) Vehicle identification number of the purchased vehicle. - `purchase.items.vehicle_licence_plate` (string) License plate of the purchased vehicle. - `purchase.items.vehicle_make` (string) Brand of the purchased vehicle. - `purchase.items.vehicle_model` (string) Model of the purchased vehicle. - `purchase.items.vehicle_registration_date` (string) Registration date of the purchased vehicle. ## Response 201 fields (application/json): - `uuid` (string) Application uuid. Example: "471e6282-3384-412b-af7b-646eb8f04391" - `number` (number) Application reference number. Example: 89002917439 - `status` (string) Session status. Example: "pending" - `product_code` (string) Product code. Example: "example_product" - `amount` (number) Financing amount. Example: 1001 - `period` (integer) Financing period in months. Example: 12 - `down_payment_amount` (number) Down payment amount. - `payment_day` (integer) Payment day. Example: 15 - `start_date` (string) Start date. Example: "2020-12-15" - `end_date` (string) End date. Example: "2021-11-15" - `decision_status` (string) It can be considered that the application received a positive decision if its decision_status is positive. Usually, a new application has decision_status 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" - `decision_messages` (string) Contain a list of messages to be displayed to the customer on why the application decision received the corresponding status. Example: "Positive decision" - `changed_conditions` (boolean) Annual credit cost rate. - `previous_uuid` (string) Previous uuid. - `salesperson_reference` (string) First name and last name of the sales person as it should appear on reports. Example: "Earl James" ## Response 401 fields (application/json): - `message` (string) Unauthorized Example: "unauthorized" ## Response 403 fields (application/json): - `message` (string) Unauthorized access Example: "User is not authorized to access this resource with an explicit deny" ## Response 404 fields (application/json): - `message` (string) Not Found Example: "not_found" ## Response 422 fields (application/json): - `message` (string) Unprocessable Entity ## Response 500 fields (application/json): - `message` (string) Internal server error Example: "internal_server_error"