Partner API — v2.7.0
Type: Minor Release · Previous version: v2.6.0
✅ New Endpoints
GET /reconcile
Tag: chaincore
Summary: fetch reconciliation logs
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
startDate |
string | No | Start Date |
endDate |
string | No | End Date |
reconciliationLogId |
string | No | Reconciliation Log Id |
Response Codes
| Code | Description |
|---|---|
| 200 | — |
GET /tenant/customer/customer-full-details/{customerAccountId}
Tag: Tenant Customers
Summary: API Version V2.0.0 | Fetch details of a customer using customer account id
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
customerAccountId |
string | Yes | Customer Account Id |
Response Codes
| Code | Description |
|---|---|
| 200 | will fetch the tenant customer details successfully |
| 400 | Bad request response if tenant customer detail fetching get failed |
| 404 | will give you the error response when it unable find any data related to the given customer account id |
200 — will fetch the tenant customer details successfully
{
"message": "Customer details fetched successfully",
"data": [
{
"customerAccountId": "c8abc8ff-8c56-4231-9e55-aaca9698a3d7",
"domainNamespace": "ul-ledger.user.ul",
"customNamespace": "esstech.ul",
"namespaceProvider": "msv",
"tenantName": "Prod Uled",
"firstName": "amber",
"middleName": "donald",
"lastName": "wenny",
"taxIdNumber": "122-22-2332",
"ssn": "ssn",
"phoneNumber": "+15417543010",
"dateOfBirth": "1997-04-02",
"address": {
"city": "Lorem",
"state": "KY",
"address1": "address1 ",
"country": "BO",
"postalCode": "Lorem",
"isoCountryCode": "US"
},
"latLong": {
"lat_long_data": "Lorem",
"lat_long_country": "US",
"lat_long_city": "address1"
},
"email": "amber.wenny@mail.com",
"accountAddress": "0x3107259fa40121c259e524042b30326fd9625516",
"kycStatus": "PENDING",
"fundingStatus": "ACCEPTED",
"complianceStatus": "ACCEPTED",
"accountStatus": "ACTIVE",
"customerAccountCategory": "bronze",
"documents": [
{
"fileName": "idcard.png",
"side": "front",
"type": "DriversLicense",
"number": "12346",
"expired": false,
"description": "national id card of user",
"issuedCountry": "INDIA",
"validFromDate": "2012-12-12",
"validTillDate": "2012-02-02",
"documentId": "da403219-eabe-4dd3-b26e-afc6782e47f7"
},
{
"fileName": "idcard.png",
"side": "front",
"type": "Passport ",
"number": "123458",
"expired": false,
"description": "national id card of user",
"issuedCountry": "INDIA",
"validFromDate": "2012-12-12",
"validTillDate": "2012-02-02",
"documentId": "8a63293f-41a5-4046-8362-0bd59b36767d"
},
{
"fileName": "Selfie.png",
"side": "front",
"type": "Selfie",
"number": "",
"expired": false,
"description": "selfie of user",
"issuedCountry": "",
"validFromDate": "",
"validTillDate": "",
"documentId": "799d0c23-ed89-4c8e-b79b-ef37a72437af"
}
],
"tenant_customer_notes": [
{
"tenantCustomerNoteId": "e616b6b2-2560-4b4e-9341-2fc0c902d519",
"customerAccountId": "ee215d4b-7a3c-441e-8479-015b782c4510",
"comment": "Raising dispute",
"attachment": {},
"createdBy": null
}
],
"wallets": [
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle1.ul",
"accountAddress": "0x3107259fa40121C259W524042b31386fD9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink004",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle2.ul",
"accountAddress": "0x3107259fa40121C259E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink005",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle3.ul",
"accountAddress": "0x3107259fa40121C258W524042b31386fD9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1004",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle4.ul",
"accountAddress": "0x3107259fa40121C255E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1005",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle5.ul",
"accountAddress": "0x3107259fa40121C245E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1006",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle6.ul",
"accountAddress": "0x3107259fa40121C245E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink100a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle7.ul",
"accountAddress": "0x3107259fa40121C24d5E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwinkv100a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle8.ul",
"accountAddress": "0x3107259fa40121C2sg4d5E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwingkv10s0a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universall.ul",
"accountAddress": "0x3107259fa40121c259e124042b31386fd9625228",
"isGlobal": false,
"isPrimary": true,
"customNamespace": null,
"namespaceProvider": null
}
],
"idBadgeLogs": [
{
"badgeId": "3555f7b6-3aab-45ef-8bc5-aacd1662883b",
"customerAccountId": "626e33d3-4c39-4295-a9b9-7edc67265709",
"createdAt": "2024-05-13T10:51:20.0000000+00:00",
"updatedAt": "2024-05-13T10:51:20.0000000+00:00",
"badgeName": "Silver",
"badgeType": "IDENTIFICATION",
"IdBadgeTokens": [
{
"publicId": "3ad12b56-2ab1-4a6b-a915-2c09cd4b58d0",
"identificationBadgeId": "3555f7b6-3aab-45ef-8bc5-aacd1662883b",
"financialBadgeId": "51262735-12b0-4493-9f93-6ecbfa81b51e",
"tokenSymbol": "DTX",
"financialBadgeName": "LowIncome"
}
]
},
{
"badgeId": "23fce70e-9106-463f-a45f-4e350ec8cb70",
"customerAccountId": "626e33d3-4c39-4295-a9b9-7edc67265709",
"createdAt": "2024-05-13T10:47:34.0000000+00:00",
"updatedAt": "2024-05-13T10:47:34.0000000+00:00",
"badgeName": "Bronze",
"badgeType": "IDENTIFICATION",
"IdBadgeTokens": []
}
],
"infoBadge": [
{
"informationBadgeId": "833d12ae-4a83-4cbf-8e1a-55bc79ea412c",
"customerAccountId": "975ab1fe-001e-4bd3-b897-fa0bf9d95af9",
"createdAt": "2024-05-06T01:45:34.0000000+00:00",
"updatedAt": "2024-05-06T01:45:34.0000000+00:00",
"badgeName": "TestBadge",
"badgeType": "INFORMATION"
}
]
}
]
}
400 — Bad request response if tenant customer detail fetching get failed
{
"errors": [
{
"type": "catch",
"message": "error[1]"
},
{
"type": "catch",
"message": "err.message"
}
]
}
404 — will give you the error response when it unable find any data related to the given customer account id
{
"errors": [
{
"type": "No data found",
"message": "No data found for tenant"
},
{
"type": "No data available",
"message": "There is no such customer account in the given tenant id"
}
]
}
POST /reconcile
Tag: chaincore
Summary: reconcile transactions
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
lastBlockProcessed |
string | No | Last Processed Block |
Response Codes
| Code | Description |
|---|---|
| 201 | — |
✏️ Modified Endpoints
GET /tenant/customer/customer-details
Tag: Tenant Customers
Summary: Fetch details of a customer using either user-namespace, account-address, customer-name or custom-namespace
Added Query Params
| Parameter | Type | Description |
|---|---|---|
phoneNumber |
string | Customer phone number |
Deprecated Query Params
None
Response Examples
| Code | Description |
|---|---|
| 200 | will fetch the tenant customer details successfully |
| 400 | Bad request response if tenant customer detail fetching get failed |
| 404 | will give you the error response when it don't find any data related the given user-namespace, account-address, customer-name or custom-namespace |
200 — will fetch the tenant customer details successfully
{
"message": "Customer details fetched successfully",
"data": [
{
"domainNamespace": "ul-ledger.user.ul",
"customNamespace": "esstech.ul",
"namespaceProvider": "msv",
"tenantName": "Prod Uled",
"firstName": "amber",
"middleName": "donald",
"lastName": "wenny",
"taxIdNumber": "122-22-2332",
"ssn": "ssn",
"phoneNumber": "+15417543010",
"dateOfBirth": "1997-04-02",
"address": {
"city": "Lorem",
"state": "KY",
"address1": "address1 ",
"country": "BO",
"postalCode": "Lorem",
"isoCountryCode": "US"
},
"latLong": {
"lat_long_data": "Lorem",
"lat_long_country": "US",
"lat_long_city": "address1"
},
"email": "amber.wenny@mail.com",
"accountAddress": "0x3107259fa40121c259e524042b30326fd9625516",
"kycStatus": "PENDING",
"fundingStatus": "ACCEPTED",
"complianceStatus": "ACCEPTED",
"accountStatus": "ACTIVE",
"customerAccountCategory": "bronze",
"wallets": [
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle1.ul",
"accountAddress": "0x3107259fa40121C259W524042b31386fD9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink004",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle2.ul",
"accountAddress": "0x3107259fa40121C259E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink005",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle3.ul",
"accountAddress": "0x3107259fa40121C258W524042b31386fD9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1004",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle4.ul",
"accountAddress": "0x3107259fa40121C255E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1005",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle5.ul",
"accountAddress": "0x3107259fa40121C245E524042b31386fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink1006",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle6.ul",
"accountAddress": "0x3107259fa40121C245E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwink100a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle7.ul",
"accountAddress": "0x3107259fa40121C24d5E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwinkv100a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universalle8.ul",
"accountAddress": "0x3107259fa40121C2sg4d5E524042b3138c6fS9625228",
"isGlobal": false,
"isPrimary": false,
"customNamespace": "johnwingkv10s0a6",
"namespaceProvider": "ens"
},
{
"tenantName": "globalIdInc3",
"domainNamespace": "globalidinc3.universall.ul",
"accountAddress": "0x3107259fa40121c259e124042b31386fd9625228",
"isGlobal": false,
"isPrimary": true,
"customNamespace": null,
"namespaceProvider": null
}
],
"PEPScreeningPassed": "Pending",
"geographyScreening": "string",
"locationConfidenceScore": "string",
"nameScreening": "string",
"overallComplianceStatus": "string"
}
]
}
400 — Bad request response if tenant customer detail fetching get failed
{
"errors": [
{
"type": "More value",
"message": "Please provide only one value"
},
{
"type": "No value",
"message": "Please provide any one value"
},
{
"type": "No value",
"message": "Please provide valid tenant id"
},
{
"type": "No data found",
"message": "No data found"
},
{
"type": "catch",
"message": "error[1]"
},
{
"type": "catch",
"message": "err.message"
}
]
}
404 — will give you the error response when it don't find any data related the given user-namespace, account-address, customer-name or custom-namespace