A guide on how to integrate with KYC-ed ORIGYN NFT

Yumi
3 min readDec 25, 2023

There are two steps to integrate with KYC-ed ORIGYN NFT, the first step is to support users to pass Yumi KYC, before that the project needs to set up Yumi KYC infra following the last guide. The second step is that projects integrate ORIGYN NFT, at this moment the example is how Yumi integrates with ORIGYN NFT.

Embed Yumi KYC

  1. Two in interface to check users’ KYC tiers

2. See more details:

Integrate with ORIGYN NFT

Process of Yumi Integrate with ORIGYN NFT

The process that Yumi integrates with ORIGYN NFT is very clear. The user starts to buy NFT on Yumi marketplace, call icrc17_kyc_request to verify whether the user’s KYC and AML status to proceed transaction or not. Yumi proceeds with the transaction, the next step is to call icrc17_kyc_notification and increase the transaction amount. Because Yumi has 3 KYC tiers, and tier 1 has only 10,000 USD trading quota, tier 2 has 50,000 USD trading quota, and tier 3 has customized trading quota.Any exceeded trading amount will require user to upgrade his or her KYC tiers.

General Guide of Intergration with ORIGYN NFT

You can get more detailed information from here. This sections focuses on the methods relevant for the integration of the ORIGYN NFTs that are used on Yumi NFT marketplace.

  1. Get all NFT Ids

To get all the token ids of a collection, you need to call the method below.

function : 
collection_nft_origyn
token_id

2. Owner

You can get the owner information for specific NFTs by querying the function below with the token ids as payload. These can be either called for a single NFT or in a batch for multiple NFTs.

function:
single:bearer_nft_origyn(token_id : Text)
batch:bearer_batch_nft_origyn(token_ids : [Text])

3. NFT assets

To get the asset information and preview images that are implemented on the frontends, you can query the perpetual url of the canisters with the respective token id as shown below.

primary: https://prptl.io/-/${canisterId}/-/${token_id}

preview: https://prptl.io/-/${canisterId}/-/${token_id}/preview

4. Get pending order information

In order to get information about the sale status of an NFT, use the methods below. Details about the payload and response can be found here.

function:
nft_origyn(single)
nft_batch_origyn(batch)

5. List NFTs for sale

To list and NFT for sale, the methods below need to be called. The demo below shows an example of how the payload can be configured. This method needs to be called with the identity of the owner of the NFT.

function:
single:market_transfer_nft_origyn
batch:market_transfer_batch_nft_origyn

6. buy NFTs / accept listed NFT

Once an NFT is listed for sale, any other player can accept the offer. For this, the methods below need to be called. This method needs to be called with the identity of the buyer of the NFT.

function:
single:sale_nft_origyn
batch:sale_batch_nft_origyn

7. end sale

If a sale shall be ended before it is actually completed, call the method below with the payload in the demo. This method needs to be called with the identity of the owner of the NFT.

 function:
single:sale_nft_origyn
batch:sale_batch_nft_origyn

--

--

Yumi

Yumi is an NFT marketplace built on Internet Computer blockchain. Ultra-fast, highly secure, low-cost and 100% decentralized with NFTs stored fully on-chain.