5.4.0
最初の公開リリース公開サイトが稼働開始:手数料エンジン(完全な内訳付き)、実際の制限付きのペイアウト手段カタログ、コリドーベースのURLアーキテクチャ、そしてそれらすべてを検証可能にする透明性ページ。このログは実際の公開日にここから始まります。
追加(21)
src/lib/pricing.ts
完全な内訳付きの手数料エンジン。ネットワークコストは変換前にアセットから現物で差し引かれ、その後、当社のマージンと手段手数料がそれぞれ別の行に表示されます。会計上の不変条件により、すべての見積もりで、総額から各行の合計を差し引いたものが純額と正確に一致することが最小単位までチェックされます。釣り合わない場合は、隠れたマージンを通すのではなく、エラーを発生させて見積もりを拒否します。
src/lib/pricing.ts
スプレッドポリシーが公開され、コードによって強制されます:基本90ベーシスポイント、変動性の高いアセットに35、ベータコリドーに25、3つのボリューム層にわたってマイナス15、30、45ベーシスポイント。当社側に他の料金は存在しません。
src/lib/pricing.ts
逆入力:受け取りたい金額を入力でき、必要な入金額は二分探索によって解決されます。固定手数料により関数は非線形になります—代数的な逆算では毎回数セントずれます。
src/lib/money.ts
すべての金額は最小単位の整数(bigint)として、すべてのレートはDecimalとして扱われます。0.1 + 0.2 が 0.3 にならないJavaScriptの浮動小数点数を通過する金額はありません。
src/lib/rates.ts
レートの鮮度は、すべての確定見積もりの前にチェックされます。ソースの最大許容年齢を超えると、エンジンは古いレートのエラーを発生させ、見積もりを拒否します。キャッシュから古い価格を提供することは、ここではパフォーマンスの問題ではなく、財務上のバグとして扱われます。
src/app/api/quote/route.ts
公開見積もりエンドポイント。スキーマ検証済みの入力、no-store応答、ミッドマーケットレート、実効レート、ベーシスポイントでの総ギャップを含む完全な行ごとの内訳。手段の制限違反は、HTTPエラーではなく、正確な制限とともに応答本文で返されます。
src/data/payout-rails.ts
ペイアウト方法カタログ。それぞれについて、決済通貨、対象国、p50およびp95遅延、営業日および締め切りルール、最小および最大金額(最小単位)、実際の手数料、受取人フィールドスキーマが含まれます。
src/data/corridors.ts
コリドーベースのURLアーキテクチャ。複数国の手段は、アセットごとに単一のページを生成します:SEPAはフランスとベルギーで同一であり、2つのページは同じことを言うことになります。ローカル手段—PIX、SPEI、M-Pesa、NIP、Interac—は国ごとに1ページを生成します。なぜなら、国が識別子形式、制限、税務処理を担うからです。生の約2,200の組み合わせマトリックスは桁違いに減少し、生き残ったすべてのページは、そのページだけが伝えられる事実を伝えます。
src/data/corridors.ts
ローンチウェーブとインデックスゲート。コリドーは、そのウェーブのコンテンツが実際に書かれた後にのみインデックス用に提供されます。他のものは到達可能で機能しますが、インデックスからは除外されます。まだ書いていないページを検索エンジンにインデックスさせるよう求めることはありません。
src/data/assets.ts
アセットカタログ:基本単位の小数、受け入れられるネットワーク、ネットワーク手数料が操作を食いつぶす最低入金額、レートロック期間—変動性の高いアセットよりもステーブルコインで長くなります。
src/data/networks.ts
ネットワークカタログ:必要な確認数、平均ブロック時間、アドレス検証パターン、およびXRP、Stellar、TONについては、省略すると資金が失われるメモフィールド。
src/data/geo.ts
地理的参照データ:オープンな国、準備中の国、および理由とともに拒否された国—国際制裁、制限措置、または許容できないマネーロンダリングリスク。理由は国ごとに公開されます。
src/config/company.ts
会社に関する事実上の主張の単一レジストリ。法的名称、登録、設立年、規制上のステータス、ボリューム、レビュー:各値は入力されるか、保留中とマークされます—そして保留中の値は決して表示されません。サイトは、独自のデータから計算されたもののみを主張できます。
src/components/JsonLd.tsx
未入力のフィールドをすべて省略する構造化データ。設立日、ライセンス番号、総合評価は、実際になるまで検索エンジンに宣言されません。
src/i18n/routing.ts
フランス語を含むすべての言語にロケールプレフィックス。同じページを「/」と「/fr/」で提供すると、常に重複が発生します。対称性により、hreflangおよびcanonicalタグのすべての特殊なケースが排除されます。
src/app/[locale]/statut
サービスステータスページ:ペイアウト手段ごと、監視対象ネットワークごとに1つのコンポーネント、プローブがチェックする内容の正確な説明、重大度ポリシー、インシデントレポートテンプレート。測定されるまで、可用性パーセンテージは表示されません。
src/app/[locale]/docs
公開APIドキュメント:認証、ページネーション、冪等性、エラーカタログ、署名付きウェブフック。サンプル応答は、モックアップではなく、見積もりエンドポイントからの実際の応答です。
src/app/[locale]/reclamations
書面による苦情処理手順:苦情とサポートリクエストの違い、3つのエスカレーションレベル、当社が守る遅延、回答に満足できない場合に何が起こるか。
src/app/[locale]/presse
メディアキット:コードから生成されたダウンロード可能なロゴ、正確な値のパレット、引用可能な短い説明と長い説明。引用する報道がないため、報道機関のリストはありません。
src/app/[locale]/affiliation
アフィリエイトプログラムは、総額ではなく、実際に徴収されたマージンに基づいて支払われます。パートナーは、顧客により多くのコストがかかるコリドーをプッシュしても利益を得られません。
src/app/[locale]/plan-du-site
データから生成されたサイトマップ。インスタント検索フィルター付き。公開されたすべてのページがここに表示されます:ページが存在し、このマップにない場合、それは欠陥です。
セキュリティ(3)
src/lib/rates.ts
本番ガード:開発で使用される決定論的レートソースは本番環境では起動できません。プロセスは凍結された価格を見積もるのではなく、起動を拒否します。
src/middleware.ts
レンダリング前の地理的拒否。404ではなく明示的なHTTP 451:拒否する場合、その理由を述べます。IPアドレスだけでは何も証明されないため、拒否は注文作成時にサーバー側で再チェックされます。
next.config.ts
すべての応答にセキュリティヘッダー:HSTS with preload、フレーミング拒否、MIMEスニッフィングブロック、制限されたリファラーポリシー、クロスオリジン分離、マイク、地理位置情報、支払い権限のオフ。
ポリシー(5)
src/data/payout-rails.ts
回収手段—iDEAL、Bizum、BLIK、TWINT、Satispay、MB WAY、QRIS—は、非表示にする代わりに、理由とともに利用不可と宣言されます。これらは、資金を受け取るためではなく、商人に支払うためのものです。それぞれについて、代わりに使用する手段が示されます。
src/data/payout-rails.ts
Zelleは恒久的に利用不可とマークされています:その規則は、第三者の商業的支払いを契約上禁止しています。当社のためにコンプライアンスに従って資金をプッシュできるプロバイダーはありません。それを伝えることは、人々に期待を持たせるよりも優れています。
src/data/payout-rails.ts
構築済みだが閉鎖されている手段には、正確な規制上の理由が記載されています:UPIのTDS源泉徴収およびFIU-IND登録、PayNowのMASライセンス、南アフリカのSARB報告、PayIDのAUSTRAC登録、PromptPayのライセンスパートナー。日付を発表するよりも、障害に名前を付けることを選びます。
src/data/assets.ts
Moneroはカタログに含まれていますが、強化された匿名性アセットとしてフラグが立てられ、提供されていません。欧州のマネーロンダリング防止規制では、プロバイダーは2027年7月10日からこれを上場廃止することが義務付けられています。静かに消すのではなく、表示して説明します。
docs/CONVENTIONS.md
強制力のある編集方針:創業年、ライセンス番号、処理量、顧客数、推薦文、パートナーロゴは、いかなるページにもハードコードされません。成熟度は、書かれた内容の深さから来るものであり、作り上げられた証拠から来るものではありません。