KAI-Pay

شرح حالات الاستخدام

ما يمكنك فعله باستخدام KAI-Pay – في كل حالة نبدأ بمزاياك، ثم نشرح كيف يعمل والنهج الذي نتبعه. يتم الدفع دائمًا بالبيتكوين عبر Lightning؛ وتبقى مفاتيحك معك.

التحصيل في نقطة البيع

متاح

تقبل نقطة البيع في KAI-Pay مدفوعات البيتكوين عبر Lightning – عند منضدة البيع أو في كشك السوق أو في الفعاليات، على جهاز مخصص لنقطة البيع أو مباشرةً على هاتفك.

مزاياك

  • يصل المال خلال ثوانٍ إلى محفظتك الخاصة ذات الحفظ الذاتي – ولا يحتفظ به أي طرف وسيط في أثناء ذلك.
  • لا جهاز دفع بالبطاقات، ولا عقد، ولا تسجيل: يكفي متصفح على جهاز لوحي أو هاتف أو حاسوب محمول.
  • آمنة لفريقك: أجهزة نقطة البيع تستطيع التحصيل فقط، ولا يمكنها أبدًا إرسال المال – مثالية لأجهزة الموظفين.
  • يدفع عملاؤك بأي محفظة Lightning، في أي مكان في العالم.
  • التحصيل بوحدة sat أو بعملات EUR وUSD وGBP وCHF وCAD وAUD وJPY – ويُثبَّت سعر الصرف لكل فاتورة.
  • اختيار المنتجات بلمسة، وإيصال بصيغة PDF، وإقفال يومي وشهري مع تصدير CSV، واسترداد المبالغ مباشرةً في المحفظة.

كيف يعمل

  1. في المحفظة، ضمن «نقطة البيع والإقفال»، أعِدّ نقطة البيع – افتحها على الجهاز نفسه أو انقلها إلى جهاز نقطة بيع عبر رمز QR.
  2. اكتب المبلغ أو المس المنتجات، ثم اختر «تحصيل». تعرض نقطة البيع فاتورة Lightning على شكل رمز QR.
  3. يمسح العميل الرمز ويدفع. تعرض نقطة البيع «تم الدفع» وإيصال دفع مرقّمًا.

نهجنا

نقطة البيع عن قصد صفحة مستقلة بلا مفاتيح: تستطيع إنشاء الفواتير، لكنها لا تستطيع تحريك المال. ولا تأخذ أسعار الصرف إلا حديثة (جُلبت قبل 5 دقائق على الأكثر) من mempool.space. ومع كل دفعة ترسل ملاحظة مشفّرة تتضمن نقطة البيع ورقم الإيصال والمبلغ والبنود، لا تستطيع قراءتها إلا محفظتك – ومنها تحسب المحفظة إقفالك.

من المفيد أن تعرف: نقطة البيع طرفية دفع، وليست آلة تسجيل نقدية؛ والإيصال إثبات للدفع، وليس إيصال آلة تسجيل نقدية. KAI-Pay نسخة تجريبية عامة.

الدفع لخدمات L402

في المحفظة

L402 معيار مفتوح يتيح للمواقع الإلكترونية وواجهات البرمجة (APIs) وغيرها من الخدمات الإلكترونية طلب مبالغ صغيرة مباشرةً عبر Lightning – بدلًا من حساب مستخدم أو اشتراك أو بطاقة ائتمان. يشير الاسم إلى رمز حالة HTTP رقم 402 «Payment Required» (الدفع مطلوب)؛ وقد طوّرت L402 شركة Lightning Labs (الاسم السابق: LSAT).

شرح بالرسوم المتحركة · الحلقة 7 أدخل عملة معدنية، من فضلك.

هكذا تدفع لخدمة مقابل كل طلب – دون اشتراك ودون حساب. من جهتك، ومن جهة برنامجك، ومع نظرة إلى ما وراء الكواليس.

