Przegląd

W ramach kompleksowej integracji rezerwacji w Centrum działań możesz zezwolić sprzedawcom na otrzymywanie płatności od użytkowników, gdy dokonają rezerwacji, ustanowią spotkanie lub zrobią rezerwację. Google współpracuje z firmami obsługującymi płatności nad konfigurowaniem tokenizacji. Firmy obsługujące płatności używają unikalnych tokenów, aby bezpiecznie płacić sprzedawcom.

W przypadku rezerwacji zabezpieczonych podczas procesu płatności renderujemy moduł Dane do płatności. Dzięki temu użytkownik może podać dane karty kredytowej.

Obsługa 3DS1 i 3DS2 jest dostępna. Więcej informacji znajdziesz w tym samouczku.

Wymagania

Aby Twoi sprzedawcy mogli otrzymywać płatności za pomocą Centrum działań, musisz spełniać te wymagania:

  1. korzystać z usług obsługiwanego podmiotu przetwarzającego płatności; Najnowszą listę obsługiwanych firm obsługujących płatności znajdziesz na stronie Google Pay.
  2. Akceptuj tokenizowane płatności zgodnie z informacjami firmy obsługującej płatności.
  3. Przejdź proces weryfikacji tożsamości i firmy opisany tutaj
  4. Nie można włączyć płatności za rezerwacje, które wymagają asynchronicznego potwierdzenia .

Zmiany w plikach danych i serwerze rezerwacji do płatności

Płatności są realizowane w ramach procesu akceptacji na poziomie sprzedawcy. Musisz włączyć płatności dla wszystkich sprzedawców, którzy muszą otrzymywać płatności za swoje usługi. Aby umożliwić płatności, musisz wprowadzić zmiany w plikach danych i na serwerze rezerwacji.

Pliki danych

  • Plik danych sprzedawcy: określ dane do płatności za pomocą tokenization_parameter w polu tokenization_config. Zestaw zależy od firmy obsługującej płatności. Jest to ten sam zestaw danych paymentMethodTokenizationParameters.parameters, który zostałby przekazany do Google Pay, jeśli zostałby z nim zintegrowany.
  • Usługi/pliki danych o dostępności: określ wymagania dotyczące płatności na podstawie odpowiedniego przypadku użycia. Więcej informacji znajdziesz w artykule Przypadki użycia płatności.

Serwer rezerwacji

Przypadki użycia płatności

Zanim zdecydujesz się na dokonywanie płatności w każdym z tych przypadków, zapoznaj się z naszymi zasadami dotyczącymi płatności i upewnij się, że przestrzegasz wszystkich obowiązujących zasad.

Płatności mogą mieć m.in. następujące zastosowania:

Więcej informacji o implementowaniu każdego z tych przypadków użycia znajdziesz w samouczku Konfigurowanie płatności.

Rezerwowanie z góry

Rysunek 1 przedstawia przepływ działań między użytkownikami, Tobą (partnerem ds. harmonogramów), Google i firmą obsługującą płatności.

Rysunek 1. Schemat sekwencji rezerwacji z góry
Rysunek 1. Diagram sekwencji rezerwacji z góry
  • Płatność musi stanowić 100% kosztu usługi. Oznacza to, że pełną kwotę za usługi należy opłacić w momencie rezerwacji.
Zmiany w plikach danych o usługach

Zaliczki i opłaty za niestawienie się

W podobny sposób konfiguruje się kaucje i opłaty za niestawienie się. Rysunek 2 przedstawia przepływ tych działań między użytkownikami, Tobą (partnerem ds. harmonogramu), Google i firmą obsługującą płatności.

Rysunek 2. Diagram kolejności rezerwacji wpłat lub nieobecności
Rysunek 2. Wpłaty lub opłaty za niestawienie się Schemat kolejności rezerwacji

Aby zagwarantować, że użytkownik pojawi się podczas rezerwacji, można użyć zaliczki i opłaty za niestawienie się.

  • Kaucję można obciążyć kartę kredytową użytkownika z góry lub w późniejszym czasie.
  • Jeśli użytkownik nie pojawi się podczas rezerwacji, może zostać naliczona opłata za niestawienie się.
  • W razie potrzeby podczas rezerwacji można naliczyć kaucję i opłaty za niestawienie się.
  • Nawet jeśli z góry nie jest wymagana płatność, serwer rezerwacji musi odpowiedzieć na żądanie CreateBooking za pomocą PaymentInformation zawierającego payment_transaction_id, który musi być unikalny. payment_transaction_id nie musi być podany przez firmę obsługującą płatności, ale może zostać wygenerowany przez serwer rezerwacji.
Zmiany w usługach lub plikach danych o dostępności

Wpłaty i opłaty za niestawienie się można określić na poziomie usługi lub na poziomie dostępności w przypadku sprzedawcy. Jeśli podasz je na poziomie przedziału dostępności, zastąpi to definicje na poziomie usługi.

  • Aby włączyć wpłaty, ustaw pole deposit na poziomie usługi lub przedziału dostępności.
  • Aby włączyć opłaty za niestawienie się, ustaw pole no_show_fee na poziomie usługi lub przedziału dostępności.
  • Ustaw w polu require_credit_card wartość REQUIRE_CREDIT_CARD_CONDITIONAL na poziomie usługi lub przedziału dostępności.
  • (opcjonalnie) Ustaw prepayment_type na REQUIRED lub OPTIONAL.

Wymagana karta kredytowa

W innych przypadkach użycia może być wymagana karta kredytowa w momencie rezerwacji.

  • Ustaw pole require_credit_card na REQUIRE_CREDIT_CARD_ALWAYS na poziomie usługi lub na poziomie przedziału Dostępność w przypadku sprzedawcy.

Anulowanie i zwroty

Anulowania i zwroty środków są inicjowane przez partnera (Ty) lub przez użytkownika w Centrum działań. W obu przypadkach musisz przestrzegać wartości CancellationPolicy ustawionej na poziomie usługi i przekazanej użytkownikowi podczas płatności za rezerwację.

Jeśli nie podasz danych CancellationPolicy, przyjmiemy, że każde anulowanie w okresie anulowania określonym przez min_advance_online_canceling, które zostało ustawione na poziomie usługi, podlega zwrotowi. Jeśli zasada min_advance_online_canceling nie jest zdefiniowana, ma wartość 0 (co oznacza, że w każdej chwili można ją anulować).

Jeśli musisz wyłączyć anulowanie w Centrum działań, skontaktuj się z osobą kontaktową w Google.

Zmiany w RTU
  • Gdy zwrócisz użytkownikowi środki, musisz wysłać aktualizację RTU, aby zmienić stan płatności za rezerwację. Ustaw update_mask na status,payment_information.prepayment_status oraz payment_information.prepayment_status = PREPAYMENT_REFUNDED i status = CANCELED.
    • Używaj nowych funkcji BookingStatus = CANCELED i PrepaymentStatus = PREPAYMENT_REFUNDED. Wartość wyliczenia CANCELED_AUTOMATIC_REFUND została wycofana zarówno w przypadku interfejsu Maps Booking API, jak i szablonów gRPC.
Zmień na serwer rezerwacji
  • Gdy Centrum działań wyśle obiekt UpdateBookingRequest, a spowoduje to zwrot środków za użytkownika, ustaw booking.payment_information.prepayment_status = PREPAYMENT_REFUNDED w UpdateBookingResponse.