Overview
For business users, Mexican regulation (art. 95 Bis LGOAAC) requires every Ultimate Beneficial Owner (UBO) — anyone with significant ownership or control over the business — to sign a cédula, a beneficial-owner declaration. Capa generates this document, hosts the digital signature session, and tracks its status per owner. This applies specifically to cross-ramp transactions in MXN: a business user cannot create a cross-ramp transaction involving MXN until every UBO on record has signed their cédula.This requirement is rolled out per environment. If your account doesn’t yet require it, Request Beneficial Owner Signatures and Get Beneficial Owner Signature Status still work — signatures collected ahead of time are honored once enforcement is turned on for your account.
When Is It Required?
A cross-ramp transaction is blocked until every UBO has signed when all of the following hold:- The user is of type
BUSINESS. - The cross-ramp involves MXN as either the source or target currency.
INDIVIDUAL, this requirement doesn’t apply and cross-ramp creation proceeds normally.
Integration Flow
1
Create the business user and complete KYB
Create User with
type: "BUSINESS", then complete KYB verification for country: "MX"2
Register each beneficial owner
Make sure every UBO is on record as an associated person with
UBO included in roles and a valid email set3
Request the cédula signatures
Request Beneficial Owner Signatures with
country: "MX". Capa returns a signingUrl per owner.4
Deliver each signingUrl to its owner
Capa does not email the owners — share each
signingUrl with the corresponding UBO through your own channel (email, SMS, in-app).5
Track completion
Poll Get Beneficial Owner Signature Status, or listen for the
DOCUMENT_SIGNED webhook, until every UBO shows SIGNED6
Create the cross-ramp
Create Cross-Ramp now succeeds for MXN
Beneficial Owners (Associated Persons)
A UBO is any associated person recorded for the business whoseroles includes UBO. Only people with this role are asked to sign a cédula — other roles (LEGAL_REP, SIGNER, CONTROL_PERSON, RESOURCE_PROVIDER) are not.
Every UBO must have an
email set — Capa’s signature provider uses it to identify the signer, and there is no fallback to a shared business email. Whether someone counts as a UBO is entirely determined by whether UBO is included in their roles; there is no ownership-percentage threshold enforced by the API.Requesting Signatures
Call Request Beneficial Owner Signatures to generate a cédula signing link for everyUBO-role associated person who doesn’t already have one:
- MX only.
countrymust beMX. - Idempotent. An owner with an already-
PENDINGorSIGNEDcédula is left alone — calling this again never issues a second link for the same person. This makes it safe to call after adding a new UBO: only the new owner gets a fresh link. - Per-owner failures don’t block the batch. A business must have at least one UBO on record (and no more than 25 in a single call); beyond that, an individual owner missing an
emailshows up as anerrorin the response rather than failing the whole request. - The business must already be KYB-verified for MX.
- Capa sends no email or SMS. Your integration is responsible for delivering each
signingUrlto its owner, and for treating it as sensitive — whoever holds the link can sign as that person.
Checking Signature Status
Poll Get Beneficial Owner Signature Status to check progress:UBO-role associated person on record — including any who were never sent a cédula, whose entry simply carries no status. This keeps a “short list” from being mistaken for completion after a new owner is added.
The cross-ramp requirement is satisfied once every UBO on record reports
SIGNED.
Enforcement on Cross-Ramp
Create Cross-Ramp rejects the request if any UBO signature is still outstanding for an MXN cross-ramp:
If you see this error, call Get Beneficial Owner Signature Status to see which owner(s) are still pending, and make sure they’ve received their
signingUrl.
Webhook Notification
When a UBO signs their cédula, Capa sends a webhook notification once the signature is confirmed:JSON
This event fires once per signature — a redelivered or duplicate provider webhook onto an already-
SIGNED record does not re-fire it. As with all Capa webhooks, ensure your Webhook Settings are configured to receive it, and treat Get Beneficial Owner Signature Status as the source of truth if a webhook is ever missed — see How Our Webhooks Work.