وجهة النظر
محاكاة بقيم توضيحية – لا أموال حقيقية، ولا خدمة حقيقية، ولا وصول حقيقي. ومدة الرسوم المتحركة ليست وعدًا بشأن المدفوعات الحقيقية.
KAI
  • 402. محجوز منذ 1997. والآن صار للرقم عمل.
  • نظرة إلى المبلغ. ثم انطلق.
  • لا اشتراك. لا حساب. هذا الطلب فقط.
  • الإيصال هو المفتاح. أنيق جدًا.
  • الإبراز عليك أنت. أنا مقدّم البرنامج، لا حارس الباب.
  • البرنامج يسأل. الخادم يقول: عملة، من فضلك.
  • لحظة انتظار. الكلمة الأخيرة للإنسان.
  • البرامج ليس لها حساب مصرفي. ولا تحتاج إليه هنا.
  • نسخ، لصق، انتهى. طراز قديم، لكنه آمن.
  • 200 OK. أجمل رقم بعد 402.
  • محجوز منذ 1997. والمستقبل دقّ الجرس.
  • Hash مقابل Hash. الرياضيات لا تكذب.
  • لا مخزن وسيط. المال لا يتوقف في أي مكان.
  • Preimage يدخل، Hash يخرج. يتطابق. طَق.
  • تذكرة زائد إيصال يساوي وصولًا. هذا كل السحر.
الخطوات
ماذا لو تعثّر شيء؟

عطل تقول المحفظة: «الفاتورة لا تخص هذا الوصول (Payment-Hash في Macaroon مختلف) – لا تدفع.» ولا تنتقل أي أموال. KAI: «لا تتطابق؟ إذن لا أحد يدفع هنا.»

عطل تقول المحفظة: «تم الدفع لهذا الوصول بالفعل أو أن هناك دفعة جارية – لن يتم الدفع مرة أخرى.» وتعرض إثبات الوصول الموجود. KAI: «مرة واحدة تكفي. صدقًا.»

  1. الطلب ترسل طلبًا إلى الخدمة، مثلًا عن الطقس يوم السبت. فتردّ بالرمز 402: يرجى الدفع. وترسل معه مطالبة تتضمن مفتاح الوصول والفاتورة.
  2. التحقق تلصق المطالبة في المحفظة ضمن «إرسال». تتحقق المحفظة مما إذا كانت الفاتورة تخص هذا الوصول. ثم تعرض المبلغ والرسوم وإجمالي الخصم.
  3. الدفع لا تضغط على «تأكيد وإرسال» إلا عندما يكون كل شيء صحيحًا. الحد الأقصى لمدفوعات L402 هو 1,000 sat.
  4. الإيصال كإيصال، تحصل محفظتك على رمز سري. ومع مفتاح الوصول يشكّل «إثبات الوصول (L402)» الخاص بك. وهو يعمل ككلمة مرور، فلا تشاركه.
  5. الإبراز تنسخ الإثبات، ويرسله برنامجك مع الطلب. المحفظة لا تتصل بالخدمة بنفسها. أما منحك الوصول ومدته فتقررهما الخدمة.
  1. الطلب يستدعي برنامجك عنوان الخدمة، فيتلقى في الرد HTTP 402 مع المطالبة.
  2. التحقق يمرّر إليك المطالبة. تلصقها في المحفظة ضمن «إرسال»، والبرنامج ينتظر.
  3. الدفع البرنامج لا يدفع بنفسه. ولا تدفع المحفظة إلا عندما تضغط على «تأكيد وإرسال».
  4. الإيصال تنسخ إثبات الوصول من المحفظة وتعطيه لبرنامجك.
  5. الإبراز يرسله في ترويسة Authorization ويتلقى الإجابة، وهي هنا خريطة الطقس.
  1. الطلب يحمل الرد الترويسة WWW-Authenticate: L402 macaroon="…", invoice="…". الـ Macaroon هو التذكرة، والفاتورة فاتورة Lightning عادية.
  2. التحقق في التذكرة يوجد Payment-Hash الخاص بالفاتورة. فإن اختلف، لا تدفع المحفظة. وهذا يحمي من فاتورة مُستبدلة، لا من مطالبة مزوّرة بالكامل.
  3. الدفع تنتقل الدفعة عبر Lightning مباشرةً إلى عقدة الخدمة. ولا يحتفظ KAI-Pay بأي أموال خلال ذلك.
  4. الإيصال يُسمّى الإيصال Preimage. وقيمة SHA-256 له هي بالضبط Payment-Hash الموجود في التذكرة – ولهذا لا يناسب إلا هذه التذكرة وحدها.
  5. الإبراز الترويسة: Authorization: L402 <macaroon>:<preimage>. تتحقق الخدمة من الاثنين وتتيح الوصول.

