Artha API
  1. Cards
  • Introduction
  • Authentication
  • KYC/KYB Requirements
  • API Setup Guide
  • Customers
    • Create Customer
      POST
    • List Customers
      GET
    • Get Customer
      GET
    • Update Customer
      PATCH
  • Cards
    • Submit KYC/KYB Applicant
      POST
    • Issue Card
      POST
    • Cards List
      GET
    • Get Card
      GET
    • Get Sensitive Card Details
      GET
  • Card Operations
    • Activate Card
      POST
    • Freeze Card
      POST
    • Unfreeze Card
      POST
    • Cancel Card
      POST
    • Replace Card
      POST
    • Set / Reset Card PIN
      POST
    • Get Card Limits
      GET
    • Update Card Limits
      POST
  • Funding
    • Top Up Card
      POST
    • Get Card Balance
      GET
    • List Top-Up History
      GET
  • Transactions
    • List All Transactions
      GET
    • List Card Transactions
      GET
    • List Customer Transactions
      GET
    • Get Transaction
      GET
  • Products
    • List Products
    • Get Product
  • Utilities
    • Upload Documents
  • Webhook's
    • Webhooks
  1. Cards

Submit KYC/KYB Applicant

POST
{{baseUrl}}/api/v1/customers/{customerId}/products/{productId}/applicant
Submit KYC (individual) or KYB (business) verification details for a customer.
Prerequisites:
1.
Call GET /ext/api/v1/Products/{productId} to check which KYC requirements apply for the product
2.
Upload required documents via POST /api/v1/uploadfile and save the returned file URLs
3.
Submit this endpoint with the required fields and uploaded file URLs
For individuals — send the kycDetails object
For businesses — send the kybDetails object (company + personal details + UBOs + representatives + directors)
📎 All file fields (documents, selfies, signatures) must contain URLs returned from the POST /api/v1/uploadfile endpoint.

📋 Request Body Fields#

Individual KYC (kycDetails object)
FieldTypeDescriptionNotes
customerIdstring (uuid)Customer identifierRequired
firstNamestringFirst nameRequired for FullName
lastNamestringLast nameRequired for FullName
genderstringGender: male, female, otherRequired for FullName
dobstringDate of birth (YYYY-MM-DD)Required for FullName
emailstringEmail addressRequired for Comms
mobileCodestringCountry dialing code (e.g., +44)Required for Comms
mobilestringMobile numberRequired for Comms
addressLine1stringAddress line 1Required for Address/FullAddress
addressLine2stringAddress line 2nullable
citystringCityRequired for FullAddress
statestringState or regionnullable
postalCodestringPostal / ZIP codeRequired for FullAddress
countrystringCountry code (ISO 3166-1 alpha-2)Required for FullAddress
townstringTownnullable
idTypestringID document type (e.g., passport, national_id)Required for Passport/IdTypes
idNumberstringID document numberRequired for Passport/IdTypes
profilePicFrontstring📎 URL of front ID documentRequired for Passport/IdTypes
profilePicBackstring📎 URL of back ID documentRequired for Passport/IdTypes
docExpiryDatestringDocument expiry dateRequired for Passport
docIssueDatestringDocument issue dateRequired for IssueDate
faceImagestring📎 URL of face/selfie photoRequired for Face
signaturestring📎 URL of signature imageRequired for Sign
biometricstring📎 URL of biometric dataRequired for Biomatric
handHoldingIDPhotostring📎 URL of hand-holding ID photoRequired for HandedPassport
emergencyContactNamestringEmergency contact nameRequired for EmergencyContact
occupationstringOccupationRequired for FinancialProfile
accountPurposestringPurpose of accountRequired for FinancialProfile
annualSalarynumberAnnual salaryRequired for FinancialProfile
expectedMonthlyVolumenumberExpected monthly volumeRequired for FinancialProfile
ipAddressstringApplicant's IP addressRequired for IpAddress
Business KYB (kybDetails object) — see Examples tab for full structure with company, personaldetails, ubos[], representatives[], directors[].

📤 Response#

StatusDescription
200KYC/KYB submitted successfully
404Customer not found
422Validation error — missing or invalid required fields

Request

Path Params

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
KYC/KYB submitted successfully.
Body

🟠401
🟠404
🟠422
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location -g --request POST '{{baseUrl}}/api/v1/customers//products//applicant' \
--header 'X-API-Key;' \
--header 'X-Signature;' \
--header 'X-Timestamp;' \
--header 'X-Nonce;' \
--header 'X-Body-Hash;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kycDetails": {
        "customerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "firstName": "Jane",
        "lastName": "Doe",
        "gender": "female",
        "dob": "1990-06-15",
        "email": "jane@example.com",
        "mobileCode": "+44",
        "mobile": "7700900000",
        "addressLine1": "10 Downing Street",
        "addressLine2": "Flat 2",
        "city": "London",
        "state": "England",
        "postalCode": "SW1A 2AA",
        "country": "GB",
        "addressCountry": "GB",
        "town": "Westminster",
        "idType": "passport",
        "idNumber": "AB1234567",
        "profilePicFront": "https://storage.blob.core.windows.net/docs/passport_front.jpg",
        "profilePicBack": "https://storage.blob.core.windows.net/docs/passport_back.jpg",
        "docExpiryDate": "2030-01-01",
        "docIssueDate": "2020-01-01",
        "faceImage": "https://storage.blob.core.windows.net/docs/selfie.jpg",
        "signature": "https://storage.blob.core.windows.net/docs/signature.png",
        "handHoldingIDPhoto": "https://storage.blob.core.windows.net/docs/hand_hold.jpg",
        "occupation": "software_engineer",
        "accountPurpose": "personal_spending",
        "annualSalary": 75000,
        "expectedMonthlyVolume": 5000,
        "ipAddress": "192.168.1.1"
    }
}'
Response Response Example
200 - Example 1
{}
Modified at 2026-02-18 17:18:50
Previous
Update Customer
Next
Issue Card
Built with