# OMANNET Gateway
source: https://developer.mastercard.com/mastercard-gateway/documentation/payment-methods/cards/domestic-schemes/omannet-gateway/index.md

The OMANNET payment method is an electronic payment system used in Oman. It was established by the Central Bank of Oman (CBO) to facilitate financial transactions and promote financial inclusion in the country. The Omannet system allows individuals and businesses to make electronic payments amd money transfers between bank and accounts.

For more information, refer to [OMANNET](https://norbr.com/payment-methods/omannet/).

## Prerequisites {#prerequisites}

To offer the OMANNET payment method through the Mastercard Gateway:

1. Establish a merchant account with one of the member banks that participate in the Omannet payment gateway and obtain OMANNET MID and credentials, which is required to register your domain and CNAME.
2. Register with your Mastercard Gateway service provider and share OMANNET MID and credentials, Domain, and CNAME.
3. Ask the acquirer to configure your merchant profile on the Mastercard Gateway to enable OMANNET gateway acceptance.

Note: Contact your local product team for additional support.

## OMANNET payer journey flow {#omannet-payer-journey-flow}

The following stages describe the OMANNET payer journey:

Diagram omannet-payment-gateway-sequence

![OMANNET payment gateway UI](https://static.developer.mastercard.com/content/mastercard-gateway/uploads/oMANNETGateway.png)

1. Consumers:  

   a. Select their products and services.  

   b. Complete the checkout process.  

   c. Share basic customer information such as first name, last name, email address, telephone number, and address details.  

   d. Select OMANNET as a payment option from the payment options.  

2. Browser redirects consumers to the OMANNET page.

3. Consumers provide card details and authenticate or authorize the payment.

4. Browser redirect the consumers to your page with the final payment status.

If the payment process is unsuccessful, then the consumers can retry with another payment method.
Note: OMANNET does not support AUTHORIZATION and CAPTURE model. It supports only PAY model.

## OMANNET Integration {#omannet-integration}

### OMANNET through Direct Payment {#omannet-through-direct-payment}

* Direct Payment integration allows you to offer OMANNET on your checkout page.
* OMANNET is supported from the WS-API version 100 onwards.
* Make an Initiate Browser Payment request where `sourceOfFunds.browserPayment.type` = OMANNET and `browserPayment.operation` = PAY.

### OMANNET Transactions {#omannet-transactions}

The following table shows the OMANNET transactions:

| Transaction details  |                                            Value                                             |
|----------------------|----------------------------------------------------------------------------------------------|
| Payment type         | Debit Switch Gateway                                                                         |
| Supported countries  | Oman                                                                                         |
| Supported currencies | OMR                                                                                          |
| Supported operations | Purchase (PAY), PARTIAL REFUND, REFUND                                                       |
| Refund validity      | As per OMANNET guidelines, Refunds cannot be issued after 90 days from the date of purchase. |
| Chargeback           | Not applicable                                                                               |

### Specific parameter fields {#specific-parameter-fields}

In addition to the [standard fields](https://developer.mastercard.com/mastercard-gateway/documentation/payment-methods/alt-pay-methods/imp-brow-pay-int/index.md) that are required in a browser payment request, provide the following parameter fields in the [Initiate Browser Payment](https://developer.mastercard.com/mastercard-gateway/documentation/api-reference/v100/rest/api-ops/index.md#browser-payment) request for OMANNET.

|          Parameter name           | Mandatory or optional |            Description             |
|-----------------------------------|-----------------------|------------------------------------|
| order.amount                      | Mandatory             | Specifies the transaction amount   |
| order.currency                    | Mandatory             | Specifies the transaction currency |
| order.notificationUrl             | Mandatory             | Specifies the notification URL     |
| SourceOfFunds.type                | Mandatory             | Specifies the source of funds      |
| SourceOfFunds.browserPayment.type | Mandatory             | Specifies the browser payment type |
| browserPayment.operation          | Mandatory             | Specifies the payment operation    |

### Initiate OMANNNET payment {#initiate-omannnet-payment}

```json
{
  "apiOperation": "INITIATE_BROWSER_PAYMENT",
  "billing": {
    "address": {
      "city": "Edinburgh",
      "company": "MPGS",
      "country": "OMN",
      "stateProvince": "Scotland",
      "street": "OceanPoint",
      "street2": "OceanDrive",
      "postcodeZip": "2000"
    }
  },
  "shipping": {
    "address": {
      "city": "Edinburgh",
      "company": "MPGS",
      "country": "OMN",
      "stateProvince": "Scotland",
      "street": "OceanPoint",
      "street2": "OceanDrive",
      "postcodeZip": "2000"
    }
  },
  "browserPayment": {
    "operation": "PAY",
    "returnUrl": "https://mtf.gateway.mastercard.com/api/documentation/integrationGuidelines/index.html"
  },
  "customer": {
    "account": {
      "id": "customerAccount"
    },
    "dateOfBirth": "xxxx-xx-xx",
    "email": "gaxxx@mxxx.com",
    "firstName": "Gxxx",
    "lastName": "Sxxxx",
    "mobilePhone": "0xxxxx5",
    "nationalId": "nationalId1",
    "phone": "9898xxxxx8"
  },
  "order": {
    "reference": "TEST-SUCCEED",
    "amount": "90.00",
    "itemAmount": "90.00",
    "currency": "OMR",
    "item": [
      {
        "detail": {
          "unitTaxRate": "0"
        },
        "name": "Spud",
        "quantity": "1",
        "unitPrice": "45",
        "unitTaxAmount": "0.02",
        "unitDiscountAmount": "0.03",
        "description": "item1 description",
        "sku": "item1"
      },
      {
        "detail": {
          "unitTaxRate": "0"
        },
        "name": "item2",
        "quantity": "1",
        "unitPrice": "45",
        "unitTaxAmount": "0.02",
        "unitDiscountAmount": "0.03",
        "description": "item2 description",
        "sku": "item2"
      }
    ],
    "shippingAndHandlingAmount": "0.02",
    "taxAmount": "0.04",
    "description": "apmspi test order",
    "notificationUrl": "https://pki.mtf.gateway.mastercard.com/callbackInterface/apmspinotification"
  },
  "sourceOfFunds": {
    "browserPayment": {
      "type": "OMAN_NET"
    },
    "type": "BROWSER_PAYMENT"
  }
}
```

```json
{
  "billing": {
    "address": {
      "city": "Edinburgh",
      "company": "MPGS",
      "country": "OMN",
      "postcodeZip": "2000",
      "stateProvince": "Scotland",
      "street": "OceanPoint",
      "street2": "OceanDrive"
    }
  },
  "browserPayment": {
    "interaction": {
      "status": "INITIATED",
      "timeInitiated": "2025-06-17T10:18:45.526Z"
    },
    "operation": "PAY",
    "redirectHtml": "<div id=\"initiateRedirect\" xmlns=\"http://www.w3.org/1999/html\"><iframe srcdoc=\"<script src='https://drogon.ottu.dev/b/checkout/redirect/start/?session_id=a003335ac30aa5f38f354ac75ab093d1c487baee&pg_code=OMAN_NET'>window.top.location.href='https://drogon.ottu.dev/b/checkout/redirect/start/?session_id=a003335ac30aa5f38f354ac75ab093d1c487baee&pg_code=OMAN_NET';</script>\" id=\"redirectFrame\" name=\"redirectFrame\" height=\"100%\" width=\"100%\"></iframe></div>",
    "returnUrl": "https://mtf.gateway.mastercard.com/api/documentation/integrationGuidelines/index.html"
  },
  "customer": {
    "account": {
      "id": "customerAccount"
    },
    "email": "gxxx@mxxx.com",
    "firstName": "Gxxxsh",
    "lastName": "Surxxxhi",
    "mobilePhone": "0779xxx555",
    "nationalId": "nationalId1",
    "phone": "989xxx9898"
  },
  "gatewayEntryPoint": "WEB_SERVICES_API",
  "merchant": "OTTU_MER3",
  "order": {
    "amount": 90,
    "chargeback": {
      "amount": 0,
      "currency": "OMR"
    },
    "creationTime": "2025-06-17T10:18:45.442Z",
    "currency": "OMR",
    "description": "apmspi test order",
    "discount": {
      "amount": 0.06
    },
    "id": "123451151",
    "item": [
      {
        "description": "item1 description",
        "detail": {
          "unitTaxRate": 0
        },
        "name": "Spud",
        "quantity": 1,
        "sku": "item1",
        "unitDiscountAmount": 0.03,
        "unitPrice": 45,
        "unitTaxAmount": 0.02
      },
      {
        "description": "item2 description",
        "detail": {
          "unitTaxRate": 0
        },
        "name": "item2",
        "quantity": 1,
        "sku": "item2",
        "unitDiscountAmount": 0.03,
        "unitPrice": 45,
        "unitTaxAmount": 0.02
      }
    ],
    "itemAmount": 90,
    "lastUpdatedTime": "2025-06-17T10:18:46.609Z",
    "merchantAmount": 90,
    "merchantCurrency": "OMR",
    "notificationUrl": "https://pki.mtf.gateway.mastercard.com/callbackInterface/apmspinotification",
    "reference": "TEST-SUCCEED",
    "shippingAndHandlingAmount": 0.02,
    "status": "INITIATED",
    "taxAmount": 0.04,
    "totalAuthorizedAmount": 0,
    "totalCapturedAmount": 0,
    "totalDisbursedAmount": 0,
    "totalRefundedAmount": 0
  },
  "response": {
    "acquirerCode": "ACCEPTED",
    "gatewayCode": "SUBMITTED",
    "gatewayRecommendation": "NO_ACTION"
  },
  "result": "SUCCESS",
  "shipping": {
    "address": {
      "city": "Edinburgh",
      "company": "MPGS",
      "country": "OMN",
      "postcodeZip": "2000",
      "stateProvince": "Scotland",
      "street": "OceanPoint",
      "street2": "OceanDrive"
    }
  },
  "sourceOfFunds": {
    "browserPayment": {
      "type": "OMAN_NET"
    },
    "type": "BROWSER_PAYMENT"
  },
  "timeOfLastUpdate": "2025-06-17T10:18:46.609Z",
  "timeOfRecord": "2025-06-17T10:18:45.521Z",
  "transaction": {
    "acquirer": {
      "id": "OTTU_SPI",
      "merchantId": "drogon-ottu-dev"
    },
    "amount": 90,
    "currency": "OMR",
    "id": "98761151",
    "source": "INTERNET",
    "stan": "0",
    "type": "PAYMENT"
  },
  "version": "100"
}
```

## Interpretation of the Transaction result {#interpretation-of-the-transaction-result}

This table shows the transaction response codes for the possible scenarios that you may encounter after initiating the OMANNET payments.

|  Initiate browser payment response   | Result  |                      What this means                       |
|--------------------------------------|---------|------------------------------------------------------------|
| ` response.gatewayCode ` = SUBMITTED | SUCCESS | Redirect the payer using the URL provided in the response. |

|       Retrieve transaction or Retrieve order response        | Result  |                                                                                        What this means                                                                                         |
|--------------------------------------------------------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` response.gatewayCode ` = APPROVED                          | SUCCESS | The payment is successful.                                                                                                                                                                     |
| ` response.gatewayCode ` = PENDING                           | PENDING | The Mastercard Gateway is waiting for a notification from the acquirer about the payment result. Try RETRIEVE_TRANSACTION again later or listen for notifications from the Mastercard Gateway. |
| ` response.gatewayCode `=CANCELLED                           | FAILURE | The payer cancelled the interaction for this payment.                                                                                                                                          |
| ` response.gatewayCode ` = DECLINED or ACQUIRER_SYSTEM_ERROR | FAILURE | The payment was declined. Offer the payer to try another payment method. If the response is ACQUIRER_SYSTEM_ERROR, contact the acquirer for the reason or try RETRIEVE_TRANSACTION again.      |
| ` response.gatewayCode ` = TIMED_OUT                         | FAILURE | Treat this as a declined payment. The Mastercard Gateway ensures the transaction is not successful or will revert it.                                                                          |

## OMANNET through Hosted Checkout {#omannet-through-hosted-checkout}

Hosted Checkout integration allows you to collect payment details from your payer through an interaction that the gateway hosts and displays. From the API version 100 and later, OMANNET is automatically available as a payment method once your payment service provider enables and configures you for this payment method. For more information, refer to [Browser Payments through Hosted Checkout integration](https://developer.mastercard.com/mastercard-gateway/documentation/payment-methods/alt-pay-methods/imp-brow-pay-int/index.md#browser-payments-through-hosted-checkout-integration).

## Webhook notifications {#webhook-notifications}

If you have subscribed to Mastercard Gateway [webhook notifications](https://developer.mastercard.com/mastercard-gateway/documentation/gateway-features/webhook-noti/index.md), you will receive additional notifications on the paymentStatus.
