Pular para o conteúdo

Remit

[Fonte]

(Adicionado pela [emenda Remit][].)

{
"TransactionType": "Remit",
"Account": "rGvbdrdCxG2tk9ZU2673XmsjRdHCDQEpt7",
"Amounts": [
{
"AmountEntry": {
"Amount": "1000000"
}
}, {
"AmountEntry": {
"Amount": {
"currency": "USD",
"issuer": "rExKpRKXNz25UAjbckCRtQsJFcSfjL9Er3",
"value": "1"
}
}
}
],
"Destination": "rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn",
"URITokenIDs": [
"714F206C865D334721B2F3388BEAF33AA91BC1D78C71941D10A2A653C873EDD3"
],
"MintURIToken": {
"Digest": "6F11A4DF4EE794E2800BB361173D454BFBECB3D7506C4F4CB0EC5AE98BE43747",
"Flags": 1,
"URI": "697066733A2F2F"
}
}
CampoTipo JSON[Tipo Interno][]Descrição
AccountStringAccountIDO endereço da conta que irá ativar a conta, enviar o pagamento e/ou mintar/transferir o(s) URIToken(s).
DestinationStringAccountIDO endereço único da conta que receberá o pagamento e/ou o(s) URIToken(s).
DestinationTagNumberUInt32(Opcional) Uma DestinationTag para depósitos em uma conta de custódia compartilhada.
MintURITokenObjectSTObject(Opcional) Um STObject MintURIToken contendo os detalhes do URIToken que deseja mintar no Destination.
URITokenIDsArraySTArray(Opcional) Um array de URITokenIDs (hash de 256 bits) a serem transferidos para o Destination. Limite de 32.
AmountsArraySTArray(Opcional) Um array de STObjects AmountEntry que a conta deseja enviar ao Destination. Limite de 32.
InformStringAccountID(Opcional) Endereço único de uma conta que pode ter um hook instalado e ser notificada quando uma remessa ocorrer.
BlobStringBlob(Opcional) Valor hexadecimal arbitrário que pode ser adicionado à transação para uso em Hooks.
InvoiceIDStringHash256(Opcional) Hash de 256 bits arbitrário representando um motivo específico ou identificador para esta remessa.
CampoTipo JSON[Tipo Interno][]Descrição
AmountValor de MoedaAmountO valor da moeda que a conta deseja enviar ao Destination.
CampoTipo JSON[Tipo Interno][]Descrição
URIStringStringA URI associada ao URIToken mintado. (máximo de 256 bytes)
DigestStringHash256(Opcional) O digest do URIToken.
FlagsNumberUInt32(Opcional) Flags na transação de mint.

O STObject MintURIToken suporta os seguintes valores no campo Flags:

Nome da FlagValor HexValor DecimalDescrição
tfBurnable0x000000011Permite ao emissor destruir o URIToken mintado. (O proprietário do URIToken sempre pode fazê-lo.)

A transação Remit possui um custo de transação padrão, que é a taxa mínima exigida para qualquer transação no Xahau.

Além da taxa mínima exigida, a transação Remit também deduzirá as taxas para o seguinte:

AçãoTaxa
Account ActivationRequisito de Reserva Padrão
Create TrustlineRequisito de Reserva Padrão
URIToken MintRequisito de Reserva Padrão
URIToken TransferRequisito de Reserva Padrão

Além dos erros que podem ocorrer em todas as transações, as transações Remit podem resultar nos seguintes códigos de resultado:

Código de ErroDescrição
temINVALID_FLAGOcorre se alguma flag especificar tfFullyCanonicalSig.
temREDUNDANTOcorre se a Account for igual ao Destination.
temMALFORMED (Inform & Blob)Ocorre quando: sfInform é igual à origem ou ao destino. O Blob tinha mais de 128 KiB.
temMALFORMED (AmountEntry)Ocorre quando: a contagem de AmountEntry excede 32. AmountEntry esperado. A moeda nativa aparece mais de uma vez. A moeda emitida aparece mais de uma vez.
temMALFORMED (MintURIToken)Ocorre quando: sfMintURIToken contém campo inválido. A URI não foi fornecida. A URI era muito longa/curta. UTF8 inválido dentro do MintURIToken.
temMALFORMED (URITokenIDs)Ocorre quando: URITokenIDs muito curto/longo. URITokenID duplicado.
temBAD_AMOUNTOcorre quando um Amount no AmountEntry é inválido.
terNO_ACCOUNTOcorre quando a conta de origem não existe.
tecNO_TARGETOcorre quando o campo sfInform está presente, mas a conta não existe.
tecNO_PERMISSIONOcorre quando disallowIncomingRemit está habilitado no Destination.
tecNO_PERMISSIONOcorre quando o Destination possui DepositAuthorization habilitado.
tecDST_TAG_NEEDEDOcorre se a conta de destino exige uma tag de destino, mas a transação não inclui uma.
tecDUPLICATEOcorre quando a URI do MintURIToken daquele emissor já existe.
tecDIR_FULLOcorre quando o diretório da conta de origem ou de destino está cheio.
tecNO_ENTRYOcorre quando o URIToken não existe.
tecNO_PERMISSIONOcorre quando o URIToken não é de propriedade da conta de origem.
tecUNFUNDED_PAYMENTOcorre quando a conta de origem não possui os fundos necessários para executar a transação. (XAH ou Moedas Emitidas)