Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

If you have a current Stripe Account, the first step to do is to connect it to PosiPay. In PosiPay, a Gateway Account record holds the authenticated credentials of a merchant account from a certain gateway service provider.

...

The steps below will guide you on creating and authenticating a Gateway Account record.
Note: If you have multiple Stripe Accounts, create a separate Gateway Account record for each individual account.

Create a Gateway Account Record

Follow the steps on how to create a Gateway Account record:

  1. Click the App Launcher and search for Gateway Accounts.

  2. Go to the Gateway Accounts tab.

  3. Click New.

  4. In the New Gateway Account modal,

    1. Provide the following details to the Information section:

      1. Provide your desired Gateway Account Name.

      2. Select Stripe as the Gateway Provider. Take note that PosiPay only supports Stripe.

      3. Populate the API Token with the Secret Key of your Stripe account.
        Note: these keys are held securely

      4. Populate the Publishable Key with the Publishable Key of your Stripe account.

      5. Set v1 as the API Version.

      6. How to populate Base URL on Gateway Account

        • Go to Setup and search All Sites on Quick Find

        • Copy the URL of the site that is accessible by Guest users (the one you created in the last step). It should look like this: https://posimente24.my.site.com/

        • Once copied, paste the URL on the base URL of the Gateway Account

        • When the gateway account is being saved, the Webhook Endpoint URL will auto-populate

      7. Make sure that the Active checkbox is disabled at this stage. The Gateway Account record will be activated once authenticated.

      8. If your Stripe account is in test mode, enable the Sandbox checkbox. Otherwise, disable the Sandbox checkbox.

      9. If your Stripe account is enrolled in 3D Secure Payments, enable the Enable 3D Secure checkbox. Otherwise, disable the Enable 3D Secure checkbox.

      10. Select the supported currencies of your Stripe account in Accepted Currency.

      11. Select a Default Currency.

        image-20240321-000616.pngImage Removed
      12. In Fraud Trigger, select responses from the gateway to identify and categorize a Gateway Transaction as potentially fraudulent.

        image-20240527-070406.pngImage Added

    2. Provide the following details to the Payment Method section:

      1. Select a Payment Method. Take note that PosiPay only supports Card and Bank BECS Debit for now.

      2. Select the supported card types of your Stripe account in Accepted Card.

      3. You can set a brief Description of your Gateway Account record.

        image-20240321-000634.png
  5. Click Save or Save & New to save your new Gateway Account record.

Keeping your Stripe Keys safe

As a Stripe user, you want to keep all API credentials (secret key, API key) secure. PosiPay stores them in a protected custom setting according to Salesforce security requirements. We have a protected custom setting called "Gateway Account Setting" where each Gateway Account record API Token & Publishable Key is stored. Below is the schema of the custom setting:

  • Visibility > Protected

  • Type > List

  • Fields > API Token, Publishable Key, Authenticated 

This completely hides the custom setting and it’s values from the subscriber. The subscriber can't see it in Setup, the Apex code can't reference it, and it can’t be seen in any other place you might be able to normally access custom settings. In other words, once you enter your Stripe keys into PosiPay, they are kept securely.

How to authenticate your Gateway Account record

...

Before authenticating your gateway account, please ensure to set up the webhook in the Stripe Dashboard. See Set up the webhook in the Stripe Dashboard for the steps.

After setting up the webhook in Stripe, follow the steps on how to authenticate your created/updated Gateway Account record:

  1. In your Gateway Account record, click Authenticate.

    image-20240320-235858.png

  2. After clicking the Gateway Account Authentication, a notification message will appear:

    1. If your Stripe credentials stored in the Gateway Account record are valid:

      1. A successful message will be displayed.

      2. The Active checkbox is enabled and the credentials will be cleared out.

        image-20240321-000747.png

    2. If your Stripe credentials stored in the Gateway Account record are invalid:

      1. An error message will appear.

      2. The Active checkbox is still disabled and the credentials are not cleared out.

        image-20231214-074848.png

Set up your Gateway Account in PosiPay Settings

Set the Gateway Account ID in the Default Gateway Account.

Go to the PosiPay Settings page by searching it on the App Launcher.

On the PosiPay Settings page, a field called Default Gateway Account is displayed under the General Settings.

In the Default Gateway Account populate your Gateway Account and click Save.

...

After that, the Default Gateway Account field value is mapped to the PosiPay Settings custom setting’s Default Gateway Account field.

...

Once you have authenticated your Stripe account on the PosiPay end, it is time to connect the webhooks on the Stripe end.

Stripe Account API Version

The Stripe API Version that is currently being used is 2024-06-20. Make sure that the Stripe API version in your Stripe Account is updated. See this link for reference https://posimente.atlassian.net/wiki/spaces/~641d437d407493675d47acc3/pages/78184455/Stripe+Webhook+Set+up#Upgrading-Stripe-API-Version

On the PosiPay Settings page, a picklist field called Default Stripe API Version is displayed below the Default Gateway Account in General Settings.

The Default Stripe API Version is auto-populated based on the PosiPay Settings custom setting’s Stripe API Version field.

...

When the Save button is clicked, the Default Stripe API Version field value is mapped to the PosiPay Settings custom setting’s Stripe API Version field

...

When creating or updating a Gateway Account record, The Default Stripe API Version field value is based on the PosiGive Settings custom setting’s Stripe API Version field value.

...

Next place to go: Stripe Webhook Set up