Saltar al contenido principal
Puedes enriquecer cualquier transacción con un memo, una categoría y/o un adjunto (p. ej., recibos, facturas, órdenes de compra). Las anotaciones se pueden agregar en el momento de la transacción original o actualizar después usando la mutación updateTransactionMetadata. Las anotaciones son compatibles en:
  • Depósitos (depositCashBalance1)
  • Compras de tarjetas de regalo (purchaseGiftCard)
  • Transferencias de la billetera (createTransfer, transferInternalBalance)
  • Creación de tarjeta virtual (createVirtualCard)
    • se excluye attachment

Cómo funciona

  1. Opcional: Si quieres adjuntar un archivo, súbelo primero mediante el endpoint REST de carga. Recibirás un attachmentId.
  2. Pasa memo, transactionCategory y/o attachmentId en la entrada de tu mutación, ya sea en el momento de la transacción o después mediante updateTransactionMetadata.
  3. Lee las anotaciones en getTransactions, getUserPurchases o en la respuesta de la mutación. El campo attachmentUrl devuelve una URL firmada de corta duración para acceder al archivo.

Paso 1: Cargar un adjunto (opcional)

Este es un endpoint REST, no una mutación de GraphQL

Endpoint

POST /api/v1/file-upload/transaction-memo-attachment

Autenticación

Authorization: Bearer <YOUR_USER_ACCESS_TOKEN>

Solicitud

Envía el archivo como multipart/form-data con el nombre de campo file. Tipos aceptados: application/pdf, image/png
⚠️ JPEG no es aceptado para adjuntos de transacciones.

Solicitud de ejemplo

Respuesta

Copia el attachmentId; lo pasarás en la entrada de tu mutación en el siguiente paso.
El attachmentId está limitado al alcance de tu cuenta. El sistema verifica que el archivo exista en el almacenamiento de tu cuenta cuando envías la mutación. Se rechazará un ID de una cuenta diferente.

Errores de carga


Paso 2: Anotar la transacción

Puedes proporcionar anotaciones en el momento de la transacción original o actualizarlas después.

Opción A — En el momento de la transacción

Las siguientes mutaciones aceptan memo, transactionCategory y attachmentId como campos opcionales en su entrada:
  • depositCashBalanceDepositCashBalanceInput
  • purchaseGiftCardPurchaseGiftCardInput
  • createTransferCreateTransferInput
  • transferInternalBalanceTransferInternalBalanceInput

Campos de anotación

Ejemplo — Comprar tarjeta de regalo con anotación


Opción B — Después de la transacción (updateTransactionMetadata)

Usa esta mutación para agregar o actualizar anotaciones en cualquier transacción existente.
Semántica de actualización parcial: Solo se actualizan los campos que incluyas. Los campos omitidos quedan sin cambios. Pasa null para borrar un campo.

Mutación

UpdateTransactionMetadataInput

Alcances requeridos

LIST_PAYMENT y LIST_PURCHASES

Ejemplo — Agregar un memo y una categoría

Ejemplo — Adjuntar un archivo a una transacción existente

Ejemplo — Borrar un memo

Respuesta de ejemplo

Errores


Lectura de anotaciones

Las anotaciones se devuelven en lo siguiente:
⚠️ attachmentUrl es una URL firmada. Expira poco después de ser generada. No la almacenes: vuelve a recuperar la transacción cuando necesites mostrar o acceder al archivo.