Những gì bạn cần
| Trường | Nó làm gì |
|---|---|
| Mint endpoint URL | Tuyến tạo địa chỉ công khai trên node của bạn. Chúng tôi gọi nó để lấy một địa chỉ mới cho mỗi đơn hàng. Không bí mật. |
| Webhook secret | Một bí mật dùng chung mà bộ theo dõi của bạn ký và chúng tôi xác minh. Nó không bao giờ có thể chạm vào ví của bạn. Bí mật. |
Tùy chọn này dành cho những người muốn chạy node của riêng mình. Bạn cũng chạy một node Monero, một ví chỉ-xem, và một bộ theo dõi nhỏ luôn-bật trên máy của riêng bạn. Hướng dẫn này đi qua tất cả. Nếu bạn không muốn chạy gì cả, hãy kết nối một dịch vụ tiền điện tử được lưu trữ để thay thế.
Money flow
Money
Buyer
Taps your Coin Moebius Buy Button and pays from their own wallet.
Your product page
Your Coin Moebius Buy Button asks Coin Moebius to start a checkout.
Coin Moebius Messages only
Gets a fresh address from your server and shows it to the buyer.
Blockchain
Carries the coins from the buyer straight to you.
Your wallet
Receives the coins.
Your server
Sees the payment land in your wallet and tells Coin Moebius the sale is paid. Your keys and balance never leave your server.
Coin Moebius dashboardSale shows as paid.
No buyer data
Card numbers never reach us. Buyer names, addresses and contact details are stripped before a sale is saved.
Where our bill comes in
The payment goes to you. Our bill comes separately. On Flex, that bill is based on the sales you’ve made, at 2% + 20¢ each. Pro starts at $24 a month with 500 sales included, then a few cents for each extra sale. Business is $99 a month for unlimited sales. Your provider’s fees are separate from ours.
Vì sao chúng tôi hỏi mỗi trường
Mint endpoint URL
Khi một người mua nhấp Mua, chúng tôi hỏi node của bạn một địa chỉ mới để hiển thị cho họ. Yêu cầu đó đi đến một tuyến công khai duy nhất này. Nó trả lại một địa chỉ và không gì khác; ví của bạn vẫn riêng tư phía sau nó.
Webhook secret
Bộ theo dõi của bạn báo cho chúng tôi "đơn hàng này đã trả tiền" bằng cách gửi cho chúng tôi một thông điệp đã ký. Bí mật dùng chung này cho phép chúng tôi xác nhận thông điệp thực sự đến từ bộ theo dõi của bạn, nên không ai có thể giả mạo một sự kiện đã trả tiền. Nó không đọc được gì và không di chuyển được gì.
Thiết lập
- Những gì bạn sẽ chạy
Ba thứ, tất cả trên máy của riêng bạn. Không gì ở đây được trao cho chúng tôi ngoại trừ mint URL công khai và bí mật dùng chung.
- Một node Monero (monerod) và một ví chỉ-xem (monero-wallet-rpc), giữ riêng tư.
- Một mint endpoint: một tuyến công khai nhỏ trả ra một địa chỉ mới cho mỗi đơn hàng.
- Một bộ theo dõi: một chương trình nhỏ luôn-bật theo dõi ví của bạn và báo cho chúng tôi khi một khoản thanh toán đáp xuống.
- Tạo một ví chỉ-xem
Một ví chỉ-xem có thể thấy các khoản thanh toán đến và tạo các địa chỉ nhận mới, nhưng nó không thể chi tiêu. Bạn dựng nó từ địa chỉ ví thật của bạn và khóa xem riêng tư của nó, không gì khác. Đó là thứ cho phép node của bạn phát hiện các khoản thanh toán mà không bao giờ nắm quyền di chuyển chúng.
monero-wallet-cli --generate-from-view-key ~/monero/view-onlyNó nhắc nhập địa chỉ chính của bạn và khóa xem riêng tư của bạn. Không bao giờ nhập seed hay khóa chi tiêu của bạn, hãy giữ chúng trên một máy riêng. Nó ghi ra view-only và view-only.keys; đặt một mật khẩu và lưu nó vào một tệp (wallet.password, ngay cạnh ví) cho bước tiếp theo.
- Chạy node Monero của bạn
Daemon đồng bộ và giữ blockchain. Chạy nó như một dịch vụ (systemd hoặc Docker) để nó tự khởi động lại. RPC của nó lắng nghe trên 127.0.0.1:18081.
monerod --data-dir ~/.bitmonero --prune-blockchain --restricted-rpcMột node được cắt tỉa giữ dung lượng đĩa nhỏ và vẫn thấy mọi khoản thanh toán đến. Node tiếp cận mạng lưới nhưng không phơi ra gì công khai.
- Chạy wallet RPC
Một dịch vụ thứ hai mở ví chỉ-xem và trả lời mint endpoint và bộ theo dõi. Trỏ nó về node của bạn và gắn nó vào localhost. Chạy nó như một dịch vụ nữa.
monero-wallet-rpc \ --wallet-file ~/monero/view-only \ --password-file ~/monero/wallet.password \ --rpc-bind-ip 127.0.0.1 --rpc-bind-port 18083 \ --daemon-address 127.0.0.1:18081 --trusted-daemon \ --disable-rpc-loginKhông bao giờ phơi wallet RPC ra internet công khai; gắn nó vào localhost hoặc một mạng riêng. --disable-rpc-login chỉ ổn vì nó chỉ-localhost; dùng --rpc-login nếu nó tiếp cận được từ bất kỳ đâu khác. Chỉ mint endpoint bên dưới là công khai.
- Cài đặt gói Monero của Coin Moebius
Nó cung cấp bộ tạo địa chỉ, bộ ký webhook, và bộ theo dõi, nên bạn viết gần như không cần code. Con đường nhanh nhất là ví dụ sẵn-sàng-chạy bên dưới: sao chép thư mục, điền bốn giá trị, và khởi động nó.
npm install @aquarian-metals/coin-moebius-moneroGói trên npm ↗Ví dụ sẵn-sàng-chạy (node, mint endpoint, bộ theo dõi) ↗
- Tạo webhook secret của bạn
Một giá trị ngẫu nhiên mạnh dùng để ký và xác minh webhook. Hai cách để tạo một cái, tùy bạn: nhấp Tạo khi bạn thêm nhà cung cấp trong bảng điều khiển (nó chạy trong trình duyệt của bạn, không bao giờ trên máy chủ của chúng tôi), hoặc tự chạy lệnh bên dưới. Dù theo cách nào, hãy dán cùng một giá trị vào cả bộ theo dõi và bảng điều khiển.
openssl rand -hex 32 - Dựng mint endpoint
Một tuyến POST công khai đứng trước ví của bạn. Nó dùng createMoneroCreator của gói để tạo một địa chỉ mới cho mỗi đơn hàng. Đây là thứ duy nhất bạn phơi ra internet, và an toàn để phơi ra: nó trả về một địa chỉ nhận và không di chuyển tiền.
// POST /coin-moebius/monero/mint import { createMoneroCreator } from '@aquarian-metals/coin-moebius-monero/server'; const mint = createMoneroCreator({ walletRpcUrl: 'http://127.0.0.1:18083/json_rpc', store: myStore, xmrPerUnit: async (cur) => (cur === 'XMR' ? 1 : await myPriceFeed(cur)), }); // return mint({ productId, amount, currency, metadata }) as JSONBạn chọn giá đến từ đâu. Coin Moebius không bao giờ gọi một bộ cung cấp giá.
- Chạy bộ theo dõi và trỏ nó về chúng tôi
Bộ theo dõi là chương trình luôn-bật kiểm tra ví của bạn mỗi vài giây và ký cho chúng tôi một thông điệp khi một khoản thanh toán xác nhận. Đặt URL webhook của nó thành địa chỉ dự án của bạn (bên dưới) và bí mật của nó thành giá trị bạn đã tạo. Chạy nó ngay cạnh ví của bạn, dưới systemd hoặc Docker.
import { createMoneroIndexer } from '@aquarian-metals/coin-moebius-monero/server'; const watcher = createMoneroIndexer({ walletRpcUrl: 'http://127.0.0.1:18083/json_rpc', store: myStore, webhookUrl: process.env.MONERO_WEBHOOK_URL, // your Coin Moebius URL, below hmacSecret: process.env.MONERO_HMAC_SECRET, // the secret you generated requiredConfirmations: 10, }); watcher.start();Công thức bộ theo dõi: indexer.js + systemd unit + docker-compose ↗
Nó được thiết kế để bắt kịp. Nếu nó offline một quãng, lần chạy tiếp theo thấy các khoản thanh toán nó bỏ lỡ và báo cho chúng tôi lúc đó. Một máy chủ tại nhà cũng ổn; bạn không cần thời gian hoạt động hoàn hảo.
- URL webhook của bạn
Đặt webhookUrl của bộ theo dõi thành địa chỉ dự án của bạn. Id dự án của bạn nằm trong cài đặt dự án trong bảng điều khiển.
https://api.coinmoebius.com/webhook/monero/<your project id> - Kết nối trong bảng điều khiển
Thêm nhà cung cấp, chọn Tự làm nhà cung cấp của chính mình, rồi Monero. Dán mint endpoint URL của bạn và webhook secret. Đó là tất cả những gì chúng tôi lưu, và cả hai giá trị đều không thể chạm vào ví của bạn.
Sau khi bạn kết nối
Không có sandbox cho một node tự lưu trữ, nên khoản thanh toán thật nhỏ đầu tiên của bạn chính là bài kiểm tra:
- Tạo một sản phẩm và đặt nút mua lên một trang (một tệp HTML cục bộ cũng được) trỏ về dự án của bạn.
- Trả một khoản Monero nhỏ từ ví của chính bạn.
- Chờ các xác nhận. Monero mất khoảng hai mươi phút để xác nhận hoàn toàn, theo thiết kế.
- Mở tab Giao dịch. Khi hàng mới đạt succeeded, mint endpoint, bộ theo dõi, và bí mật của bạn đều hoạt động trọn vẹn đầu cuối.
Khắc phục sự cố
Khâu thanh toán thất bại ngay lập tức.
Chúng tôi không tiếp cận được mint endpoint của bạn. Xác nhận nó là một URL https công khai và rằng node của bạn đang online. Bảng điều khiển hiển thị điều này dưới dạng một thông báo về khả năng tiếp cận khi bạn lưu.
Người mua đã trả nhưng đơn hàng vẫn đang chờ.
Hoặc bộ theo dõi không chạy, hoặc bí mật của nó không khớp. Xác nhận tiến trình bộ theo dõi đang chạy và rằng MONERO_HMAC_SECRET của nó là chính xác giá trị bạn đã dán vào bảng điều khiển.
Khoản thanh toán mất một lúc mới hiện.
Đó là bình thường. Monero xác nhận qua nhiều khối; bộ theo dõi chờ mười xác nhận (khoảng hai mươi phút) trước khi nó báo thành công.
Cần biết
Giữ một ví chỉ-xem trên máy hot. Bộ theo dõi chỉ cần thấy các khoản thanh toán đến. Giữ khóa chi tiêu của bạn trên một máy riêng, offline và quét tiền từ đó.
Không bao giờ phơi wallet RPC. Chỉ mint endpoint là công khai. Gắn wallet RPC vào localhost hoặc một mạng riêng mọi lúc.
Thời gian ngừng hoạt động là rẻ. Bộ theo dõi bắt kịp sau một lần ngừng hoạt động và báo cáo các khoản thanh toán nó bỏ lỡ. Không gì bị mất.
Xoay bí mật. Tạo một bí mật mới bất cứ lúc nào, rồi dán nó vào cả bộ theo dõi và bảng điều khiển.
Monero circular economy
Câu hỏi? Join our Discord