تدفع المحفظة الفاتورة فقط. أما منحك الوصول ومدته فتقررهما الخدمة. ولا يوجد إثبات الوصول إلا على هذا الجهاز – تعامل معه ككلمة مرور.

مزاياك

  • لا حساب، ولا اشتراك، ولا بيانات بطاقة: ادفع واستخدم الخدمة فورًا.
  • ادفع فقط مقابل ما تستخدمه فعلًا – بدءًا من بضع sat لكل طلب، بل حتى مبالغ تقل عن سنت واحد.
  • يتم الدفع خلال ثوانٍ، في أي مكان في العالم وعلى مدار الساعة – دون بنك وسيط.
  • خصوصية أكبر: لا تكشف الدفعة للخدمة اسمك ولا بيانات بطاقتك.
  • يمكن للبرامج ووكلاء الذكاء الاصطناعي أيضًا الدفع بهذه الطريقة – فالبرنامج ليس لديه حساب مصرفي، لكنه يستطيع مع ذلك سداد فاتورة Lightning.

فيمَ يمكنك استخدامه

  • الدفع لكل طلب بدلًا من الاشتراك: مثل البيانات، أو الأسعار، أو بيانات الخرائط أو الطقس، أو إجابات الذكاء الاصطناعي، أو القدرة الحاسوبية.
  • فتح المحتوى والأدوات دون إنشاء حساب مستخدم.
  • العمليات المؤتمتة: تدفع البرامج ووكلاء الذكاء الاصطناعي للخدمات عن كل استدعاء، دون الحاجة إلى إنشاء حساب ببيانات دخول لدى كل مزوّد.

كيف يعمل

  1. ترسل أنت – أو برنامجك – طلبًا إلى الخدمة. وبدلًا من الإجابة تصل مطالبة L402: مفتاح وصول («Macaroon») وفاتورة Lightning مطابقة له.
  2. تلصق المطالبة في المحفظة ضمن «إرسال» وتدفع. وكإيصال تحصل المحفظة على قيمة سرية («Preimage») لا يحصل عليها إلا من دفع.
  3. يشكّل مفتاح الوصول والإيصال معًا إثبات الوصول. يرسله برنامجك في ترويسة Authorization؛ فتتحقق منه الخدمة وتتيح الإجابة.

نهجنا

في KAI-Pay، تُعدّ L402 وظيفة خاصة بالمحفظة وحدها: فالمحفظة لا تتصل بالخدمة بنفسها ولا تُبلغ KAI-Pay بأي شيء. ولا تدفع إلا إذا ثبت أن الفاتورة تعود إلى مفتاح الوصول، وبحد أقصى 1000 sat لكل دفعة (في المرحلة التجريبية)، ولا تدفع مرة أخرى مقابل وصول مدفوع مسبقًا ما دامت الدفعة مسجّلة في السجل على جهازك. وتعرض الخدمات غير المعروفة مع تحذير. وتحفظ إثبات الوصول على جهازك فقط. وبالنسبة إلى وكلاء الذكاء الاصطناعي: التحكم بدلًا من القيادة الآلية – راجع «إدارة ميزانية الذكاء الاصطناعي».

من المفيد أن تعرف: المحفظة تدفع الفاتورة فقط؛ أما إن كانت الخدمة ستتيح الوصول ولأي مدة، فالخدمة هي التي تقرر ذلك. وهي تحميك من فاتورة مستبدَلة، لا من مطالبة مزوّرة بالكامل – لذا تحقّق ممن صدرت. وهذه الميزة موجّهة اليوم أساسًا إلى المطورين والمهتمين بالتقنية.

ربط خدمة

Beta

استلام المدفوعات لمتجرك أو مشروعك أو موقعك الإلكتروني – برابط أو زر، دون عقد مع مزوّد خدمات دفع، ودون خادم خاص بك، ودون عقدة Lightning خاصة بك. وإن أردت، تُبلغ كل دفعة متجرك بإشعار موقَّع.

شرح بالرسوم المتحركة · الحلقة 8 المال هنا، والإشعار هناك.

هكذا يستقبل متجرك المدفوعات – أولًا بزر، ثم تلقائيًا بإشعار يجري التحقق منه. دون عقد مع مزوّد خدمات دفع.

