Ordering and Fulfilment

Our APIs enable a seamless end-to-end gifting experience, from placing an order to delivering the digital gift card.

You can include up to 10 gift cards within a single order request.

The API supports both synchronous and asynchronous order models. For synchronous orders, gift cards are created and activated immediately, giving you an instant response.

We will immediately create and activate the gift cards, then return the relevant details to you. A successful response will have an HTTP status code of 200 and contain information about the newly created gift cards.

Fulfillment Options

The Wpay Gifting APIs support two main fulfillment models.

  • Wpay-Managed Fulfillment: We can deliver the activated gift cards directly to the recipient(s) you specify in your order. This service supports delivery via email or SMS.
  • Self-Managed Fulfillment: You can receive the activated gift card details and manage the delivery to your customer through your own internal processes.

📘

Note

Please contact your Wpay representative to discuss which fulfillment model is the best fit for your business needs.

How to Place an Order

The ordering process follows a two-step flow.

Step 1: Process Payment for the Sale

Your customer selects the gift cards they wish to purchase and proceeds to checkout on your platform. You will process the payment using your own payment processor and generate a unique order number for your records.

Step 2: Submit the Order

Once payment is confirmed, you will invoke the Submit Order API. If you wish for Wpay to manage fulfillment, your request must also include details on how the gift cards should be delivered.

curl -X 'POST' \
  'https://pt-api.wpay.com.au/gifting/gco/client/api/v1/orders' \
  -H 'accept: application/json' \
  -H 'X-Correlation-Id: 12313' \
  -H 'Authorization: Bearer <JWT token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "clientOrderNumber": "1234ABC",
  "originalClientOrderNumber": "1231241242",
  "clientTransactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "invoiceNumber": "3234234",
  "paymentInfo": {
    "paymentReferenceInfo": [
      {
        "paymentReferenceId": "3fa85f64-5717-4562-b3fc",
        "paymentMethod": "CREDIT_CARD"
      }
    ],
    "currencyCode": "AUD",
    "totalAmountPaid": 1000,
    "totalDiscount": 10,
    "campaignsInfo": [
      {
        "campaignCode": "WOW2024XTRA5",
        "campaignDetails": "5 Dollars Off",
        "campaignType": "DISCOUNT",
        "campaignValue": "5"
      }
    ],
    "donationsInfo": [
      {
        "amount": 1.99,
        "currencyCode": "AUD",
        "organisationCode": "HelpingHands"
      }
    ]
  },
  "customerInfo": {
    "edrNumber": "a5f6bcca-371e-4b23-b6d7-63550eed6e84",
    "customerId": "63550eed6e84",
    "email": "[email protected]",
    "firstName": "John",
    "lastName": "CDoe",
    "customerType": "REGISTERED",
    "accountId": "123123"
  },
  "clientConsumerReferenceId": "NRMA",
  "clientCartId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "clientApplicationId": "EDDAPP",
  "giftItemsInfo": [
    {
      "clientItemId": "10001",
      "sendAsGift": true,
      "productId": "c49a6126-71e4-4b03-a553-e87a18f2c98b",
      "designId": "WWQ912SWAP01",
      "currencyCode": "AUD",
      "activationValue": 50,
      "campaignInfo": [
        {
          "campaignCode": "WOW2024XTRA5",
          "campaignDetails": "5 Dollars Off",
          "campaignType": "DISCOUNT",
          "campaignValue": "5"
        }
      ],
      "amountPaid": 45,
      "fulfillmentInfoDto": {
        "senderInfo": {
          "firstName": "John",
          "lastName": "Doe"
        },
        "deliveryFee": 5.95,
        "deliverySchedule": {
          "scheduleType": "NOW",
          "deliveryDate": "2024-12-09"
        },
        "deliveryInfo": [
          {
            "deliveryMode": "EMAIL",
            "email": "[email protected]",
            "mobile": "+61411123123",
            "address": {
              "line1": "407 Elizabeth",
              "line2": "St",
              "suburb": "Surry",
              "state": "NSW",
              "city": "Sydney",
              "postalCode": "6000",
              "country": "Australia",
              "phone": "0411123123",
              "extension": "1234",
              "mobile": "+61411123123"
            },
            "deliveryNote": "Please deliver to the front door"
          }
        ]
      },
      "personalisationInfo": [
        {
          "personalisationType": "TEXT",
          "message": "Surprise!",
          "assets": {
            "images": [
              {
                "imageType": "WEB",
                "location": "https://images.woolworths.com/images?id=9845185475"
              }
            ]
          }
        }
      ],
      "quantity": 4
    }
  ],
  "storeId": "6625",
  "orderNote": {
    "detail": "Customer has asked for re-issue of physical card",
    "operatorId": "[email protected]"
  },
  "billingInfo": {
    "firstName": "John",
    "lastName": "Doe",
    "address": {
      "line1": "407 Elizabeth",
      "line2": "St",
      "suburb": "Surry",
      "state": "NSW",
      "city": "Sydney",
      "postalCode": "6000",
      "country": "Australia",
      "phone": "0411123123",
      "extension": "1234",
      "mobile": "+61411123123"
    }
  }
}'

Request Body Parameters
The list below details the most common parameters within the request body.

  • clientOrderNumber Your unique order number created in Step 1.
  • giftItemsInfo An array containing the details of the gift card(s) to be created.
    • productId The unique identifier for the gift card product.
    • designId The identifier for the gift card's design.
    • activationValue The dollar amount to be loaded onto the gift card.
    • amountPaid The dollar amount paid by the customer for the gift card.
    • currency The currency code for the activationValue and amountPaid values
    • quantity The number of gift cards to be created.

Fulfilment Details

The following details must be provided within thegiftItemsInfo object if Wpay is managing fulfillment:

  • sendAsGift Set to true if the gift card was purchased as a gift. If true, the senderInfo object must also be provided.
  • fulfillmentInfoDto Contains delivery details for the gift card(s).
    • deliveryMode Specifies how the gift card will be delivered (currently supports EMAIL or SMS).
      • email: he email address of the recipient.
      • mobile: The mobile number of the recipient.
    • deliverySchedule Specifies when the gift card will be delivered (currently supports immediate delivery only).
    • personalisationInfoContains any personalized message the customer added. We currently only support personalised text messages.

📘

Note

Talk to your Account Manager to arrange an end to end demonstration of the Wpay Gifting Ordering and Fulfilment services.