Get Customer Info Request
Request for retrieving customer KYC information and status from a SEP-12 anchor.
Used to check what information an anchor requires for a customer, or to verify the current status of a customer's KYC process. This endpoint serves two purposes:
Discover required fields for new customers
Check KYC status for existing customers
Customer identification methods:
Use id if you have a customer ID from a previous registration
Use JWT sub value for account identification (recommended)
Use account and memo/memoType for backwards compatibility
Use transactionId when KYC requirements depend on transaction details
Example - Check required fields for new customer:
val request = GetCustomerInfoRequest(
jwt = authToken,
account = userAccountId,
type = "sep31-sender"
)
val response = kycService.getCustomerInfo(request)
if (response.status == CustomerStatus.NEEDS_INFO) {
println("Required fields: ${response.fields?.keys}")
}Example - Check existing customer status:
val request = GetCustomerInfoRequest(
jwt = authToken,
id = customerId
)
val response = kycService.getCustomerInfo(request)
println("Status: ${response.status}")Example - With transaction context:
val request = GetCustomerInfoRequest(
jwt = authToken,
id = customerId,
transactionId = "abc123",
type = "sep6-deposit"
)
val response = kycService.getCustomerInfo(request)
// May require additional fields based on transaction amountExample - Shared account with memo:
val request = GetCustomerInfoRequest(
jwt = authToken,
account = sharedAccountId,
memo = "user_12345",
memoType = "id"
)See also:
GetCustomerInfoResponse for response details
CustomerStatus for possible status values