المستوى
محاكاة بقيم توضيحية – لا أموال حقيقية، ولا متجر حقيقي، ولا إشعار حقيقي. ومدة الرسوم المتحركة ليست وعدًا بشأن المدفوعات الحقيقية.
KAI
  • زر واحد. لا نص برمجي. لا عقد.
  • نظرة إلى المبلغ. ثم انطلق.
  • مباشرةً إليك. وأنا لا أحتفظ بشيء.
  • صفحة الدفع لطيفة. ومحفظتك هي الدليل.
  • الدفعة أولًا، ثم البضاعة. كلاسيكي.
  • فاتورة لكل طلب. النظام أولًا.
  • نظرة إلى المبلغ. ثم انطلق.
  • المال هنا. الإشعار هناك. خطّان، ولا خلط.
  • تحقّق من الختم. دائمًا. حتى يوم الجمعة.
  • الإشعار مرتين لا يعني الدفع مرتين.
  • رابط واحد. لا نص برمجي. موقعك يبقى نظيفًا.
  • لا Payment-Hash، لا أتمتة. بهذه البساطة.
  • الحفظ الذاتي يعني: مفتاحك، محفظتك.
  • HMAC: ختم شمع من الرياضيات.
  • 200 تعني: وصل. ومع ذلك قد يصل مرتين.
الخطوات
ماذا لو تعثّر شيء؟

عطل إذا لم يتطابق الختم، يرفض متجرك الإشعار ولا يسلّم شيئًا. KAI: «لا ختم، لا طرد.»

عطل لقد وصل المال رغم ذلك. تحقّق من الدفعة الواردة في محفظتك أو عبر عنوان التحقق الخاص بالفاتورة – ولا تطلب المال مرة أخرى. KAI: «المال وصل، والرسالة ضاعت. لا داعي للتحصيل مرتين.»

  1. الدمج في المحفظة ضمن «ربط خدمة» تُنشئ رابط دفع، مع المبلغ ورقم الطلب إن أردت. ويوضع على موقعك الإلكتروني كزر «الدفع بالبيتكوين» – دون نص برمجي.
  2. الدفع يضغط زبونك على الزر، فيرى الفاتورة ويدفع بأي محفظة Lightning.
  3. المال يذهب المال مباشرةً إلى محفظتك. لا يحتفظ به أحد في منتصف الطريق.
  4. الإشعار تتحقق من الدفعة الواردة في محفظتك. وعبارة «تم الدفع» على صفحة الدفع ليست إيصال دفع.
  5. التسليم بعد ذلك فقط تسلّم الطلب، مثلًا ملف التنزيل.
  1. الدمج للأتمتة، يُنشئ متجرك فاتورة خاصة لكل طلب. ومن خلالها يعرف لاحقًا أي طلب تم دفعه.
  2. الدفع يرى زبونك الفاتورة في المتجر ويدفع بأي محفظة Lightning.
  3. المال يذهب المال مباشرةً إلى محفظتك – لا إلى المتجر. والمتجر لا يتلقى إلا إشعارًا.
  4. الإشعار يرسل مزوّد خدمة Spark إلى متجرك إشعارًا موقَّعًا. يتحقق متجرك من الختم، ويجد الطلب عبر الفاتورة، ويقارن المبلغ.
  5. التسليم يسلّم متجرك الطلب مرة واحدة بالضبط. وإذا وصل الإشعار مرتين، يبقى التسليم مرة واحدة.
  1. الدمج يؤدي الرابط إلى kai-pay.net/@name?amount=…&note=…؛ والزر رابط بسيط دون نص برمجي. وللأتمتة يجلب متجرك الفاتورة بنفسه من خادم الدفع الخاص بعنوان Lightning لديك.
  2. الدفع فاتورة Lightning تتضمن المبلغ وPayment-Hash. ومع الزر لا تُنشأ إلا على صفحة الدفع – ولذلك لا يعرف متجرك قيمة Payment-Hash الخاصة بها.
  3. المال Lightning، مباشرةً إلى محفظتك ذات الحفظ الذاتي. ولا يحتفظ KAI-Pay بأي أموال خلال ذلك.
  4. الإشعار تُبلغ Lightspark عنوان https الخاص بك بكل دفعة Lightning واردة إلى المحفظة. والختم هو الترويسة X-Spark-Signature: قيمة HMAC-SHA256 بسرّك الذي لا يعرفه إلا متجرك وLightspark.
  5. التسليم يحسب متجرك Payment-Hash من الإيصال (payment_preimage)، ويجد الطلب، ويسجّله مرة واحدة، ويردّ بـ HTTP 200.

