Case 2: Originator and Beneficiary are the Same
A case where the Travel Rule triggers.
The receiving entity is a VASP, not Bitso, and the funds recipient is the same as the sender. That is, you are sending money to an account of your own, and the holder's name of both accounts must coincide entirely. As in Case 1, the withdrawal request body varies depending on whether the beneficiary is uncreated, created without Travel Rule information declared, or created with Travel Rule information already declared.
Uncreated Beneficiary
The following objects show the general structure of the request body and exemplify its use. The request body includes the same key-value pairs of transactions under 1,000 euros providing the beneficiary's address, but it adds a compliance object that contains only the recipient VASP's data (DID).
{
"compliance": {
"travel_rule": {
"vasp": {
"did": "did:ethr:0x4cd9136034d9a63d855391fce6dba64021530b01"
}
}
}
# … same transaction data as withdrawals under 1,000 euros
}{
"amount": "amount ≥ 1,000 euros",
"currency": "xrp",
"method": "rp",
"origin_id": "android-cffbb40c5900c395d9244ed5",
"network": "rp",
"protocol": "ripple",
"asset": "xrp",
"address": "destination address",
"destination_tag": "5403767",
"max_fee": "0.15538100",
"compliance": {
"travel_rule": {
"vasp": {
"did": "did:ethr:0x401c4bc0241bc787f64510f21a4ae7ec3603487c"
}
}
}
}{
"amount": "amount ≥ 1,000 euros",
"currency": "btc",
"method": "btc",
"origin_id": "android-cffbb40c5900c395d9244ed5",
"network": "btc",
"protocol": "btc",
"asset": "btc",
"address": "destination address",
"max_fee": "0.15538100",
"compliance": {
"travel_rule": {
"vasp": {
"did": "did:ethr:0x401c4bc0241bc787f64510f21a4ae7ec3603487c"
}
}
}
}Created Beneficiary without Travel Rule Information Declared
In the first transaction, you use the same request object as that of transactions under 1,000 euros providing the beneficiary's ID but include the compliance object for the Case at hand.
The following objects depict the general structure of the request body and exemplify its use:
{
"amount": "amount ≥ 1,000 euros",
"origin_id": "unique random ID",
"max_fee": "highest fee user is willing to pay for the transaction",
"contact_id": beneficiary ID,
# … same compliance object required for Case 2 Uncreated Beneficiary
}{
"amount": "amount ≥ 1,000 euros",
"origin_id": "android-cffbb40c5900c395d9244ed5",
"max_fee": "0.15538100",
"contact_id": "20395",
"compliance": {
"travel_rule": {
"vasp": {
"did": "did:ethr:0x401c4bc0241bc787f64510f21a4ae7ec3603487c"
}
}
}
}Created Beneficiary with Travel Rule Information Already Declared
After you complete the first transaction equal to or greater than 1,000 euros for this beneficiary, you no longer need to include the compliance object that contains the data of the recipient VASP. The request body is the same as the one used in transactions under 1,000 euros using the beneficiary's ID:
{
"amount": "amount < 1,000 euros",
"origin_id": "android-cffbb40c5900c395d9244ed5",
"max_fee": "0.15538100",
"contact_id": 20395
}Updated about 1 year ago
