Saltearse al contenido

Remit

[Source]

(Añadido por la enmienda 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][]Descripción
AccountStringAccountIDLa dirección de la cuenta que activará la cuenta, enviará el pago y/o acuñará/transferirá los URIToken/s.
DestinationStringAccountIDLa dirección única de la cuenta que recibe el pago y/o los URIToken/s.
DestinationTagNumberUInt32(Opcional) Un DestinationTag para depósitos a una cuenta de custodia compartida.
MintURITokenObjectSTObject(Opcional) Un STObject MintURIToken que contiene los detalles del URIToken a acuñar en el Destination.
URITokenIDsArraySTArray(Opcional) Un array de URITokenIDs (hash de 256 bits) a transferir al Destination. Límite 32.
AmountsArraySTArray(Opcional) Un array de STObjects AmountEntry que la cuenta quiere enviar al Destination. Límite 32.
InformStringAccountID(Opcional) Una dirección única de una cuenta que puede tener un hook instalado y ser informada cuando ocurre un remit.
BlobStringBlob(Opcional) Valor hex arbitrario que puede añadirse a la transacción para uso en Hooks.
InvoiceIDStringHash256(Opcional) Hash arbitrario de 256 bits que representa una razón o identificador específico para este remit.
CampoTipo JSON[Tipo Interno][]Descripción
AmountMonto de MonedaAmountLa cantidad de moneda que la cuenta quiere enviar al Destination.
CampoTipo JSON[Tipo Interno][]Descripción
URIStringStringEl URI asociado con el URIToken acuñado. (máximo 256 bytes)
DigestStringHash256(Opcional) El digest del URIToken.
FlagsNumberUInt32(Opcional) Indicadores en la transacción de acuñación

El STObject MintURIToken admite los valores en el campo Flags, de la siguiente manera:

Nombre del IndicadorValor HexValor DecimalDescripción
tfBurnable0x000000011Permite al emisor destruir el URIToken acuñado. (El propietario del URIToken siempre puede hacerlo.)

La transacción Remit tiene un costo de transacción estándar, que es la tarifa mínima requerida para cualquier transacción en Xahau.

Además de la tarifa mínima requerida, la transacción Remit también deducirá las tarifas por lo siguiente:

AcciónTarifa
Activación de CuentaRequisito de Reserva Estándar
Crear Línea de ConfianzaRequisito de Reserva Estándar
Acuñación de URITokenRequisito de Reserva Estándar
Transferencia de URITokenRequisito de Reserva Estándar

Además de los errores que pueden ocurrir para todas las transacciones, las transacciones Remit pueden resultar en los siguientes códigos de resultado:

Código de ErrorDescripción
temINVALID_FLAGOcurre si algún indicador es específico de tfFullyCanonicalSig
temREDUNDANTOcurre si la Cuenta es la misma que el Destino
temMALFORMED (Inform & Blob)Ocurre cuando: sfInform es igual a la fuente o destino. El Blob tiene más de 128kib.
temMALFORMED (AmountEntry)Ocurre cuando: el conteo de AmountEntry supera 32. AmountEntry esperado. La moneda nativa aparece más de una vez. La moneda emitida aparece más de una vez.
temMALFORMED (MintURIToken)Ocurre cuando: sfMintURIToken contiene campo inválido. URI no proporcionado. URI demasiado largo/corto. UTF8 inválido dentro de MintURIToken.
temMALFORMED (URITokenIDs)Ocurre cuando: URITokenIDs demasiado corto/largo. URITokenID duplicado.
temBAD_AMOUNTOcurre cuando un Amount en el AmountEntry es inválido.
terNO_ACCOUNTOcurre cuando la cuenta fuente no existe.
tecNO_TARGETOcurre cuando el campo sfInform está presente pero la cuenta no existe.
tecNO_PERMISSIONOcurre cuando disallowIncomingRemit está habilitado en el Destination
tecNO_PERMISSIONOcurre cuando el Destination tiene DepositAuthorization habilitado.
tecDST_TAG_NEEDEDOcurre si la cuenta de destino requiere una etiqueta de destino, pero la transacción no incluye una.
tecDUPLICATEOcurre cuando el URI de MintURIToken de ese emisor ya existe.
tecDIR_FULLOcurre cuando el directorio de la cuenta fuente o destino está lleno.
tecNO_ENTRYOcurre cuando el URIToken no existe.
tecNO_PERMISSIONOcurre cuando el URIToken no es de propiedad de la cuenta fuente.
tecUNFUNDED_PAYMENTOcurre cuando la cuenta fuente no tiene los fondos requeridos para ejecutar la transacción. (XAH o Monedas Emitidas)