يعلم متجرك بكل دفعة Lightning واردة إلى هذه المحفظة (المبلغ والتوقيت وإثبات الدفع) – بما في ذلك الدفعات الخاصة. يُفضَّل أن تستخدم للمتجر محفظة مستقلة. روابط الدفع متاحة لعناوين Lightning لدى breez.tips.

مزاياك

  • لا عقد مع مزوّد خدمات دفع ولا تكاليف إعداد: يكفي رابط واحد.
  • يذهب المال مباشرةً إلى محفظتك ذات الحفظ الذاتي.
  • يعلم متجرك بكل دفعة واردة فورًا – بإشعار موقَّع بسرّ لا يعرفه إلا متجرك ومزوّد خدمة Spark. وإذا تحقّق متجرك من الإشعار، أمكنه تسجيل الطلبات تلقائيًا.
  • المدفوعات عبر Lightning نهائية – لا عمليات استرجاع للمدفوعات (Chargebacks) كما في البطاقات.
  • يدفع العملاء من جميع أنحاء العالم خلال ثوانٍ، بأي محفظة Lightning.

كيف يعمل

  1. في المحفظة: القائمة ← ربط خدمة. هناك تجد رابط الدفع الخاص بك kai-pay.net/@yourname (لذلك تحتاج إلى عنوان Lightning، تُعدّه ضمن «استلام»).
  2. اختياريًا: أدخل المبلغ ورقم الطلب – فيُنشئ الرابط فورًا فاتورة مطابقة. انسخ الرابط أو الزر الجاهز (HTML، بلا سكربت) إلى موقعك الإلكتروني أو فواتيرك أو رسائل بريدك الإلكتروني.
  3. للتأكيدات التلقائية: ضمن «إشعار إلى متجرك» أدخل عنوان متجرك (https://…)، وأكّد، ثم انسخ السرّ المعروض إلى متجرك. ومنذ ذلك الحين يرسل مزوّد خدمة Spark، أي Lightspark، إشعارًا موقَّعًا إلى هناك مع كل دفعة Lightning واردة.
  4. يتحقق متجرك من التوقيع ويربط الدفعة بالطلب – وتجد الطريقة أدناه في «للمطورين».

نهجنا

بلا وسيط: صفحة الدفع لا تحتفظ بشيء، والإشعارات تذهب مباشرةً من مزوّد خدمة Spark إلى متجرك – ولا يراها خادمنا. وتعرض المحفظة سرّ التوقيع مرة واحدة فقط ولا تحفظه.

للمطورين

فاتورة لكل طلب: استعلم من خادم الدفع الخاص بعنوان Lightning لديك (LNURL-pay، LUD-06): أولًا /.well-known/lnurlp/yourname على نطاقه، ثم callback الخاص به مع amount (بوحدة millisatoshi) واختياريًا comment. يتضمن الرد الفاتورة (pr) وعنوان تحقق (verify، LUD-21). احفظ مع الطلب قيمة payment_hash الخاصة بالفاتورة.

الإشعار يصل كطلب POST بصيغة JSON. تحقّق أولًا من الترويسة X-Spark-Signature: قيمة HMAC-SHA256 للمحتوى غير المعدَّل باستخدام سرّك، بالصيغة الست عشرية (hex). بعد ذلك يجب أن يكون type = SPARK_LIGHTNING_RECEIVE_FINISHED، وstatus = TRANSFER_COMPLETED، وأن تكون قيمة SHA-256 للحقل payment_preimage هي payment_hash الخاص بالفاتورة المدفوعة (الحقول وفق توثيق Breez حول Webhooks). مثال لبيئة Node.js:

import { createHash, createHmac, timingSafeEqual } from 'node:crypto'

// raw: the unmodified request body (Buffer); secret: the secret shown once in the wallet
// orders: your order store; amountMatches(order, amount): compares in the same unit (amount = { value, unit })
// Returns 'reject' (answer 401), null (nothing to do - answer 200) or the booked order (answer 200).
export function kaiPayPayment(raw, signatureHeader, secret, orders) {
  const expected = createHmac('sha256', secret).update(raw).digest()
  const given = Buffer.from(String(signatureHeader ?? '').replace(/^sha256=/, ''), 'hex')
  if (given.length !== expected.length || !timingSafeEqual(given, expected)) return 'reject'  // wrong seal: answer 401
  // From here on always answer 200 - the notification comes for every Lightning payment of the wallet.
  const e = JSON.parse(raw)
  if (e.type !== 'SPARK_LIGHTNING_RECEIVE_FINISHED' || e.status !== 'TRANSFER_COMPLETED' || !e.payment_preimage) return null
  // SHA-256 of the preimage = payment_hash of the paid invoice
  const paymentHash = createHash('sha256').update(Buffer.from(e.payment_preimage, 'hex')).digest('hex')
  const order = orders.byPaymentHash(paymentHash)
  if (!order) return null                                    // not one of your invoices (e.g. a private payment)
  if (order.paid) return order                               // repeated notification: already booked
  if (!amountMatches(order, e.invoice_amount)) return null   // wrong amount: do not release, check by hand
  return orders.markPaid(order)                              // markPaid must be atomic: only the first call books
}

أجب برمز HTTP 401 فقط إذا كان التوقيع غير صحيح، وفي غير ذلك دائمًا برمز 200 – حتى على إشعار متكرر أو على دفعة لا تخص أي طلب؛ ولا تُسجَّل الدفعة إلا مرة واحدة. المبلغ موجود في invoice_amount مع وحدته (unit)؛ قارنه بالطلب بالوحدة نفسها. وعند الشك، يؤكد عنوان التحقق الخاص بالفاتورة (settled: true) وصول الدفعة.

من المفيد أن تعرف: يصل الإشعار مع كل دفعة Lightning واردة إلى المحفظة، بما فيها الدفعات الخاصة – لذا يُفضَّل أن تستخدم محفظة مستقلة للمتجر. روابط الدفع kai-pay.net/@name متاحة لعناوين Lightning لدى breez.tips. KAI-Pay نسخة تجريبية عامة.

إدارة ميزانية الذكاء الاصطناعي

Beta

يمكن لمساعد ذكاء اصطناعي – مثل وكيل شخصي أو سكربت أو KAI – أن يقترح عليك مدفوعات. أنت تحدد لمن تُدفع وكم في اليوم وفي الشهر؛ وكل دفعة تؤكدها بنفسك.

شرح بالرسوم المتحركة · الحلقة 9 للذكاء الاصطناعي أفكار. ولك الزر.

هل يحق للذكاء الاصطناعي أن يدفع عنك؟ لا – لكن يحق له أن يسأل. هكذا تعمل ميزانية الذكاء الاصطناعي: من جهتك، ومن جهة المساعد، ومع نظرة إلى ما وراء الكواليس.

وجهة النظر
محاكاة بقيم توضيحية – لا أموال حقيقية، ولا مساعد حقيقي، ولا اقتراح حقيقي. ومدة الرسوم المتحركة ليست وعدًا بشأن المدفوعات الحقيقية.
KAI
  • زميل جديد. الهوية أولًا.
  • أنت تضع القواعد. وأنا أتلوها فقط.
  • نظرة إلى المبلغ. ثم انطلق.
  • محاولة لطيفة، يا زميل الصفيح.
  • الأفكار مجانًا. المال معك فقط.
  • يحق له أن يسأل. لا أكثر.
  • القواعد لا تعرفها إلا محفظتك. وهذا جيد.
  • الاقتراح أُرسل. والكرة في ملعبك.
  • زر خلف الزجاج. مبدأ مجرَّب.
  • الميزانية نفدت؟ انتهى الدوام لليوم.
  • البصمة: رياضيات لا حدس.
  • لا خادم. لا متلصّص.
  • P-256 يوقّع. والمحفظة تتحقق.
  • التسجيل أولًا، ثم الإرسال. محاسبة بحزام أمان.
  • غير واضح يعني: محجوز. لا: ضائع.
الخطوات
ماذا لو تعثّر شيء؟

عطل تقول المحفظة: «هذا المستلم غير مسموح به لهذا المساعد (القائمة ← ميزانية الذكاء الاصطناعي ← المستلمون والميزانية).» ولا يمرّ الاقتراح. KAI: «لست على القائمة؟ لن تمرّ من الفتحة.»

عطل تقول المحفظة: «المبلغ مع الرسوم يتجاوز الميزانية المتبقية للمساعد (القائمة ← ميزانية الذكاء الاصطناعي).» ولا يُدفع شيء. KAI: «الأفكار لديه كثيرة. الميزانية لا.»

عطل إذا لم يصل ردّ بعد الإرسال، يبقى المبلغ مع الرسوم محجوزًا ويستمر احتسابه من الميزانية. تحقّق أولًا من حالة الدفع – ولا تدفع مرة أخرى. KAI: «ما زال معلّقًا. لا تدفع مرة ثانية.»

  1. الربط ضمن «ميزانية الذكاء الاصطناعي» تربط مساعدًا عبر رمز أو رابط أو رمز QR. ثم تقارن بصمته.
  2. القواعد تحدّد المستلمين الذين يُسمح له باقتراح مدفوعات إليهم. ومعها ميزانية يومية وأخرى شهرية شاملة الرسوم، مثلًا 1,000 sat في اليوم (القيمة الافتراضية 5,000).
  3. الاقتراح يرسل المساعد اقتراحًا. تتحقق المحفظة من التوقيع والمستلم والميزانية. أما الغرض فيذكره المساعد – وتعرضه المحفظة بوصفه «الغرض حسب المساعد (غير متحقَّق منه)».
  4. التأكيد تضغط على «متابعة إلى الدفع»، ثم «تحقّق»، وبعدها فقط «تأكيد وإرسال». من دونك لا يحدث شيء.
  5. الميزانية يُحتسب المبلغ والرسوم من الميزانية: 100 sat زائد 3 sat رسومًا، من 1,000 إلى 897 sat. ويتم الدفع من محفظتك – فالميزانية حدّ، وليست رصيدًا مستقلًا.
  1. الربط أحصل على مفتاح أوقّع به الاقتراحات. أما كلماتك ورصيدك فلا أصل إليها أبدًا.
  2. القواعد لا أعرف قواعدك. المحفظة تتحقق منها مع كل اقتراح.
  3. الاقتراح أرسل إليك رابطًا فيه الاقتراح. تنتهي صلاحيته، ولا يصلح على جهازك إلا مرة واحدة.
  4. التأكيد لا أستطيع الدفع. الزر في جهتك من الزجاج.
  5. الميزانية إذا استُنفدت الميزانية، ترفض المحفظة اقتراحاتي حتى يبدأ اليوم أو الشهر التالي.
  1. الربط يحتوي الرمز kaisrc1… على المفتاح العام للمساعد. والبصمة محسوبة منه (SHA-256).
  2. القواعد القواعد ودفتر الميزانية موجودة على هذا الجهاز فقط، ولا تكون أبدًا على خادم. وتسري عناوين Lightning كما أُدخلت بالضبط.
  3. الاقتراح الاقتراح هو kaiprop1.<المحتوى>.<التوقيع>، موقَّع بـ ECDSA P-256: الوجهة، المبلغ، الغرض، وقت انتهاء الصلاحية، المعرّف. ولا تقبل المحفظة الفواتير كوجهة – فهي لا تستطيع التحقق من مستلمها.
  4. التأكيد الضغط على «تأكيد وإرسال» وحده هو ما يطلق الإرسال. وقبل ذلك تسجّل المحفظة المبلغ مع الحد الأقصى للرسوم في دفتر الميزانية.
  5. الميزانية فشلت الدفعة: يعود المبلغ متاحًا. اكتملت أو ما زالت قيد الانتظار: يُسجَّل. لا ردّ: يبقى محجوزًا ويستمر احتسابه.

ميزانية الذكاء الاصطناعي (سابقًا «اقتراحات الدفع من الذكاء الاصطناعي») تقيّد اقتراحات هذا المساعد على هذا الجهاز – وليست رصيدًا مستقلًا. التوقيع يبيّن من يقترح، لا ما إذا كان الاقتراح منطقيًا. ولا يستطيع المساعد دفع فواتير L402 عبر KAI-Pay.

مزاياك

  • دع المدفوعات المتكررة تُجهَّز لك، ولا يحدث شيء من دونك: الاقتراح لا يدفع أبدًا من تلقاء نفسه.
  • حدود ثابتة: الدفع فقط إلى مستلمين سمحت بهم، وضمن ميزانية يومية وشهرية (شاملة الرسوم).
  • مقاوم للتزوير: كل اقتراح موقَّع؛ وتتحقق المحفظة من المرسِل والمستلم والميزانية والصلاحية، ولا تقبل أي اقتراح إلا مرة واحدة.
  • رؤية كاملة: تعرض المحفظة لكل مساعد مقدار ما استُهلك من الميزانية اليومية والشهرية.

كيف تجرّبه

  1. افتح المحفظة: القائمة ← ميزانية الذكاء الاصطناعي.
  2. المس «إنشاء مساعد تجريبي». وأدخل كمستلم مسموح به عنوانًا تريد فعلًا الدفع إليه – مثل محفظة ثانية لك – وحدّد ميزانية يومية وشهرية صغيرة. ثم احفظ.
  3. لدى المساعد المس «إنشاء اقتراح»، وأدخل المبلغ، ثم «إنشاء الاقتراح والتحقق منه». سترى الآن ما كان سيرسله إليك مساعد ذكاء اصطناعي: المرسِل والمستلم والمبلغ والميزانية المتبقية.
  4. «متابعة إلى الدفع»: تتحقق المحفظة من المستلم والميزانية مرة أخرى وتعرض الرسوم. ولا يتم الدفع إلا عند «تأكيد وإرسال» – وبعدها تنخفض الميزانية بمقدار المبلغ والرسوم. وتُرفض أي محاولة ثانية بالاقتراح نفسه.

ربط مساعد

إذا أعطاك مساعد رمزًا أو رابطًا أو رمز QR (مع KAI في Telegram: /vorschlag quelle)، فافتحه من القائمة ← ميزانية الذكاء الاصطناعي ← «ربط مساعد»، وقارن البصمة، وحدّد المستلمين والميزانية. تصل اقتراحاته على شكل رابط وتفتح صفحة التحقق مباشرةً.

نهجنا

التحكم بدلًا من القيادة الآلية: لا يحصل المساعد أبدًا على وصول إلى مفاتيحك، ولا يستطيع إلا الاقتراح. ولا تقبل المحفظة عن قصد فواتير Lightning في الاقتراحات، لأنها لا تستطيع التحقق من مستلمها. وهكذا تستفيد من مزايا الذكاء الاصطناعي دون التخلي عن السيطرة على مالك.

للمطورين: ربط وكيلك الخاص

أنشئ مساعدًا في المحفظة واحفظ «ملف الوصول للوكلاء» الخاص به. يستخدمه وكيلك – سواء كان سكربتًا أو أتمتة أو ذكاءً اصطناعيًا قادرًا على تنفيذ الشيفرة – لإنشاء اقتراحات موقَّعة. يُخرج هذا السكربت (Node.js 20 أو أحدث، دون حزم) رابطًا يرسله إليك وكيلك وتفتحه في المحفظة:

// kai-vorschlag.mjs - signed KAI-Pay proposal from the access file (Node.js 20+, no packages)
// node kai-vorschlag.mjs access.json name@provider.com 2100 "Server bill October"
import { readFileSync } from 'node:fs'
const [file, to, sat, purpose] = process.argv.slice(2)
const acc = JSON.parse(readFileSync(file, 'utf8'))
const b64u = (b) => Buffer.from(b).toString('base64url')
const now = Math.floor(Date.now() / 1000)
const p = { v: 1, id: b64u(crypto.getRandomValues(new Uint8Array(16))), src: acc.id,
  iat: now, exp: now + 24 * 3600, to, sat: Number(sat), purpose }
const signed = 'kaiprop1.' + b64u(JSON.stringify(p))
const key = await crypto.subtle.importKey('pkcs8', Buffer.from(acc.pkcs8, 'base64url'),
  { name: 'ECDSA', namedCurve: 'P-256' }, false, ['sign'])
const sig = await crypto.subtle.sign({ name: 'ECDSA', hash: 'SHA-256' }, key, new TextEncoder().encode(signed))
console.log(acc.app + '#kaiprop=' + encodeURIComponent(signed + '.' + b64u(new Uint8Array(sig))))

يبقى الاقتراح صالحًا 7 أيام كحد أقصى، ويحدد وجهة (عنوان Lightning أو Bitcoin، وليس فاتورة)، ومبلغًا بوحدة sat (بحد أقصى 1,000,000)، وغرضًا (بحد أقصى 140 حرفًا). من يملك ملف الوصول يستطيع أن يرسل إليك اقتراحات، لكنه لا يستطيع دفع أي شيء – لذا لا تعطه إلا لوكيلك الخاص.

من المفيد أن تعرف: هذه الميزة في المرحلة التجريبية. غرض الاقتراح يحدده المساعد؛ والمحفظة لا تتحقق منه.