📃Contrato

En este apartado se describen los metodos que posee el contrato del marketplace el cual puede ser consumido desde una dApp externa.

Metodos

Comprar

function buy(address _nftAddress, uint256[] calldata _tokenIds)

Compra uno o mas elementos del marketplace, admite como maximo la compra de 50 elementos en una sola transaccion.

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

La direccion del contrato NFT a comprar

uint256[]

_tokenIds

Si

El array de tokenIds a adquirir

Valor del retorno

Success: La compra se realizo con exito

Collection_unavailable: La coleccion ya no se encuentra disponible ya que el vendedor la retiro de la venta u otro comprador ya lo ha adquirido

Length_too_high: La cantidad de elementos en el array a comprar es superior a 50

Allowance is lower than purchase value: El comprador no autorizo la cantidad suficiente de allowance para ejecutar la compra

User doesnt have enough balance: El usuario no dispone de la cantidad de fondos para realizar la compra

Transfer_royalty_failed: Error al producirse la transferencia del pago de royalties

Transfer_price_failed: Error al producirse la transferencia de fondos al vendedor

Transfer_fees_failed: Error al producirse la transferencia de fees al marketplace

Fail with error 'error': Error al llamar al contrato

Emite evento Buy

event Buy(address _nftAddress,address _msgSender, uint256[] _tokenIds);
Tipo
Nombre
Descripcion

address

_nftAddress

La direccion del contrato NFT adquirido

address

_msgSender

La direccion del usuario que realizo la compra

uint256[]

_tokenIds

El array de token Ids que adquirio el comprador

Comprar para regalar

Compra uno o mas elementos del marketplace y transfiere el elemento a una billetera distinta que la del comprador.

function buyForGift(address _nftAddress, uint256[] calldata _tokenIds,
 address _transferTo)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

La direccion del contrato NFT a comprar

uint256[]

_tokenIds

Si

El array de tokenIds a adquirir

address

_transferTo

Si

La billetera destino a la cual enviar el NFT

Valor del retorno

Success: La compra se realizo con exito Collection_unavailable: La coleccion ya no se encuentra disponible ya que el vendedor la retiro de la venta u otro comprador ya lo ha adquirido

Length_too_high: La cantidad de elementos en el array a comprar es superior a 50

Allowance is lower than purchase value: El comprador no autorizo la cantidad suficiente de allowance para ejecutar la compra

User doesnt have enough balance: El usuario no dispone de la cantidad de fondos para realizar la compra

Transfer_royalty_failed: Error al producirse la transferencia del pago de royalties

Transfer_price_failed: Error al producirse la transferencia de fondos al vendedor

Transfer_fees_failed: Error al producirse la transferencia de fees al marketplace

Fail with error 'error': Error al llamar al contrato

Emite evento BuyForGift

event BuyForGift(address _nftAddress,uint256[] _tokenIds,
address _msgSender,address _transferTo);
Tipo
Nombre
Descripcion

address

_nftAddress

La direccion del contrato NFT adquirido

uint256[]

_tokenIds

El array de token Ids que adquirio el comprador

address

_msgSender

La direccion del usuario que realizo la compra

address

_transferTo

La direccion a la que se ha enviado el NFT de regalo

Cancelar

Cancela la venta de uno o mas token Ids de un contrato NFT que el usuario haya colocado a la venta

function cancel(address _nftAddress, uint256[] calldata _tokenIds)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

Direccion del contrato NFT del elemento a quitar de la venta

uint256[]

_tokenIds

Si

Array de token Ids que se quitaran de la venta

Valor de retorno

Success: La compra se realizo con exito Collection_unavailable: La coleccion ya no se encuentra disponible ya que el vendedor la retiro de la venta u otro comprador ya lo ha adquirido

Length_too_high: La cantidad de elementos en el array a comprar es superior a 50

Failed_unauthorized: La billetera que envia la transaccion no tiene permisos para retirar el NFT ya que no le pertenece

Emite evento Cancel

event Cancel(address _nftAddress, address _msgSender,uint256[] _tokenIds);
Tipo
Nombre
Descripcion

address

_nftAddress

Direccion del contrato NFT a cancelar

address

_msgSender

