Receiving ICP in Canister

Hello, is this still the case?

I would like my canister to accept ICPs from other canisters (not only users) but then it should also be able to transfer those ICPs to others (canisters/users). Is it possible or WTC is still the only way?

Thanks :slight_smile:

1 Like

Canisters can receive and transfer ICP

1 Like

The invoice example lists the following canister ids:
icp_ledger_canister = “sgymv-uiaaa-aaaaa-aaaia-cai”;
nns_ledger = “ryjl3-tyaaa-aaaaa-aaaba-cai”;

I always thought the mainnet icp ledger was “ryjl3-tyaaa-aaaaa-aaaba-cai”. But the naming in the invoice example is confusing me.

When would one use the ‘icp_ledger_canister’ vs the ‘nns_ledger’?

You would use the icp_ledger_canister in a situation where you wanted to deploy an additional ICP ledger for testing on mainnet or in a “staging” context (with a minter defined in the test args). sgymv-uiaaa-aaaaa-aaaia-cai is not a live canister on the IC.

If you are comfortable with local testing and the rest of your setup, you can stick with the nns_ledger.

1 Like