Introduction

Streamline Payment Acceptance from Leading E-Wallets with our Seamless API Integration. Enable hassle-free transactions with leading e-wallets, offering your customers a convenient and secure payment option. Expand your payment options and cater to the growing market of cashless transactions. With our API's seamless e-wallet integration, accepting payments from various e-wallets has never been easier, providing a seamless and convenient payment experience for your users.


Channel List

List of supported Channel in E-Wallet:

Channel

Name

Note

ovoOVO-
danaDANA-
shopeepayShopeePay

The URL only works with mobile phones that have the Shopee app installed; otherwise, it will give a 404 Not Found error.

linkajaLinkAja-
gopayGopay-

POST{{HOST}}/e-wallet

Request

You need to authenticate your requests to access any endpoint in the 98Pays API.

Request

  • Name
    reference
    Type
    mandatory
    Description

    A unique reference number or identifier for the transaction. all transaction references should be unique.

  • Name
    phoneNumber
    Type
    mandatory
    Description

    Transaction bills will be sent to this telephone number

  • Name
    channel
    Type
    mandatory
    Description

    A type of e-wallet to be used for the transaction. you can find the list of ewallet above the table.

  • Name
    amount
    Type
    mandatory
    Description

    Amount your user should paid to complete the transaction

  • Name
    expiryMinutes
    Type
    opsional
    Description

    If you want the transaction to last for 1 hour, you would set the value of the expiryMinutes parameter to 60.

  • Name
    viewName
    Type
    mandatory
    Description

    The name or identifier of the receiver for the transaction.

  • Name
    additionalInfo.callback
    Type
    mandatory
    Description

    The callback URL where notifications or updates related to the transaction will be sent.

  • Name
    additionalInfo.successRedirectUrl
    Type
    mandatory
    Description

    To redirect the customers back once payment has been completed in e-wallet issuers. this parameter is required when using dana, linkaja, shopeepay wallet

Request Json

POST
{{HOST}}/e-wallet
<?php
    $curl = curl_init();
    curl_setopt_array($curl, array(
    CURLOPT_URL => '{{HOST}}/e-wallet',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS =>'{
        "reference": "REFF012",
        "phoneNumber":"08123456789",
        "channel":"ovo",
        "amount": 10000,
        "expiryMinutes": 30,
        "viewName": "Merchant Name",
        "additionalInfo": {
            "callback": "http://your-site-callback.com/notify",
            "successRedirectUrl":"http://success-redirect-url.com"
        }
    }',
    CURLOPT_HTTPHEADER => array(
        'X-Client-Key: ',
        'X-Client-Token: ',
        'X-Signature: '
    ),
    ));

    $response = curl_exec($curl);

    curl_close($curl);
    echo $response;

Response Details

  • Name
    responseCode
    Description

    The HTTP response code indicating the status of the request. See the Error Codes section for details.

  • Name
    responseMessage
    Description

    A descriptive message indicating the status of the request.

  • Name
    responseData
    Description

    An object containing the data related to the transaction response.

  • Name
    responseData.id
    Description

    98Pays unique identifier for the transaction.

  • Name
    responseData.status
    Description

    The current status of the transaction. success, pending, expired, failed.

  • Name
    responseData.feePayer
    Description

    The party responsible for paying the transaction fee. customer or merchant.

  • Name
    responseData.amount
    Description

    The original amount associated with the transaction.

  • Name
    responseData.fee
    Description

    The fee charged for the transaction.

  • Name
    responseData.totalAmount
    Description

    The total amount (original amount + fee) for the transaction.

  • Name
    responseData.expiredDate
    Description

    The date and time when the transaction will expire.

  • Name
    responseData.additionalInfo.callback
    Description

    The callback URL where notifications or updates related to the transaction will be sent.

  • Name
    responseData.eWallet.viewName
    Description

    The name or identifier associated.

  • Name
    responseData.eWallet.channel
    Description

    The channel to be used for the transaction.

  • Name
    responseData.eWallet.url
    Description

    The link used to redirect to the payment page or jumps apps for shopeepay/dana

  • Response Json

    POST
    {{HOST}}/e-wallet
    {
        "responseCode": 200,
        "responseMessage": "success",
        "responseData": {
            "id": "66e934f6-f5d6-4f1c-bb3d-450ec2873782",
            "merchantRef": "REFF012",
            "status": "pending",
            "feePayer": "customer",
            "amount": 10000,
            "fee": 85,
            "totalAmount": 10085,
            "expiredDate": "2025-03-23T10:24:58+07:00",
            "additionalInfo": {
                "callback": "http://your-site-callback.com/notify"
            },
            "eWallet": {
                "viewName": "Merchant Name",
                "channel": "ovo",
                "url": null
            }
        }
    }
    

    Was this page helpful?