Updating an incomplete message

Once you have collected the missing information, txUpdate can be used together with the travel rule ID and the other details to update the incomplete travel rule message:

{
    "id": "c5e0569a-edee-48ea-8946-9320fcdf9611",
    "originatorVASPdid": "did:ethr:0x940a4b2a0932733b842e4aa906761bb3d3bd8148",
    "originator": {
        "originatorPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
                            "nameIdentifier": [
                                {
                                    "primaryIdentifier": "Wayne",
                                    "secondaryIdentifier": "Bruce"
                                }
                            ]
                        }
                    ],
                    "nationalIdentification": {
                        "countryOfIssue": "DC",
                        "nationalIdentifier": "123EE22",
                        "nationalIdentifierType": "DRLC"
                    }
                }
            }
        ],
        "accountNumber": [
            "0x061f7937b7b2bc7596539959804f86538b6368dc"
        ]
    },
    "beneficiary": {
        "beneficiaryPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
                            "nameIdentifier": [
                                {
                                    "primaryIdentifier": "Wunderland",
                                    "secondaryIdentifier": "Alice"
                                }
                            ]
                        }
                    ]
                }
            }
        ],
        "accountNumber": [
            "123456789"
        ]
    }
}

Data request

Originator VASP to provide all details

{
    "id": "c5e0569a-edee-48ea-8946-9320fcdf9611",
    "originatorVASPdid": "did:ethr:0x049fc13a4f1e79d4d03f082ca96758179a91da29"
}

If the originator VASP was not already identified automatically when you called txNotify, you can ask your customer to identify the origin wallet. If they say it is hosted and by whom, you can add the DID of that VASP using txUpdate to generate a "data request". This will create an incomplete travel rule message for the originating VASP, in which they can provide information about both the originator and the beneficiary.


Originator VASP to provide just the originator details

{
    "id": "c5e0569a-edee-48ea-8946-9320fcdf9611",
    "originatorVASPdid": "did:ethr:0x049fc13a4f1e79d4d03f082ca96758179a91da29",
    "beneficiary": {
        "beneficiaryPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
                            "nameIdentifier": [
                                {
                                    "primaryIdentifier": "Wunderland",
                                    "secondaryIdentifier": "Alice"
                                }
                            ]
                        }
                    ]
                }
            }
        ],
        "accountNumber": [
            "{{$randomBankAccount}}"
        ]
    }
}

This will create an incomplete (but with beneficiary information) travel rule message for the originating VASP, in which they can provide information about the originator.


The deposit came from an unhosted wallet

If your customer has declared that the deposit come from an unhosted wallet, you can flag this when calling txUpdate by including the following flag: isNonCustodial: true, together with the rest of the information required in your jurisdiction for this type of deposit:

{
    "id": "{{txID}}",
    "isNonCustodial": true,
    "originator": {
        "originatorPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
....
                        }
                    ]
                }
            }
        ],
        "accountNumber": [
            "{{$randomBankAccount}}"
        ]
    },
    "beneficiary": {
        "beneficiaryPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
....
                        }
                    ]
                }
            }
        ],
        "accountNumber": [
            "{{$randomBankAccount}}"
        ]
    }
}

You may need to include theoriginatorProof object in the txUpdate call for these unhosted deposits, depending on your jurisdiction.


Did this page help you?