| Advertiser | CreditGO |
| Country | CZ |
| Segment | Finance |
| Product | Loan |
| Integration type | Lead generation |
| Flows | Ping → Post |
| Platform | CreditOnline |
Use global fields and skip mapping entirely
Every prebuilt integration is already mapped to PalDock’s global fields. Populate them once in your lead structure, whether leads arrive through the API or form, and the same fields feed every integration you run.
Integration overview
This prebuilt PalDock integration connects your lead flow directly to the advertiser. It handles field mapping, request delivery and response processing, so you can start sending leads without building the integration from scratch.
The integration uses PalDock’s global fields and returns standardized outcomes for reporting and routing, while preserving advertiser response details for troubleshooting.
Blueprint

Blueprint for new customers
{
"nodes": [
{
"id": "1-1",
"type": "startNode",
"position": {
"x": -650,
"y": 120
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "post",
"beType": "integration"
}
}
},
{
"id": "2-1",
"type": "startNode",
"position": {
"x": -500,
"y": -160
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "ping",
"beType": "integration"
}
}
},
{
"id": "1-2",
"type": "modifyFieldNode",
"position": {
"x": -520,
"y": 120
},
"data": {
"formData": {
"active": true,
"title": "Transform data",
"subtitle": "",
"data": [
{
"fieldName": "{data_income_type}",
"fields": [
{
"source": "{data_income_type}",
"operator": "equals",
"value": "full-time",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Zaměstnanec"
},
{
"source": "{data_income_type}",
"operator": "equals",
"value": "self-employed",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "OSVČ"
},
{
"source": "{data_income_type}",
"operator": "equals",
"value": "parental",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Mateřská dovolená"
},
{
"source": "{data_income_type}",
"operator": "equals",
"value": "pension",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Důchodce"
},
{
"source": "{data_income_type}",
"operator": "equals",
"value": "unemployed",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Nezaměstnaný"
}
]
},
{
"fieldName": "{data_different_contact_address}",
"fields": [
{
"source": "{data_different_contact_address}",
"operator": "regex_match",
"value": "(?i)^(true|yes|ano)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "0"
},
{
"source": "{data_different_contact_address}",
"operator": "regex_match",
"value": "(?i)^(false|no|ne|null)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "1"
},
{
"source": "{data_different_contact_address}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "1"
}
]
},
{
"fieldName": "{data_requested_amount}",
"fields": [
{
"source": "{data_requested_amount}",
"operator": "is_greater_than",
"value": "30000",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "30000"
}
]
},
{
"fieldName": "{data_contact_city}",
"fields": [
{
"source": "{data_contact_city}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_expenses}",
"fields": [
{
"source": "{data_expenses}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_contact_house_number}",
"fields": [
{
"source": "{data_contact_house_number}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_contact_street}",
"fields": [
{
"source": "{data_contact_street}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_contact_zip}",
"fields": [
{
"source": "{data_contact_zip}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_employer}",
"fields": [
{
"source": "{data_employer}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_company_number_imported}",
"fields": [
{
"source": "{data_company_number_imported}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
},
{
"fieldName": "{data_job_title}",
"fields": [
{
"source": "{data_job_title}",
"operator": "is_empty",
"value": "",
"value2": "",
"modification": "do_not_send",
"pattern": "",
"output": ""
}
]
}
]
}
}
},
{
"id": "1-3",
"type": "httpNode",
"position": {
"x": -362.25796425835,
"y": 170.73515691127
},
"data": {
"formData": {
"active": true,
"title": "Create",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/?RPC=agents.registerClient",
"timeout": 30,
"format": "login-data-pass",
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [
{
"key": "Content-type",
"value": "application/x-www-form-urlencoded; charset=UTF-8"
}
],
"query": [],
"body": [
{
"key": "pass",
"value": "{password}"
},
{
"key": "login",
"value": "{username}"
},
{
"key": "data.ip",
"value": "{ip_address}"
},
{
"key": "data.chk3",
"value": "1"
},
{
"key": "data.chk5",
"value": "1"
},
{
"key": "data.chk8",
"value": "1"
},
{
"key": "data.chk9",
"value": "1"
},
{
"key": "data.city",
"value": "{data_city}"
},
{
"key": "data.city2",
"value": "{data_contact_city}"
},
{
"key": "data.costs",
"value": "{data_expenses}"
},
{
"key": "data.email",
"value": "{data_email}"
},
{
"key": "data.house",
"value": "{data_house_number}"
},
{
"key": "data.house2",
"value": "{data_contact_house_number}"
},
{
"key": "data.income",
"value": "{data_monthly_income}"
},
{
"key": "data.address",
"value": "{data_street}"
},
{
"key": "data.surname",
"value": "{data_last_name}"
},
{
"key": "data.zipcode",
"value": "{data_zip}"
},
{
"key": "data.address2",
"value": "{data_contact_street}"
},
{
"key": "data.realname",
"value": "{data_first_name}"
},
{
"key": "data.zipcode2",
"value": "{data_contact_zip}"
},
{
"key": "data.id_number",
"value": "{data_identity_card_number}"
},
{
"key": "data.mob_phone",
"value": "{data_cell_phone}"
},
{
"key": "data.workplace",
"value": "{data_employer}"
},
{
"key": "data.person_code",
"value": "{data_nin}"
},
{
"key": "data.check_adresa",
"value": "{data_different_contact_address}"
},
{
"key": "data.company_code",
"value": "{data_company_number_imported}"
},
{
"key": "data.other_income",
"value": "{data_income_type}"
},
{
"key": "data.account_number",
"value": "{data_account_number}/{data_bank_code}"
},
{
"key": "data.workplace_position",
"value": "{data_job_title}"
}
],
"signature": null,
"insecure": null
}
}
},
{
"id": "1-4",
"type": "setNode",
"position": {
"x": -200,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{external_id}",
"value": "{parsedBody.customer_id}"
},
{
"key": "{customer_id}",
"value": "{parsedBody.customer_id}"
}
]
}
}
},
{
"id": "1-6",
"type": "httpNode",
"position": {
"x": -40,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Post",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/api/v1.0/credits/application",
"timeout": 30,
"format": null,
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [],
"query": [
{
"key": "amount",
"value": "{data_requested_amount}"
},
{
"key": "apiKey",
"value": "{token}"
},
{
"key": "apiLan",
"value": "cz"
},
{
"key": "period",
"value": "{data_period}"
},
{
"key": "_method",
"value": "post"
},
{
"key": "brokerId",
"value": "{partner_id}"
},
{
"key": "maxAmount",
"value": "30000"
},
{
"key": "customerId",
"value": "{customer_id}"
},
{
"key": "account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"body": [],
"signature": null,
"insecure": null
}
}
},
{
"id": "1-8",
"type": "setNode",
"position": {
"x": 120,
"y": 20
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{redirect_url}",
"value": "{parsedBody.data.url}"
},
{
"key": "{external_id}",
"value": "{parsedBody.data.credit_id}"
}
]
}
}
},
{
"id": "1-5",
"type": "modifyFieldNode",
"position": {
"x": 120.54856453418,
"y": 180
},
"data": {
"formData": {
"active": true,
"title": "Reject reason · Create",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.err}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "1-7",
"type": "endNode",
"position": {
"x": 300,
"y": 180
},
"data": {
"formData": {
"active": true,
"title": "Rejected · Create",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "1-10",
"type": "endNode",
"position": {
"x": 300,
"y": 20
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
},
{
"id": "2-2",
"type": "httpNode",
"position": {
"x": -340,
"y": -160
},
"data": {
"formData": {
"active": true,
"title": "Ping",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/?RPC=agents.checkPersonalData",
"timeout": 30,
"format": "login-data-pass",
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [
{
"key": "Content-type",
"value": "application/x-www-form-urlencoded; charset=UTF-8"
}
],
"query": [],
"body": [
{
"key": "pass",
"value": "{password}"
},
{
"key": "login",
"value": "{username}"
},
{
"key": "data.city",
"value": "{data_city}"
},
{
"key": "data.email",
"value": "{data_email}"
},
{
"key": "data.house",
"value": "{data_house_number}"
},
{
"key": "data.address",
"value": "{data_street}"
},
{
"key": "data.surname",
"value": "{data_last_name}"
},
{
"key": "data.zipcode",
"value": "{data_zip}"
},
{
"key": "data.realname",
"value": "{data_first_name}"
},
{
"key": "data.id_number",
"value": "{data_identity_card_number}"
},
{
"key": "data.mob_phone",
"value": "{data_cell_phone}"
},
{
"key": "data.person_code",
"value": "{data_nin}"
},
{
"key": "data.account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"signature": null,
"insecure": null
}
}
},
{
"id": "2-3",
"type": "modifyFieldNode",
"position": {
"x": -160,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Reject reason",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.personalData.person_code}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.email}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.mob_phone}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.id_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.account_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.customer_id}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Application|Registrator|Klient)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Request|Loan)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Existing Customer"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Rejected",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Loan creation declined",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Registration declined by CSAS|Request declined by CSAS|BadScore)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Poor Credit"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(BlackList|BlockList)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Blacklist"
},
{
"source": "{parsedBody.personalData.person_code}",
"operator": "equals",
"value": "age_check_failed",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Age"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "2-5",
"type": "endNode",
"position": {
"x": 40,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Rejected",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "2-4",
"type": "endNode",
"position": {
"x": 40,
"y": -220
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
},
{
"id": "1-9",
"type": "modifyFieldNode",
"position": {
"x": 120,
"y": 300
},
"data": {
"formData": {
"active": true,
"title": "Reject reason · Post",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.data.status}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "1-11",
"type": "endNode",
"position": {
"x": 300,
"y": 300
},
"data": {
"formData": {
"active": true,
"title": "Rejected · Post",
"subtitle": "",
"success": "failed"
}
}
}
],
"edges": [
{
"id": "edge-1-1-1-2",
"source": "1-1",
"target": "1-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-1-2-2",
"source": "2-1",
"target": "2-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-2-1-3",
"source": "1-2",
"target": "1-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-3-1-4",
"source": "1-3",
"target": "1-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}",
"operator": "regex_match",
"output": "^1$",
"output2": ""
},
{
"value": "{parsedBody.customer_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-1-3-1-5",
"source": "1-3",
"target": "1-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}|{parsedBody.customer_id}",
"operator": "regex_not_match",
"output": "^1\\|[^|]+$",
"output2": ""
},
{
"value": "{parsedBody.err}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-1-4-1-6",
"source": "1-4",
"target": "1-6",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-6-1-8",
"source": "1-6",
"target": "1-8",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "equals",
"output": "success",
"output2": ""
},
{
"value": "{parsedBody.data.credit_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-1-6-1-9",
"source": "1-6",
"target": "1-9",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "is_not_empty",
"output": "",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "regex_not_match",
"output": "^success$",
"output2": ""
}
]
}
},
{
"id": "edge-1-8-1-10",
"source": "1-8",
"target": "1-10",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-5-1-7",
"source": "1-5",
"target": "1-7",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-2-2-3",
"source": "2-2",
"target": "2-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{body}",
"operator": "regex_match",
"output": "(?:\"(?:person_code|email|mob_phone|id_number|account_number)\"\\s*:\\s*\"registered\"|\"customer_id\"\\s*:\\s*(?:\"[^\"]+\"|\\d+)|\"addinfo\"\\s*:\\s*\"(?:Application|Registrator|Klient|Request|Loan|Rejected|Loan creation declined|Registration declined by CSAS|Request declined by CSAS|BadScore|BlackList|BlockList)\"|\"person_code\"\\s*:\\s*\"age_check_failed\")",
"output2": ""
}
]
}
},
{
"id": "edge-2-2-2-4",
"source": "2-2",
"target": "2-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}",
"operator": "regex_match",
"output": "^1$",
"output2": ""
},
{
"value": "{parsedBody.personalData.person_code}",
"operator": "equals",
"output": "notFound",
"output2": ""
},
{
"value": "{parsedBody.personalData.email}",
"operator": "equals",
"output": "notFound",
"output2": ""
},
{
"value": "{parsedBody.personalData.mob_phone}",
"operator": "equals",
"output": "notFound",
"output2": ""
},
{
"value": "{parsedBody.personalData.id_number}",
"operator": "equals",
"output": "notFound",
"output2": ""
},
{
"value": "{parsedBody.personalData.account_number}",
"operator": "equals",
"output": "notFound",
"output2": ""
}
]
}
},
{
"id": "edge-2-3-2-5",
"source": "2-3",
"target": "2-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-9-1-11",
"source": "1-9",
"target": "1-11",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
}
]
}Bueprint for registered customers
{
"nodes": [
{
"id": "1-1",
"type": "startNode",
"position": {
"x": -450,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "post",
"beType": "integration"
}
}
},
{
"id": "2-1",
"type": "startNode",
"position": {
"x": -450,
"y": -150
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "ping",
"beType": "integration"
}
}
},
{
"id": "1-2",
"type": "modifyFieldNode",
"position": {
"x": -300,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "Transform data",
"subtitle": "",
"data": [
{
"fieldName": "{data_requested_amount}",
"fields": [
{
"source": "{data_requested_amount}",
"operator": "is_greater_than",
"value": "30000",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "30000"
}
]
}
]
}
}
},
{
"id": "1-3",
"type": "httpNode",
"position": {
"x": -140,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "Post",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/api/v1.0/credits/application",
"timeout": 30,
"format": null,
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [],
"query": [
{
"key": "amount",
"value": "{data_requested_amount}"
},
{
"key": "apiKey",
"value": "{token}"
},
{
"key": "apiLan",
"value": "cz"
},
{
"key": "period",
"value": "{data_period}"
},
{
"key": "_method",
"value": "post"
},
{
"key": "brokerId",
"value": "{partner_id}"
},
{
"key": "maxAmount",
"value": "30000"
},
{
"key": "customerId",
"value": "{external_id}"
},
{
"key": "account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"body": [],
"signature": null,
"insecure": null
}
}
},
{
"id": "1-4",
"type": "setNode",
"position": {
"x": 20,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{redirect_url}",
"value": "{parsedBody.data.url}"
},
{
"key": "{external_id}",
"value": "{parsedBody.data.credit_id}"
}
]
}
}
},
{
"id": "1-5",
"type": "modifyFieldNode",
"position": {
"x": 20,
"y": 190
},
"data": {
"formData": {
"active": true,
"title": "Reject reason",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.data.status}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "1-7",
"type": "endNode",
"position": {
"x": 200,
"y": 190
},
"data": {
"formData": {
"active": true,
"title": "Rejected",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "1-6",
"type": "endNode",
"position": {
"x": 200,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
},
{
"id": "2-2",
"type": "httpNode",
"position": {
"x": -280,
"y": -150
},
"data": {
"formData": {
"active": true,
"title": "Ping",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/?RPC=agents.checkPersonalData",
"timeout": 30,
"format": "login-data-pass",
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [
{
"key": "Content-type",
"value": "application/x-www-form-urlencoded; charset=UTF-8"
}
],
"query": [],
"body": [
{
"key": "pass",
"value": "{password}"
},
{
"key": "login",
"value": "{username}"
},
{
"key": "data.city",
"value": "{data_city}"
},
{
"key": "data.email",
"value": "{data_email}"
},
{
"key": "data.house",
"value": "{data_house_number}"
},
{
"key": "data.address",
"value": "{data_street}"
},
{
"key": "data.surname",
"value": "{data_last_name}"
},
{
"key": "data.zipcode",
"value": "{data_zip}"
},
{
"key": "data.realname",
"value": "{data_first_name}"
},
{
"key": "data.id_number",
"value": "{data_identity_card_number}"
},
{
"key": "data.mob_phone",
"value": "{data_cell_phone}"
},
{
"key": "data.person_code",
"value": "{data_nin}"
},
{
"key": "data.account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"signature": null,
"insecure": null
}
}
},
{
"id": "2-3",
"type": "setNode",
"position": {
"x": -100,
"y": -220
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{customer_id}",
"value": "{parsedBody.personalData.customer_id}"
},
{
"key": "{external_id}",
"value": "{parsedBody.personalData.customer_id}"
}
]
}
}
},
{
"id": "2-4",
"type": "modifyFieldNode",
"position": {
"x": -100,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Reject reason",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.personalData.person_code}",
"operator": "equals",
"value": "notFound",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Product Mismatch"
},
{
"source": "{parsedBody.personalData.person_code}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.email}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.mob_phone}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.id_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.account_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.customer_id}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Application|Registrator|Klient)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Request|Loan)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Existing Customer"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Rejected",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Loan creation declined",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Registration declined by CSAS|Request declined by CSAS|BadScore)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Poor Credit"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(BlackList|BlockList)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Blacklist"
},
{
"source": "{parsedBody.personalData.person_code}",
"operator": "equals",
"value": "age_check_failed",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Age"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "2-6",
"type": "endNode",
"position": {
"x": 100,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Rejected",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "2-5",
"type": "endNode",
"position": {
"x": 100,
"y": -220
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
}
],
"edges": [
{
"id": "edge-1-1-1-2",
"source": "1-1",
"target": "1-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-1-2-2",
"source": "2-1",
"target": "2-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-2-1-3",
"source": "1-2",
"target": "1-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-3-1-4",
"source": "1-3",
"target": "1-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "equals",
"output": "success",
"output2": ""
},
{
"value": "{parsedBody.data.credit_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-1-3-1-5",
"source": "1-3",
"target": "1-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "is_not_empty",
"output": "",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "regex_not_match",
"output": "^success$",
"output2": ""
}
]
}
},
{
"id": "edge-1-4-1-6",
"source": "1-4",
"target": "1-6",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-5-1-7",
"source": "1-5",
"target": "1-7",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-2-2-3",
"source": "2-2",
"target": "2-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}",
"operator": "regex_match",
"output": "^1$",
"output2": ""
},
{
"value": "{parsedBody.personalData.addinfo}",
"operator": "contains",
"output": "Registrator",
"output2": ""
},
{
"value": "{parsedBody.personalData.customer_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-2-2-2-4",
"source": "2-2",
"target": "2-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}|{parsedBody.personalData.addinfo}|{parsedBody.personalData.customer_id}",
"operator": "regex_not_match",
"output": "^1\\|.*Registrator.*\\|[^|]+$",
"output2": ""
},
{
"value": "{body}",
"operator": "regex_match",
"output": "(?:\"person_code\"\\s*:\\s*\"notFound\"|\"(?:person_code|email|mob_phone|id_number|account_number)\"\\s*:\\s*\"registered\"|\"customer_id\"\\s*:\\s*(?:\"[^\"]+\"|\\d+)|\"addinfo\"\\s*:\\s*\"(?:Application|Registrator|Klient|Request|Loan|Rejected|Loan creation declined|Registration declined by CSAS|Request declined by CSAS|BadScore|BlackList|BlockList)\"|\"person_code\"\\s*:\\s*\"age_check_failed\")",
"output2": ""
}
]
}
},
{
"id": "edge-2-3-2-5",
"source": "2-3",
"target": "2-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-4-2-6",
"source": "2-4",
"target": "2-6",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
}
]
}Blueprint for repeated customers
{
"nodes": [
{
"id": "1-1",
"type": "startNode",
"position": {
"x": -450,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "post",
"beType": "integration"
}
}
},
{
"id": "2-1",
"type": "startNode",
"position": {
"x": -450,
"y": -150
},
"data": {
"formData": {
"active": true,
"title": "",
"subtitle": "",
"flow": "ping",
"beType": "integration"
}
}
},
{
"id": "1-2",
"type": "modifyFieldNode",
"position": {
"x": -300,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "Transform data",
"subtitle": "",
"data": [
{
"fieldName": "{data_requested_amount}",
"fields": [
{
"source": "{data_requested_amount}",
"operator": "is_greater_than",
"value": "30000",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "30000"
}
]
}
]
}
}
},
{
"id": "1-3",
"type": "httpNode",
"position": {
"x": -140,
"y": 130
},
"data": {
"formData": {
"active": true,
"title": "Post",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/api/v1.0/credits/application",
"timeout": 30,
"format": null,
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [],
"query": [
{
"key": "amount",
"value": "{data_requested_amount}"
},
{
"key": "apiKey",
"value": "{token}"
},
{
"key": "apiLan",
"value": "cz"
},
{
"key": "period",
"value": "{data_period}"
},
{
"key": "_method",
"value": "post"
},
{
"key": "brokerId",
"value": "{partner_id}"
},
{
"key": "maxAmount",
"value": "30000"
},
{
"key": "customerId",
"value": "{external_id}"
},
{
"key": "account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"body": [],
"signature": null,
"insecure": null
}
}
},
{
"id": "1-4",
"type": "setNode",
"position": {
"x": 20,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{redirect_url}",
"value": "{parsedBody.data.url}"
},
{
"key": "{external_id}",
"value": "{parsedBody.data.credit_id}"
}
]
}
}
},
{
"id": "1-5",
"type": "modifyFieldNode",
"position": {
"x": 20,
"y": 190
},
"data": {
"formData": {
"active": true,
"title": "Reject reason",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.data.status}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "1-7",
"type": "endNode",
"position": {
"x": 200,
"y": 190
},
"data": {
"formData": {
"active": true,
"title": "Rejected",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "1-6",
"type": "endNode",
"position": {
"x": 200,
"y": 70
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
},
{
"id": "2-2",
"type": "httpNode",
"position": {
"x": -280,
"y": -150
},
"data": {
"formData": {
"active": true,
"title": "Ping",
"subtitle": "",
"method": "POST",
"endpoint": "{endpoint}/?RPC=agents.checkPersonalData",
"timeout": 30,
"format": "login-data-pass",
"parser": "json",
"notsend": null,
"convert_data": null,
"headers": [
{
"key": "Content-type",
"value": "application/x-www-form-urlencoded; charset=UTF-8"
}
],
"query": [],
"body": [
{
"key": "pass",
"value": "{password}"
},
{
"key": "login",
"value": "{username}"
},
{
"key": "data.city",
"value": "{data_city}"
},
{
"key": "data.email",
"value": "{data_email}"
},
{
"key": "data.house",
"value": "{data_house_number}"
},
{
"key": "data.address",
"value": "{data_street}"
},
{
"key": "data.surname",
"value": "{data_last_name}"
},
{
"key": "data.zipcode",
"value": "{data_zip}"
},
{
"key": "data.realname",
"value": "{data_first_name}"
},
{
"key": "data.id_number",
"value": "{data_identity_card_number}"
},
{
"key": "data.mob_phone",
"value": "{data_cell_phone}"
},
{
"key": "data.person_code",
"value": "{data_nin}"
},
{
"key": "data.account_number",
"value": "{data_account_number}/{data_bank_code}"
}
],
"signature": null,
"insecure": null
}
}
},
{
"id": "2-3",
"type": "setNode",
"position": {
"x": -100,
"y": -220
},
"data": {
"formData": {
"active": true,
"title": "Store response",
"subtitle": "",
"fields": [
{
"key": "{customer_id}",
"value": "{parsedBody.personalData.customer_id}"
},
{
"key": "{external_id}",
"value": "{parsedBody.personalData.customer_id}"
}
]
}
}
},
{
"id": "2-4",
"type": "modifyFieldNode",
"position": {
"x": -100,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Reject reason",
"subtitle": "",
"data": [
{
"fieldName": "{reason}",
"fields": [
{
"source": "{parsedBody.personalData.person_code}",
"operator": "equals",
"value": "notFound",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Product Mismatch"
},
{
"source": "{parsedBody.personalData.person_code}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.email}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.mob_phone}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.id_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.account_number}",
"operator": "contains",
"value": "registered",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.customer_id}",
"operator": "is_not_empty",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Application|Registrator|Klient)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Duplicate"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Request|Loan)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Existing Customer"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Rejected",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "equals",
"value": "Loan creation declined",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Unspecified"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(Registration declined by CSAS|Request declined by CSAS|BadScore)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Poor Credit"
},
{
"source": "{parsedBody.personalData.addinfo}",
"operator": "regex_match",
"value": "^(BlackList|BlockList)$",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Blacklist"
},
{
"source": "{parsedBody.personalData.person_code}",
"operator": "equals",
"value": "age_check_failed",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "Age"
}
]
},
{
"fieldName": "{reason_detail}",
"fields": [
{
"source": "{body}",
"operator": "always",
"value": "",
"value2": "",
"modification": "replace",
"pattern": "",
"output": "{body}"
}
]
}
]
}
}
},
{
"id": "2-6",
"type": "endNode",
"position": {
"x": 100,
"y": -80
},
"data": {
"formData": {
"active": true,
"title": "Rejected",
"subtitle": "",
"success": "failed"
}
}
},
{
"id": "2-5",
"type": "endNode",
"position": {
"x": 100,
"y": -220
},
"data": {
"formData": {
"active": true,
"title": "Success",
"subtitle": "",
"success": "success"
}
}
}
],
"edges": [
{
"id": "edge-1-1-1-2",
"source": "1-1",
"target": "1-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-1-2-2",
"source": "2-1",
"target": "2-2",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-2-1-3",
"source": "1-2",
"target": "1-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-3-1-4",
"source": "1-3",
"target": "1-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "equals",
"output": "success",
"output2": ""
},
{
"value": "{parsedBody.data.credit_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-1-3-1-5",
"source": "1-3",
"target": "1-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "is_not_empty",
"output": "",
"output2": ""
},
{
"value": "{parsedBody.data.status}",
"operator": "regex_not_match",
"output": "^success$",
"output2": ""
}
]
}
},
{
"id": "edge-1-4-1-6",
"source": "1-4",
"target": "1-6",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-1-5-1-7",
"source": "1-5",
"target": "1-7",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-2-2-3",
"source": "2-2",
"target": "2-3",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}",
"operator": "regex_match",
"output": "^1$",
"output2": ""
},
{
"value": "{parsedBody.personalData.addinfo}",
"operator": "contains",
"output": "Klient",
"output2": ""
},
{
"value": "{parsedBody.personalData.customer_id}",
"operator": "is_not_empty",
"output": "",
"output2": ""
}
]
}
},
{
"id": "edge-2-2-2-4",
"source": "2-2",
"target": "2-4",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": [
{
"value": "{status}",
"operator": "equals",
"output": "200",
"output2": ""
},
{
"value": "{parsedBody.ok}|{parsedBody.personalData.addinfo}|{parsedBody.personalData.customer_id}",
"operator": "regex_not_match",
"output": "^1\\|.*Klient.*\\|[^|]+$",
"output2": ""
},
{
"value": "{body}",
"operator": "regex_match",
"output": "(?:\"person_code\"\\s*:\\s*\"notFound\"|\"(?:person_code|email|mob_phone|id_number|account_number)\"\\s*:\\s*\"registered\"|\"customer_id\"\\s*:\\s*(?:\"[^\"]+\"|\\d+)|\"addinfo\"\\s*:\\s*\"(?:Application|Registrator|Klient|Request|Loan|Rejected|Loan creation declined|Registration declined by CSAS|Request declined by CSAS|BadScore|BlackList|BlockList)\"|\"person_code\"\\s*:\\s*\"age_check_failed\")",
"output2": ""
}
]
}
},
{
"id": "edge-2-3-2-5",
"source": "2-3",
"target": "2-5",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
},
{
"id": "edge-2-4-2-6",
"source": "2-4",
"target": "2-6",
"type": "customEdge",
"data": {
"active": true,
"title": "",
"subtitle": "",
"conditions": []
}
}
]
}How it works
- Copy the blueprint and paste it in your PalDock workspace– Create a new integration in your workspace and paste the blueprint. Every field arrives prefilled.
- Enter your credentials – Paste the secrets you received from advertiser and set your Pingtree
- Send a test lead – Verify the response, then switch the channel live.
FAQ
Do I need my own contract with this advertiser?
Yes. PalDock delivers leads on your behalf, so the commercial agreement and API credentials come from the advertiser directly.
What happens to rejected leads?
The advertiser returns its decision in the delivery response. PalDock reads it and moves rejected leads to the next buyer in your pingtree automatically, so a rejection does not need to end the lead’s journey.
Can I change the field mapping?
Yes, but we do not recommend it. Blueprints are already mapped to PalDock’s global fields. If you use local fields, you need to remap each integration separately.
How long does setup take?
Few clicks, if you already have credentials. The blueprint arrives prefilled and mapped to PalDock’s global fields, so if your lead structure uses them, there is nothing to map. If you use local fields, you map them once.
What the integration does
Start sending leads in 3 clicks
Copy the prebuilt blueprint, add your credentials and start sending leads. No coding, no integration work.
Real-time lead delivery
Send leads to the advertiser instantly as they arrive, without exports, batches or manual processing.
No field mapping headache
PalDock global fields work across all prebuilt integrations. Map your lead data once and reuse it everywhere.
Know exactly why leads fail
Get standardized rejection reasons for reporting and advertiser’s response for the full context and troubleshooting.
API & integration details
CreditGO runs on a CreditOnline white-label backend and is split into three client flows: new clients, registered clients (Registrator) and repeated clients (Klient). This page is self-contained: it describes the RPC envelope, the CreditGO-specific customer states and the application rules used by those current flows.
The important distinction is that a successful CreditGO application does not require a redirect URL. Real Klient responses can create a credit with data.status: success and a non-empty credit_id while data.url is empty.
What will be needed from advertiser
| Key | Purpose |
|---|---|
endpoint | CreditOnline tenant API base URL. |
token | Application API key used as apiKey. |
username | RPC login. |
password | RPC password. |
partner_id | Broker identifier sent as brokerId. |
Flows
New clients — Ping, POST /?RPC=agents.checkPersonalData. A genuinely new client is one where every checked identity field is notFound.
New clients — Post, registerClient first, then POST /api/v1.0/credits/application. The customer ID from registration is carried into the application.
Registered clients — Ping, the same check, but success requires addinfo containing Registrator and a non-empty customer_id. Post skips registration and applies directly.
Repeated clients — Ping, success requires addinfo containing Klient and a non-empty customer_id. Post skips registration and applies directly.
Calls
POST {endpoint}/?RPC=agents.checkPersonalData
POST {endpoint}/?RPC=agents.registerClient
POST {endpoint}/api/v1.0/credits/application?…
The RPC calls use format: login-data-pass and Content-Type: application/x-www-form-urlencoded; charset=UTF-8. Their form body has exactly three top-level keys: login, pass and data; the actual advertiser payload is written as data.* fields. All client flows send {username} / {password} as login / pass. Do not build this form envelope manually. The /credits/application call is a plain query-string POST and uses {token} as apiKey and {partner_id} as brokerId.
Response model
checkPersonalData normally answers with HTTP 200 even when the person must be rejected, so HTTP status alone is never the Ping decision. The useful payload is ok plus personalData. The identity fields inside personalData are returned as states such as notFound or registered; addinfo and an optional customer_id describe the advertiser-side customer state. The current flows compare ok with regex match ^1$ because production can return it in a representation that should not be treated as a strict string-only value.
For CreditGO, the client flow matters: new clients accept only an all-notFound person, registered clients accept addinfo containing Registrator, and repeated clients accept addinfo containing Klient. Request and Loan mean an open/existing credit state and are terminal. Scoring and blacklist states are mapped in Outcomes below. Do not import generic CreditOnline states that are not present in the current CreditGO branches.
Authentication failure can itself arrive as HTTP 200 with an err payload and no usable ok/personalData. That is a credentials/technical failure, not a business rejection. The Ping branches explicitly require ok plus the expected customer-state fields, so such a response cannot satisfy them.
registerClient returns a customer_id on success. Any URL from registration is not the final redirect; the conversion happens only on /credits/application. Registration failures use an err payload; only the concrete error texts listed in Outcomes are converted into business reject reasons.
The application response has a top-level status and a nested data object. A created credit is recognised by nested data.status: success plus a non-empty credit_id. data.url may be empty on a valid CreditGO conversion, especially for registered or repeated clients, so the success branch must not require a redirect URL.
Request fields
Ping — all client flows
| Field | Required | Value |
|---|---|---|
realname | yes | {g_name_first} |
surname | yes | {g_name_last} |
email | yes | {g_email} |
mob_phone | yes | {g_phone} |
person_code | yes | {g_id_national_number} |
id_number | yes | {g_id_card_number} |
account_number | yes | {g_bank_account_number}/{g_bank_account_code} |
address | yes | {g_address_street} |
house | yes | {g_address_street_number} |
city | yes | {g_address_city} |
zipcode | yes | {g_address_zip} |
Register client — new clients
The request carries the same identity/address data plus income and consent data. The fields that matter for the current mapping are:
| Field | Required | Value |
|---|---|---|
check_adresa | yes | inverse of the “contact address differs” flag: 1 same, 0 different |
address2, house2, city2, zipcode2 | when different | contact address fields |
other_income | yes | mapped income type, see transforms |
income | yes | {g_fin_income} |
costs | no | {g_fin_expenses} |
workplace | no | {g_employer_name} |
workplace_position | no | {g_employ_position} |
company_code | self-employed | {g_company_registration} |
account_number | yes | {g_bank_account_number}/{g_bank_account_code} |
ip | yes | {ip_address} |
chk3, chk5, chk8, chk9 | yes | consent/AML flags defined by the current blueprint |
Empty optional contact, expenses, employer, company-number and job-title fields are omitted rather than sent empty.
Application
| Parameter | Value |
|---|---|
customerId | customer ID from Ping or registerClient |
amount | capped request amount, max 30000 |
period | {g_period} |
maxAmount | 30000 |
account_number | {g_bank_account_number}/{g_bank_account_code} |
brokerId | {partner_id} |
_method | post |
apiLan | cz |
apiKey | {token} |
Transforms
New clients map income types before registration: full-time → Zaměstnanec, self-employed → OSVČ, parental → Mateřská dovolená, pension → Důchodce, unemployed → Nezaměstnaný.
The “contact address differs” flag is inverted for check_adresa: true/different becomes 0, false/same becomes 1.
Every Post caps {g_amount} at 30000 before the application. Registered and repeated clients only need this cap; they do not run the registration mappings.
Outcomes
| Recognised by | Meaning | Reject reason |
|---|---|---|
all checked identity fields notFound | New clients Ping succeeds | |
addinfo contains Registrator + customer_id | Registered clients Ping succeeds | |
addinfo contains Klient + customer_id | Repeated clients Ping succeeds | |
status: 200, data.status: success, non-empty credit_id | Application created | |
any checked identity field registered, or customer_id, or addinfo: Application/Registrator/Klient in the wrong client flow | Already known / wrong client flow | Duplicate |
addinfo: Request or Loan | Open request or loan | Existing Customer |
addinfo: Registration declined by CSAS, Request declined by CSAS, BadScore | Scoring refusal | Poor Credit |
addinfo: BlackList or BlockList | Blocked client | Blacklist |
person_code: age_check_failed | Age check failed | Age |
addinfo: Loan creation declined or Rejected | Refused without a usable reason | Unspecified |
all-notFound person in the registered or repeated clients flow | Wrong client state | Product Mismatch |
non-success data.status at application | Business refusal | Unspecified |
Technical non-200 responses are intentionally not converted into business rejects. {reason_detail} should carry the raw {body}.
Branching
New clients Ping:
{status} equals 200
{parsedBody.ok} regex match ^1$
{parsedBody.personalData.person_code} equals notFound
{parsedBody.personalData.email} equals notFound
{parsedBody.personalData.mob_phone} equals notFound
{parsedBody.personalData.id_number} equals notFound
{parsedBody.personalData.account_number} equals notFound
Registered clients Ping:
{status} equals 200
{parsedBody.ok} regex match ^1$
{parsedBody.personalData.addinfo} contains Registrator
{parsedBody.personalData.customer_id} is not empty
Repeated clients are identical except for contains Klient.
Application success, all client flows:
{status} equals 200
{parsedBody.status} equals 200
{parsedBody.data.status} equals success
{parsedBody.data.credit_id} is not empty
Do not add data.url is not empty to that success condition.
Stored values
| Parameter | Source |
|---|---|
{customer_id} / temporary {external_id} | customer_id from Ping or registration |
{external_id} | {parsedBody.data.credit_id} after the application |
{redirect_url} | {parsedBody.data.url} when returned |
Advertiser APIs change without warning
When they do, leads stop being delivered, often before anyone notices. PalDock gives you delivery logs and alerts so you can catch it early. With Managed Integrations, we watch the connection and fix it for you.
