SwiftGoma.SwiftGoma

Search endpoints

Jump to any API endpoint by name, method, or path

Seller KYC

Submit KYC

POST/api/v1/seller/kyc

Submits identity verification documents for the seller's profile — one submission per profile, ever. The seller's phone must already be verified and they must have at least one verified email.

Requires Authorization
SELLER only
Authenticated action

Form fields

idDocumentTypestringrequired
NATIONAL_ID, VOTER_CARD, or PASSPORT.
idDocumentfilerequired
Image or PDF.
proofOfAddressfilerequired
Image or PDF.
selfiefilerequired
Image only — no PDF.
rccmNumberstring
Business registration number. Must be provided together with rccmDocument, or not at all.
rccmDocumentfile
Image or PDF.

Possible errors

403FORBIDDENVotre numéro de téléphone doit être vérifié avant de soumettre un dossier KYC.
409CONFLICTUn dossier KYC existe déjà pour ce profil vendeur. Utilisez la resoumission à la place.
Request
curl --request POST \
  --url https://api.swiftgoma.com/api/v1/seller/kyc \
  --header 'Authorization: Bearer <access_token>' \
  --form 'idDocumentType=<idDocumentType>' \
  --form 'idDocument=@/path/to/file.jpg' \
  --form 'proofOfAddress=@/path/to/file.jpg' \
  --form 'selfie=@/path/to/file.jpg' \
  --form 'rccmNumber=<rccmNumber>' \
  --form 'rccmDocument=@/path/to/file.jpg'
201Example response
{
  "success": true,
  "data": {
    "id": "kyc_8f1e2a",
    "sellerProfileId": "sp_2b3c4d",
    "idDocumentType": "NATIONAL_ID",
    "idDocumentUrl": "https://res.cloudinary.com/dx3wclabo/image/upload/v1/kyc/id-aline.jpg",
    "proofOfAddressUrl": "https://res.cloudinary.com/dx3wclabo/image/upload/v1/kyc/address-aline.jpg",
    "selfieUrl": "https://res.cloudinary.com/dx3wclabo/image/upload/v1/kyc/selfie-aline.jpg",
    "rccmNumber": null,
    "rccmDocumentUrl": null,
    "status": "PENDING",
    "createdAt": "2026-01-06T09:00:00.000Z"
  }
}