This page explains how to add GCash to your existing iOS Components integration.
Requirements
Select which endpoint you are using:
Requirement | Description |
---|---|
Integration type | Make sure that you have built a Sessions flow iOS Components integration. |
Setup steps | Before you begin:
|
API reference
You do not need to send additional fields for GCash. To see optional fields that you can send for all payment methods, choose the endpoint you integrated:
- /sessions: This is the default with Components v5.0.0 or later.
- /payments: If you implemented an additional use case.
Component configuration
v5.0.0 or later
If your integration uses iOS Components v5.0.0 or later, configure and create an instance of the GCash Component:
let paymentMethods = session.sessionContext.paymentMethods // Check that the payment method is supported before showing the Component. guard let paymentMethod = paymentMethods.paymentMethod(ofType: .other("gcash")) else { return } let component = InstantPaymentComponent(paymentMethod: paymentMethod, context: context, order: nil) self.currentComponent = component // Set the session as the delegate. component.delegate = session component.initiatePayment()
v4.x.x
If your integration uses an earlier version of iOS Components:
// Check that the payment method is supported before showing the Component. guard let paymentMethod = paymentMethods.paymentMethod(ofType: GCashPaymentMethod.self) else { return } let style = FormComponentStyle() let component = GCashComponent(paymentMethod: paymentMethod, apiContext: context, style: style) present(component)
There are no configuration steps specific to GCash required for Components.
Recurring payments
GCash supports recurring transactions. To make recurring transactions, you need to:Create a token
To create a token, include in your /payments request:
storePaymentMethod
: true- shopperReference: Your unique identifier for the shopper (minimum length three characters).
When the payment has been settled, you receive a webhook containing:
eventCode
: RECURRING_CONTRACToriginalReference
: ThepspReference
of the initial payment.pspReference
: This is the token that you need to make recurring payments for this shopper.
Make sure that your server is able to receive RECURRING_CONTRACT as part of your standard webhooks. You can enable the RECURRING_CONTRACT event code in the webhook settings page.
Make a payment with a token
To make a payment with the token, include in your /payments request:
-
paymentMethod.storedPaymentMethodId
: ThepspReference
from the RECURRING_CONTRACT webhook.You can also get this value using the /listRecurringDetails endpoint.
-
shopperReference
: The unique shopper identifier that you specified when creating the token. -
shopperInteraction
: ContAuth -
recurringProcessingModel
: Use Subscription for a series of transactions following a fixed time interval or UnscheduledCardOnFile for contracts with non-fixed time interval.Expand viewCopy link to code blockCopy codecurl https://checkout-test.adyen.com/checkout/v68/payments \ -H 'x-api-key: ADYEN_API_KEY' \ -H 'content-type: application/json' \ -d '{ "amount":{ "value":1000, "currency":"PHP" }, "paymentMethod":{ "type":"gcash", "storedPaymentMethodId":"7219687191761347" }, "reference":"YOUR_ORDER_NUMBER", "merchantAccount":"YOUR_MERCHANT_ACCOUNT", "shopperReference":"YOUR_UNIQUE_SHOPPER_ID_IOfW3k9G2PvXFu2j", "shopperInteraction":"ContAuth", "recurringProcessingModel": "Subscription" }'
Test and go live
To test successful GCash live payments, you need to use a real mobile number registered with a GCash account.
If you are encountering issues with testing GCash payments, contact our Support Team.
Check the status of GCash test payments in your Customer Area > Transactions > Payments.
Before you can accept live GCash payments, you need to submit a request for GCash in your live Customer Area.