Reject, Authorize and Settle
Rejecting or Authorizing a Transfer
Depending the automation via Policies, a Transfer might automatically move to Rejected or Authorized.
You can also control this via the API. In cases where you want to reject or authorize via API, use the following endpoints:
Authorize:
{{url}}/entity/:entityDID/tx/:tx/authorize
{{url}}/entity/:entityDID/tx/:tx/authorize?ignoreFlags=true
{{url}}/entity/:entityDID/tx/:tx/authorize?force=true
Set the query parameter ignoreFlags=true when you want to authorize the transfer regardless of any existing flags. Note that this might be registered as a request for authorization only when your authorization policies are still pending. Once they get Completed, this registered request for authorization will allow an automatic status transition to Authorized.
Set the query parameter force=true when you want to authorize the transfer regardless of any existing flags AND unfulfilled authorization policies.
Optionally you can add a SettlementAddress to the payload. This is relevant in case where you are on the receiving side of a Transfer and have either yet to disclose the settlementAddress or wants to change it.
{
"settlement_address": "bip122:000000000019d6689c085ae165831e93:bc1qxy2kgdygjrsqtzq2m0yrf2493p83kkfjhx0wlh"
}Reject:
{{url}}/entity/:entityDID/tx/:tx/reject
where the path parameters are self-explanatory: the :entityDID is your did:web identifier and /:tx is the id of the transfer your are rejecting.
In the body payload please proved a reason code and optional comment:
{
"reason": "OTHER",
"comment": "my comment"
}reason must be one of the following values: COUNTERPARTY_RISK, COUNTERPARTY_DUE_DILIGENCE, BLOCKCHAIN_RISK_SCORE, SANCTION_SCREENING, ASSET_TYPE, SUSPICIOUS_TRANSACTION, COUNTERPARTY_POLICIES, COUNTERPARTY_REJECTED, COUNTERPARTY_NO_RESPONSE, CANCELED_BY_INITIATOR, REMOVED_FROM_TRANSFER, TRANSFER_PARTICIPANT, SOURCE_ADDRESS, BENEFICIARY_ADDRESS, BENEFICIARY_NOT_FOUND, ORIGINATOR_REJECT_OUTGOING, BENEFICIARY_REJECT_INCOMING, COMPLIANCE_POLICIES, OTHER.
Settlement:
After you have executed the blockchain value transfer, you need to add the blockchain transaction hash to the corresponding travel rule message that was created and sent by using {{url}}/entity/:entityDID/tx/:tx/settle
where the path parameters are self-explanatory: the :entityDID is your did:web identifier and /:tx is the id of the transfer your are settling. In the body you add the settlementId, which is the txHash from the onchain transaction:
{
"settlementId": "eip155:1:tx/0x3edb98c24d46d148eb926c714f4fbaa117c47b0c0821f38bfce9763604457c33"
}Updated 10 months ago
