إعدادات الفوترة

إعداد الفوترة هو رابط على مستوى الحساب بين حساب على "إعلانات Google" وحساب دفعات (يُعرف أيضًا باسم إعداد الفاتورة)، وهو يحدّد بشكل فعّال الجهة التي يتم إصدار فواتير لها مقابل التكاليف التي تتكبّدها ميزانيات الحساب في إعداد الفوترة. يتوافق كل حساب دفعات مع فاتورة واحدة.

لمحة عن حسابات الدفعات

يحدّد كل BillingSetup حساب دفعات يتم إرسال فواتير إليه مقابل التكاليف التي تتكبّدها ميزانيات الحساب. يرتبط حساب الدفعات هذا بملف دفع يكون مسؤولاً في النهاية عن الرسوم.

تحتوي إعدادات الفوترة على حقل payments_account ومجموعة من حقول payments_account_info التي تحدّد حساب الدفعات المستخدَم، بما في ذلك ما يلي:

  • payments_account_info.payments_account_id: هو معرّف مكوّن من 16 رقمًا ومنسَّق كسلسلة تحتوي على واصلات (على سبيل المثال، "1234-5678-9012-3456") يُستخدَم لتحديد حساب الدفعات المرتبط بإعدادات الفوترة.
  • payments_account_info.payments_account_name: اسم حساب الدفعات المرتبط بإعداد الفوترة. تتم طباعة هذا الاسم على الفواتير الشهرية.
  • payments_account_info.payments_profile_id: معرّف مكوّن من 12 رقمًا بتنسيق سلسلة مفصولة بوصلات (على سبيل المثال، "1234-5678-9012") يُستخدَم لتحديد ملف الدفع المرتبط بإعداد الفوترة.

إذا كان حساب الدفعات مؤهلاً لاستخدام الفوترة الموحّدة، يمكن تجميع حسابات متعددة على "إعلانات Google" في الفاتورة نفسها من خلال ضبط إعدادات الفوترة لاستخدام حساب الدفعات الأساسي نفسه.

إنشاء إعدادات فوترة جديدة

يمكنك ربط إعدادات الفوترة الجديدة بحسابات الدفعات الحالية أو تلك التي تم إنشاؤها في الوقت نفسه.

استخدام حساب دفعات حالي

للربط بحساب دفعات موجود، اضبط payments_account على اسم المورد لحساب دفعات صالح (على سبيل المثال، customers/{customer_id}/paymentsAccounts/{payments_account_id}). ومع ذلك، لا تعدِّل payments_account_info.

يمكنك عرض حسابات الدفعات المتاحة باستخدام طريقة PaymentsAccountService.ListPaymentsAccounts. تعتمد كائنات PaymentsAccount التي يتم عرضها على الحساب الإداري الذي تستخدمه للمصادقة.

بالنسبة إلى كل PaymentsAccount، يكون اسم المورد الخاص بالحساب الإداري للدفع في حقل paying_manager_customer.

استخدام حساب دفعات جديد

للربط بحساب دفعات جديد، اضبط الحقول التالية في payments_account_info (لا تضبط payments_account):

يوضّح المثال التالي كيفية إنشاء إعدادات فوترة جديدة من معرّف ملف دفع حالي. كما أشرنا سابقًا، يؤدي هذا أيضًا إلى إنشاء حساب دفعات جديد باسم My New Payments Account.

BillingSetup billingSetup =
    BillingSetup.newBuilder()
        .setPaymentsAccountInfo(
            PaymentsAccountInfo.newBuilder()
                .setPaymentsAccountName("My New Payments Account")
                .setPaymentsProfileId("1234-5678-9012")
                .build())
        .setStartTimeType(TimeTypeEnum.TimeType.NOW)
        .build();

BillingSetupOperation operation =
    BillingSetupOperation.newBuilder().setCreate(billingSetup).build();

try (BillingSetupServiceClient billingSetupServiceClient =
    googleAdsClient.getBillingSetupServiceClient()) {
  MutateBillingSetupResponse response =
      billingSetupServiceClient.mutateBillingSetup(
          Long.toString(customerId), operation);
}

إذا كان هذا هو إعداد الفوترة الأول الذي تتم إضافته إلى حساب على "إعلانات Google"، سيؤدي ذلك إلى تسجيل العميل في الفوترة باستخدام ملف الدفع المشار إليه.

حالة إعداد الفوترة

تخضع مثيلات BillingSetup الجديدة للموافقة قبل بدء سريانها. وحتى ذلك الحين، يكون status في حالة PENDING.

يمكن أن يكون لـ BillingSetup إحدى قيم status التالية:

BillingSetupStatus الوصف
PENDING في انتظار الموافقة.
APPROVED_HELD تمت الموافقة عليها، ولكن لم تتم الموافقة على الميزانية الأولى المقابلة. يمكن أن يحدث ذلك فقط لإعدادات الفوترة التي تم ضبطها على نظام الفواتير الشهرية.
APPROVED تمت الموافقة على الإعداد.
CANCELLED ألغى المستخدم عملية الإعداد قبل الموافقة.

استرداد إعدادات الفوترة لحساب

مثل معظم العناصر الأخرى في Google Ads API، يتم جلب BillingSetup من خلال إرسال طلب بحث إلى GoogleAdsService.Search أو GoogleAdsService.SearchStream باستخدام طلب بحث بلغة طلب البحث في "إعلانات Google"‏ (GAQL) يحدّد الحقول المطلوب عرضها:

SELECT
  billing_setup.resource_name,
  billing_setup.id,
  billing_setup.status,
  billing_setup.payments_account,
  billing_setup.payments_account_info.payments_account_id,
  billing_setup.payments_account_info.payments_account_name,
  billing_setup.payments_account_info.payments_profile_id,
  billing_setup.payments_account_info.payments_profile_name,
  billing_setup.start_date_time,
  billing_setup.end_date_time,
  billing_setup.end_time_type
FROM billing_setup

بعد الحصول على مرجع لـ BillingSetup، يمكنك استخدامه لإنشاء AccountBudgetProposal كما هو موضّح في ميزانيات الحساب.

إلغاء إعداد فوترة معلَّق

يمكن إلغاء BillingSetup لم يسري مفعوله بعد عن طريق إرسال BillingSetupOperation مع ضبط حقل remove على اسم المورد لإعداد الفوترة (customers/{customer_id}/billingSetups/{billing_setup_id}). لا يمكن إلغاء إعدادات الفوترة إلا إذا كانت قيمة status هي PENDING أو إذا كانت APPROVED للبدء في وقت ما في المستقبل.