Billetera que ha enviado la transaccion de cancelacion

uint256[]

_tokenIds

Array de token Ids a quitar de la venta

Vender

Coloca uno o mas token Ids a la venta pertenecientes a una misma coleccion NFT. Admite un maximo de 50 elementos por transaccion

function sell(address _nftAddress,uint256[] calldata _tokenIds,
uint256[] calldata _prices)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

Direccion del contrato NFT a poner en venta

uint256[]

_tokenIds

Si

Array de token Ids a poner en venta de la coleccion NFT

uint256[]

_prices

Si

Array de precios correspondientes a cada uno de los token Ids a poner en venta

Valor de retorno

Success: La compra se realizo con exito Length_mismatch: La longitud del array de token Ids no coincide con la longitud del array de precios Length_too_high: La cantidad de elementos en el array a vender es superior a 50 Approval for all missing: El usuario no ha permitido al marketplace el control sobre el NFT a poner en venta Price too low: El precio indicado para la venta es menor al minimo aceptado por el marketplace

Emite evento Sell

event Sell(address _nftAddress,address _msgSender,
uint256[] _tokenIds,uint256[] _prices);
Tipo
Nombre
Descripcion

address

_nftAddress

Direccion del contrato NFT puesto a la venta

address

_msgSender

Billetera que ha puesto a la venta los articulos

uint256[]

_tokenIds

Array de token Ids correspondientes al contrato NFT que se han puesto a la venta

uint256[]

_prices

Array de precios correspondientes al array de token Ids puesto a la venta

Cambiar Precio

Cambia el precio de venta de un token Id correspondiente a una coleccion NFT de la cual el usuario es dueÃąo

function setPrice(address _nftAddress,uint256 _tokenId,uint256 _newPrice)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

La direccion del contrato NFT a la cual pertenece el token Id

uint256

_tokenId

Si

El token Id del NFT que se le va a cambiar el precio

uint256

_newPrice

Si

El nuevo precio para el token Id a la venta

Valor de retorno

Success: La compra se realizo con exito Price too low: El precio indicado para la venta es menor al minimo aceptado por el marketplace Failed_Unauthorized: El usuario que cargo la transaccion no tiene permisos sobre dicho activo

Emite evento SetPrice

event SetPrice(address sender,address _nftAddress,uint256 _tokenId,
uint256 _newPrice);
Tipo
Nombre
Descripcion

address

sender

La billetera que ha realizado el cambio de precio

address

_nftAddress

La coleccion NFT a la cual pertenece el token Id cuyo precio cambio

uint256

_tokenId

El token Id perteneciente a la coleccion NFT cuyo precio cambio

uint256

_newPrice

El valor del nuevo precio del elemento a la venta

Obtener precio

Obtiene el precio de un token Id puesto a la venta perteneciente a una coleccion NFT.

function getPrice(address _nftAddress, uint256 _tokenId)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

La direccion del contrato NFT a la cual pertenece el token Id

uint256

_tokenId

Si

Token Id del cual se desee saber el precio

Valores de retorno

Retorna el precio del elemento, en caso de no existir, devuelve 0

Elemento activo

Se utiliza para verificar que un elemento se encuentre activo para la venta.

function isActive(address _nftAddress, uint256 _tokenId)

Parametros

Tipo
Nombre
Requerido
Descripcion

address

_nftAddress

Si

Coleccion NFT a la que pertenece el token Id que se desea saber si esta activo para la venta

uint256

_tokenId

Si

Token Id el cual se desea saber si esta a la venta

Valores de retorno

Devuelve true si elemento esta activo para la venta. False si el elemento no esta activo para la venta o no existe.

Obtener fee

Devuelve el porcentaje de comision que el marketplace cobra por cada venta

function fee()

Valor del retorno

Devuelve uint256 con el valor del fee que esta cobrando el marketplace. El calculo es porcentual aplicado sobre una base de 1.000.000. Es decir, si el valor devuelto por este metodo es 50.000 y el base fee es 1.000.000, la comision es de un 5%.

Precio minimo

Devuelve el precio minimo al que puede ponerse a la venta un articulo

function minPrice()

Valor del retorno

Devuelve el precio minimo al que puede colocarse un articulo a la venta

Last updated