Endorsements
Endorsements represent an approval of a customer to onboard and transact with Bridge.
To onboard a customer and enable them to take actions on Bridge, the customer must provide their KYC information and accept the terms of service for the required endorsement type.
Endorsement Types
There are currently two different endorsements you can obtain for your customer. The type of endorsement you need for your customer depends on the region of residence and which fiat rails they're intending to utilize.
Base Endorsement
Currently, the base
endorsement represents approval of a customer to onboard and transact with all available payment rails except SEPA/Euro. To obtain a base endorsement, you must meet KYC Information and Terms of Service (ToS) requirements.
KYC Information
The first component is providing Bridge with the necessary KYC information from the customer by following a developer provided KYC Link.
To create a KYC Link, use the following endpoint:
curl --location --request POST 'https://api.bridge.xyz/v0/kyc_links' \
--header 'Content-Type: application/json' \
--header 'Api-Key: <API Key>' \
--header 'Idempotency-Key: <generate a uuid>' \
--data-raw '{
"full_name": "John Doe",
"email": "johndoe@johndoe.com",
"type": "individual", // or "business",
"endorsement": "base"
}'
Terms of Service
The second component is obtaining terms of service acceptance from your customer. This is accomplished by providing your customer with a Terms of Service Link for them to follow.
Use this endpoint to request a URL and reference our ToS Links API
SEPA Endorsement
The sepa
endorsement represents approval of using SEPA/Euro services offered by Bridge.
KYC Information
The first component is providing Bridge with the necessary KYC information from the customer by following a developer provided KYC Link for new customers and Per-customer KYC Link for existing customers.
Terms of Service
The second component is obtaining terms of service acceptance from your customer. This is accomplished by providing your customer with a Terms of Service Link for them to follow
Endorsement requirements
The customer object contains an endorsements attribute, where each endorsement will includes a requirements object. Developers can use it to get a comprehensive view into the status of endorsements, detailing which requirements are:
✅ Complete: Items that are already fulfilled.
⏳ Pending: Items received and are being reviewed internally.
🔍 Missing: Required items that are not yet pending or complete.
❗️ Issues: The required information has been received, but there are outside factors that will not allow us to approve the endorsement.
How It Works
The requirements object will provide a summary of the endorsement’s status, allowing developers to clearly identify which fields require action. For example, developers can now determine missing fields such as Proof of Address or Terms of Service acceptance.
Examples
The following is an example of a customer who requested both Base and SEPA.
{
"endorsements": [
{
"name": "base",
"status": "incomplete",
"requirements": {
"complete": [
"first_name",
"last_name",
"tax_identification_number",
"email_address",
"date_of_birth",
"accepted_risk_region",
"address_of_residence"
],
"pending": [],
"missing": {
"all_of": [
"terms_of_service_v1",
"sanctions_screen"
]
},
"issues": []
},
},
{
"name": "sepa",
"status": "incomplete",
"requirements": {
"complete": [
"first_name",
"last_name",
"tax_identification_number",
"email_address",
"date_of_birth",
"accepted_risk_region",
"address_of_residence"
],
"pending": [],
"missing": {
"all_of": [
"terms_of_service_v2",
"proof_of_address",
"sanctions_screen"
]
},
"issues": []
},
},
]
}
The following is an example of a customer who has fulfilled the requirements for Base, but have outstanding issues on their account preventing them from having the endorsement approved.
{
"endorsements": [
{
"name": "base",
"status": "incomplete",
"requirements": {
"complete": [
"first_name",
"last_name",
"tax_identification_number",
"email_address",
"date_of_birth",
"accepted_risk_region",
"address_of_residence",
"terms_of_service_v1",
"sanctions_screen",
],
"pending": [],
"missing": nil,
"issues": ["endorsement_not_available_in_customers_region"]
}
},
]
}
Updated 25 days ago