The order will start inscribing once the “payAddress” receives the required “amount”. For example, if an order requires 3000 satoshis, you have to send 3000 satoshis to the payAddress. After that, the inscription will be processed.
Please refer to the latest Fractal Inscribe Fee Rules, Fractal Standard Inscribe Fee Rules, and Bitcoin Inscribe Fee Rules for detailed charging standards.
No. Open API and UniSat website inscribing services do not share data. This ensures the stability of the Open API interface and prevents it from being affected by frequent changes to the website inscribing service. For similar reasons, the orders on open-api do not enjoy discounts from the OG card or .unisat domain.
The total amount is: Total = minUtxoTotal + networkSats + serviceFee + devFee
Please use the formulas and examples provided in the Fractal Inscribe Fee Rules and Bitcoin Inscribe Fee Rules. If you need programmatic estimation, please use the official SDK or tools that follow the latest rules.
For more details, always refer to the latest fee rules documentation.
Below is a sample JavaScript function to estimate the total amount to pay for an inscribe order. Please ensure the service fee calculation matches the latest fee rules for your chosen network (Fractal or Bitcoin).
// Parameters
const fileCount = 1000; // number of inscriptions/files
const minUtxoPerInscription = 546; // minimum UTXO per inscription (sats)
const fileSize = 1000000; // total size of all files in bytes
const contentTypeSize = 100; // total size of content types in bytes
const feeRate = 10; // network fee rate (sat/vB)
const devFee = 1000; // developer fee (if any)
// 1. Calculate minUtxoTotal
const minUtxoTotal = minUtxoPerInscription * fileCount;
// 2. Estimate networkSats (miner fee)
// This is a simplified estimation. Actual calculation may vary by implementation.
const baseSize = 88;
const addrSize = 25 + 1; // adjust if using different address types
const networkSats = Math.ceil(((fileSize + contentTypeSize) / 4 + (baseSize + 8 + addrSize + 8 + 23)) * feeRate);
// 3. Calculate serviceFee (platform fee)
// You must implement this function according to the latest fee rules for your network.
function calculateServiceFee({ fileCount, networkType }) {
if (networkType === 'bitcoin') {
// Example: Bitcoin V2 rules (see btc-inscribe-fee-rules.md)
if (fileCount <= 20) return 0;
return Math.min(3000 + (fileCount - 20) * 150, 4999);
} else if (networkType === 'fractal') {
// Example: Fractal event rules (see fractal-openapi-inscribe-fee-rules.md)
if (fileCount <= 6) return fileCount * 100000;
// 1 FB = 100,000,000 sats
const fb = 100000000;
const fee = 0.005 * fb + Math.min(fileCount, 500) * 0.00025 * fb;
return Math.ceil(fee);
}
// Add more networks as needed
return 0;
}
const networkType = 'bitcoin'; // or 'fractal'
const serviceFee = calculateServiceFee({ fileCount, networkType });
// 4. Add devFee if applicable
// 5. Calculate total amount
const totalAmount = minUtxoTotal + networkSats + serviceFee + devFee;
console.log('Total amount to pay:', totalAmount);
Note:
- The above code is for reference only. Please always check the latest fee rules documentation for accurate calculation.
- For production use, you should handle address type, file size, and fee rate more precisely.