Panduan Memulai
Salin prompt setup yang berisi langkah install dan panduan markdown lengkap untuk plugin ini.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-pay`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/pay/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Anda bisa menggunakan AI-Assisted Setup kami untuk menginstal plugin ini. Tambahkan skill Capgo ke tool AI Anda dengan command berikut:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-pay` plugin in my project.Jika Anda lebih memilih Manual Setup, instal plugin dengan menjalankan perintah berikut dan ikuti petunjuk khusus platform di bawah ini:
bun add @capgo/capacitor-paybunx cap syncimport { Pay } from '@capgo/capacitor-pay';Mulai cepat
Bagian berjudul “Mulai cepat”import { Pay } from '@capgo/capacitor-pay';
const result = await Pay.isPayAvailable();console.log(result);Contoh: requestPayment
Bagian berjudul “Contoh: requestPayment”import { Pay } from '@capgo/capacitor-pay';
const result = await Pay.requestPayment({ apple: { merchantIdentifier: 'merchant-identifier-123', countryCode: 'US', currencyCode: 'USD', paymentSummaryItems: [ { label: 'Hello from Capacitor', amount: 'amount', }, ], supportedNetworks: ['AmEx'], },});// The result holds sensitive values: use it without logging it.Contoh: updateApplePayShipping
Bagian berjudul “Contoh: updateApplePayShipping”import { Pay } from '@capgo/capacitor-pay';
await Pay.updateApplePayShipping({ selectionId: 'selection-id-123', paymentSummaryItems: [ { label: 'Hello from Capacitor', amount: 'amount', }, ],});Kesalahan umum
Bagian berjudul “Kesalahan umum”- Listener: hapus handle saat screen unmount.
- Sinkronisasi Native: jalankan
bunx cap syncsetelah upgrade plugin. - Sumber kebenaran tunggal: percayai
src/definitions.tsdi repo GitHub.
Ringkasan API
Bagian berjudul “Ikhtisar API”isPayAvailable
Bagian berjudul “isPayAvailable”Memeriksa apakah native pay tersedia di platform saat ini. Di iOS, ini mengevaluasi Apple Pay; di Android, mengevaluasi Google Pay.
import { Pay } from '@capgo/capacitor-pay';
const result = await Pay.isPayAvailable();console.log(result);requestPayment
Bagian berjudul “requestPayment”Menampilkan native pay sheet untuk platform saat ini. Sediakan konfigurasi Apple Pay di iOS dan konfigurasi Google Pay di Android.
Promise ini adalah jalur penyelesaian di kedua platform.
import { Pay } from '@capgo/capacitor-pay';
const result = await Pay.requestPayment({ apple: { merchantIdentifier: 'merchant-identifier-123', countryCode: 'US', currencyCode: 'USD', paymentSummaryItems: [ { label: 'Hello from Capacitor', amount: 'amount', }, ], supportedNetworks: ['AmEx'], },});// The result holds sensitive values: use it without logging it.Referensi Tipe
Bagian berjudul “Referensi Tipe”PayAvailabilityOptions
Bagian berjudul “PayAvailabilityOptions”export interface PayAvailabilityOptions { apple?: ApplePayAvailabilityOptions; google?: GooglePayAvailabilityOptions;}PayAvailabilityResult
Bagian berjudul “PayAvailabilityResult”export interface PayAvailabilityResult { available: boolean; platform: PayPlatform; apple?: ApplePayAvailabilityResult; google?: GooglePayAvailabilityResult;}PayPaymentOptions
Bagian berjudul “PayPaymentOptions”export interface PayPaymentOptions { apple?: ApplePayPaymentOptions; google?: GooglePayPaymentOptions;}PayPaymentResult
Bagian berjudul “PayPaymentResult”export type PayPaymentResult = ApplePayRequestPaymentResult | GooglePayRequestPaymentResult;ApplePayAvailabilityOptions
Bagian berjudul “ApplePayAvailabilityOptions”export interface ApplePayAvailabilityOptions { /** * Optional list of payment networks you intend to use. * Passing networks determines the return value of `canMakePaymentsUsingNetworks`. */ supportedNetworks?: ApplePayNetwork[];}GooglePayAvailabilityOptions
Bagian berjudul “GooglePayAvailabilityOptions”export interface GooglePayAvailabilityOptions { /** * Environment used to construct the Google Payments client. Defaults to `'test'`. */ environment?: GooglePayEnvironment; /** * Raw `IsReadyToPayRequest` JSON as defined by the Google Pay API. * Supply the card networks and auth methods you intend to support at runtime. * * @see https://developers.google.com/pay/api/android/reference/request-objects#IsReadyToPayRequest */ isReadyToPayRequest?: GooglePayIsReadyToPayRequest;}PayPlatform
Bagian berjudul “PayPlatform”export type PayPlatform = 'ios' | 'android' | 'web';ApplePayAvailabilityResult
Bagian berjudul “ApplePayAvailabilityResult”export interface ApplePayAvailabilityResult { /** * Indicates whether the device can make Apple Pay payments in general. */ canMakePayments: boolean; /** * Indicates whether the device can make Apple Pay payments with the supplied networks. */ canMakePaymentsUsingNetworks: boolean;}GooglePayAvailabilityResult
Bagian berjudul “GooglePayAvailabilityResult”export interface GooglePayAvailabilityResult { /** * Whether the user is able to provide payment information through the Google Pay payment sheet. */ isReady: boolean; /** * The current user's ability to pay with one or more of the payment methods specified in `IsReadyToPayRequest.allowedPaymentMethods`. * * This property only exists if `IsReadyToPayRequest.existingPaymentMethodRequired` was set to `true`. The property value will always be `true` if the request is configured for a test environment. */ paymentMethodPresent: boolean | undefined;}ApplePayPaymentOptions
Bagian berjudul “ApplePayPaymentOptions”export interface ApplePayPaymentOptions { /** * Merchant identifier created in the Apple Developer portal. */ merchantIdentifier: string; /** * Two-letter ISO 3166 country code. */ countryCode: string; /** * Three-letter ISO 4217 currency code. */ currencyCode: string; /** * Payment summary items displayed in the Apple Pay sheet. */ paymentSummaryItems: ApplePaySummaryItem[]; /** * Card networks to support. */ supportedNetworks: ApplePayNetwork[]; /** * Merchant payment capabilities. Defaults to ['3DS'] when omitted. */ merchantCapabilities?: ApplePayMerchantCapability[]; /** * Contact fields that must be supplied for shipping. */ requiredShippingContactFields?: ApplePayContactField[]; /** * Contact fields that must be supplied for billing. */ requiredBillingContactFields?: ApplePayContactField[]; /** * Controls the shipping flow presented to the user. */ shippingType?: ApplePayShippingType; /** * Optional ISO 3166 country codes where the merchant is supported. */ supportedCountries?: string[]; /** * Optional opaque application data passed back in the payment token. */ applicationData?: string;
/** * Recurring payment configuration (iOS 16+). */ recurringPaymentRequest?: ApplePayRecurringPaymentRequest;}GooglePayPaymentOptions
Bagian berjudul “GooglePayPaymentOptions”export interface GooglePayPaymentOptions { /** * Environment used to construct the Google Payments client. Defaults to `'test'`. */ environment?: GooglePayEnvironment; /** * Raw `PaymentDataRequest` JSON as defined by the Google Pay API. * Provide transaction details, merchant info, and tokenization parameters. * * @see https://developers.google.com/pay/api/android/reference/request-objects#PaymentDataRequest */ paymentDataRequest: GooglePayPaymentDataRequest;}ApplePayRequestPaymentResult
Bagian berjudul “ApplePayRequestPaymentResult”export interface ApplePayRequestPaymentResult { /** * Platform that resolved the payment request. */ platform: 'ios'; /** * Apple Pay payment payload. */ apple: ApplePayPaymentResult;}Sumber Kebenaran
Bagian berjudul “Sumber Kebenaran”Halaman ini dibuat dari plugin src/definitions.ts. Jalankan ulang sync saat API publik berubah di upstream.
Lanjutkan dari Getting Started
Bagian berjudul “Lanjutkan dari Getting Started”Jika Anda menggunakan Panduan Memulai untuk merencanakan operasi dashboard dan API, hubungkan dengan Menggunakan @capgo/capacitor-pay untuk kapabilitas native dalam Menggunakan @capgo/capacitor-pay, Ringkasan API untuk detail implementasi di API Overview, Pendahuluan untuk detail implementasi di Introduction, Kunci API untuk detail implementasi di API Keys, dan Perangkat untuk detail implementasi di Devices.