Payload validation (optional)

If you want to verify that your payload is complete before calling txCreate, you can send it to txValidateFull:

{
    "transactionAsset": "BTC",
    "transactionAmount": "{{$randomInt}}{{$randomInt}}{{$randomInt}}",
    "originatorVASPdid": "{{vaspDIDph}}",
    "originatorEqualsBeneficiary": false,
    "travelRuleBehavior": false,
    "beneficiaryVASPdid": "did:ethr:0xd4bd902ec78578f33a20ff601504d2ab324cfab9",
    "beneficiaryVASPname": "",
    "transactionBlockchainInfo": {
        "origin": "{{$randomBitcoin}}",
        "destination": "{{$randomBitcoin}}"
    },
    "originator": {
        "originatorPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
                            "nameIdentifier": [
                                {
                                    "primaryIdentifier": "{{$randomLastName}}",
                                    "secondaryIdentifier": "{{$randomFirstName}}"
                                }
                            ]
                        }
                    ],
                    "geographicAddress": [
                        {
                            "streetName": "{{$randomStreetName}}",
                            "townName": "{{$randomCity}}",
                            "country": "{{$randomCountryCode}}",
                            "buildingNumber": "{{$randomInt}}",
                            "postCode": "{{$randomInt}}"
                        }
                    ],
                    "nationalIdentification": {
                        "countryOfIssue": "{{$randomCountryCode}}",
                        "nationalIdentifier": "{{$randomInt}}",
                        "nationalIdentifierType": "DRLC"
                    }
                }
            }
        ],
        "accountNumber": [
            "{{$randomBankAccount}}"
        ]
    },
    "beneficiary": {
        "beneficiaryPersons": [
            {
                "naturalPerson": {
                    "name": [
                        {
                            "nameIdentifier": [
                                {
                                    "primaryIdentifier": "{{$randomLastName}}",
                                    "secondaryIdentifier": "{{$randomFirstName}}"
                                }
                            ]
                        }
                    ]
                }
            }
        ],
        "accountNumber": [
            "{{$randomBankAccount}}"
        ]
    }
}

Response:

{
    "isValid": true,
    "type": "TRAVELRULE",
    "beneficiaryAddressType": "UNKNOWN",
    "addressSource": "UNKNOWN",
    "beneficiaryVASPname": "Notabene VASP SG",
    "beneficiaryVASPdid": "did:ethr:0xd4bd902ec78578f33a20ff601504d2ab324cfab9",
    "errors": [],
    "warnings": []
}

👍

isValid:true

You can use the exact same payload for txCreate.

Potential errors

ErrorsMissing
originatorNameMissingoriginator.....primaryIdentifier (should also include the secondary)
"nameIdentifier": [
{
"primaryIdentifier": "Stark",
"secondaryIdentifier": "Brice"
}
]
originatorAccountNumberMissingoriginator.....accountNumber
"accountNumber": [
"3jwpzoHEKoK9XKMryXHBRLWKoibFMxfNmj"
]
originatorGeographicAddressMissingoriginator.....geographicAddress
There must be at least one occurrence of the element addressLine or (streetName and buildingName and/or buildingNumber).
"geographicAddress": [
{
"streetName": "streetName",
"buildingNumber": "buildingNumber",
"country": "{{$randomCountryCode}}"
}
originatorNationalIdentificationMissingoriginator..... nationalIdentification
"nationalIdentification": {
"nationalIdentifier": "123456789",
"nationalIdentifierType": "DRLC"
originatorCustomerIdentificationMissingoriginator..... customerIdentification
"customerIdentification": "abcde12345"
originatorDateAndPlaceOfBirthMissingoriginator..... dateAndPlaceOfBirth
"dateAndPlaceOfBirth": {
"dateOfBirth": "1999-01-01",
"placeOfBirth": "{{$randomCountryCode}}"
beneficiaryNameMissingbeneficiary.....primaryIdentifier
beneficiaryAccountNumberMissingbeneficiary.....accountNumber
beneficiaryGeographicAddressMissingbeneficiary.....geographicAddress
There must be at least one occurrence of the element addressLine or (streetName and buildingName and/or buildingNumber).
beneficiaryCountryOfResidenceMissingbeneficiary..... countryOfResidence
beneficiaryOwnershipProofMissingbeneficiaryProof: type + proof