Bit5 Documents
Goto App
  • 👋Welcome to Bit5
  • Overview
    • 💡What We Do
    • ✨Our Features
    • 🏁Get Started
      • Create a Wallet
      • Connect Your Wallet to Bit5
  • Product Guides
    • 🛍️Marketplace
      • Buying an NFT on Bit5
      • Selling an NFT at Bit5
      • NFT Rarity Calculation
      • Royalties
      • Fee Calculation and Limits
      • Service fee discount with privilege collections
      • Pausable
      • Global Transactions
      • Accept Global Bid As Owner
  • 🥏Bit5 as a Launchpad
    • Minting Application
    • Project Verification
    • Collection Application
  • 🤝Lending and Borrowing
    • Borrow BNB with Your NFTs
    • Earn Interest by Lending BNB
  • ✋Vote
  • Universal Wrapper
    • DN 404
    • How it works?
    • FAQ
  • 🏵️Services
    • Convertion of Static Nft to Dynamic Nft (dNft).
    • NFT Minting
    • Token Minting
  • ☑️Road Map
  • Resources
    • ❔FAQs
    • 🔗Links
      • Collection Application Form
      • Minting Application Form
      • Verification Form
      • Voting Application Form
      • Telegram Announcement
      • Twitter
      • Discord
      • Telegram Bit5 Listings
      • Telegram Bit5 Sales
  • Legal
    • 📃Terms Of Service
    • 🔏Privacy Policy
  • Partnership
    • Trading View
Powered by GitBook
On this page
  1. Product Guides
  2. Marketplace

Global Transactions

Global BID (Bit5) and bid (Bit5Lending) functions allow our valued users to transfer any NFT from their collection to the issuer. We understand the importance of providing transparency and clarity on our platform. This can cause users to be unaware of this feature and potentially receive unexpected tokens.

To address this, we are committed to providing comprehensive information and documentation to our users. By doing this, we aim to give our users a clear understanding of how these functions work and prevent unexpected token transfers. We value the trust our users place in us and we strive to give them the best possible experience.

acceptGlobalOffer() Function:

solidity
Copy code
function acceptGlobalOffer(
    Order memory order,
    bytes memory signature,
    uint256 tokenId
)
    external
    isOrderValid(order, signature, OrderStatus.NOT_PROCESSED)
    whenNotPaused
    nonReentrant
{
    if (!order.isGlobal) {
        revert OfferIsNotGlobal();
    }

    uint256[] memory tokenIds = new uint256[](1);
    tokenIds[0] = tokenId;

    order.colleteralTokenIDs = tokenIds;
    _processOrder(order, signature);
    globalOfferTokenIds[signature] = tokenId;
}
acceptGlobalBid() Function:

solidity
Copy code
function acceptGlobalBid(
    Order memory order,
    bytes memory signature,
    uint256[] memory tokenIds
) 
    public
    whenNotPaused
    nonReentrant
    isOrderValid(order, signature)
{
    if (msg.sender == order.issuer) {
        revert CanNotBuyOwnedToken();
    }
    if (
        order.globalBidAmount - processedGlobalBids[signature] <
        tokenIds.length
    ) {
        revert NotEnoughGlobalBids();
    }

    for (uint256 i; i < tokenIds.length; i++) {
        order.tokenId = tokenIds[i];
        processedGlobalBids[signature] += 1;
        _acceptBid(order, signature);
    }
}
acceptGlobalBidAsOwner() Function:

solidity
Copy code
function acceptGlobalBidAsOwner(
    Order memory order,
    bytes memory signature,
    uint256[] memory tokenIds,
    address _nftOwner
)
    public
    whenNotPaused
    nonReentrant
    onlyOwner
    isOrderValid(order, signature)
{
    if (msg.sender == order.issuer) {
        revert CanNotBuyOwnedToken();
    }
    if (
        order.globalBidAmount - processedGlobalBids[signature] <
        tokenIds.length
    ) {
        revert NotEnoughGlobalBids();
    }

    for (uint256 i; i < tokenIds.length; i++) {
        order.tokenId = tokenIds[i];
        processedGlobalBids[signature] += 1;
        _acceptGlobalBidAsOwner(order, signature, _nftOwner);
    }
}

PreviousPausableNextAccept Global Bid As Owner

Last updated 1 year ago

🛍️