Skip to main content

KYC - COP (Fiat)

To operate COP fiat (Colombian Peso) with Avenia, the user must complete COP KYC in addition to standard identity verification.

info

KYC Level 1 must be completed and approved before you can request COP KYC. Complete Level 1 first using the KYC Level 1 guide.

You can request COP KYC from the Avenia dashboard or via the API described below.

The status lifecycle of a COP KYC attempt is the same as for KYC Level 1 (for example PENDING, PROCESSING, COMPLETED, with result APPROVED or REJECTED). Track progress with List All KYC Attempts and Get KYC Attempt by ID in the KYC Level 1 guide. If webhooks are enabled for your account, you will receive the same KYC event types as for other KYC flows.

info

COP KYC is processed by Mural Pay, our COP fiat rail provider. When approval completes, the user's COP rail is unlocked and they can create COP payins / payouts via the Operations endpoints.


Request COP KYC via API

Use this endpoint to start a COP KYC request programmatically. No request body is required.

HTTP POST Request

https://api.sandbox.avenia.io:10952/v2/kyc/cop/api

Query parameters

ParameterTypeRequiredDescription
subAccountIdstringNoWhen requesting COP KYC for a subaccount, pass the subaccount ID as a query parameter.

cURL Example (main account)

curl -X POST "https://api.sandbox.avenia.io:10952/v2/kyc/cop/api" \
-H "Authorization: Bearer eyJhdXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

cURL Example (subaccount)

curl -X POST "https://api.sandbox.avenia.io:10952/v2/kyc/cop/api?subAccountId=1ee0a663-922b-4389-9f84-074ccff7085d" \
-H "Authorization: Bearer eyJhdXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
tip

For subaccounts, the same subAccountId query parameter pattern applies when listing or fetching KYC attempts for that user.

Response

201 Created with a JSON body identifying the KYC attempt. Poll the attempt via the Level 1 endpoints to watch the status transition to COMPLETED / APPROVED.


Scenarios

The endpoint is idempotent per user and adapts to the current Mural KYC state:

Current state for this userWhat happens on POST /v2/kyc/cop/api
No Mural KYC yetA new Mural organization is created, KYC documents from Level 1 are submitted to Mural, and a new KYC attempt is returned. You will receive KYC_STARTED → KYC_PROCESSING → KYC_COMPLETED webhooks.
Mural KYC already approved (e.g. user previously passed for ARS or MXN)Skips the Mural round-trip, enables the COP rail immediately, and emits the full KYC_STARTED → KYC_PROCESSING → KYC_COMPLETED (APPROVED) webhook lifecycle so the client experience is identical.
Mural KYC pending (still awaiting Mural verification)Registers the COP currency as part of the in-flight workflow and returns the attempt ID. Approval webhooks fire when Mural finishes.