Batch Order
We recommend you use the batch order approach when ordering more than 10 digital gift cards at a time. Both real-time and batch orders invoke the same Order API but a batch order can process up to 25,000 cards.
When you submit a batch order, your order gets added to an internal queue for processing and you can monitor the progress of your order. Once your order has been processed successfully, you can retrieve your activated gift cards.
Similar to real-time orders, every batch order you place will be auto-debited from your SVA i.e. your available balance will be reduced by the order value and the outstanding balance will be increased by the order value
Step 1: Confirm Payment
-
Your customer navigates to your website, selects more than 10 gift cards to purchase and adds them to their cart before proceeding to checkout
-
You create a unique reference number for the order and process payment using your payment processor.
Step 2: Place Order
Once the you have confirmed payment from the customer, you invoke the Order API to order the gift cards

When invoking the Order API, pass in the unique reference number you created in Step 1
Make sure you set the syncOnly flag to false to trigger the order in batch mode.
curl --request POST \
--url https://pt-api.wpay.com.au/v1/partner/giftcards/orders \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: **************' \
--data '
{
"payments": [
{
"code": "svc",
"amount": 5
}
],
"products": [
{
"sku": "*********",
"price": 5,
"qty": 1000,
"currency": "036"
}
],
"refno": "aaaa-bbbb-0000-0007",
"syncOnly": false
}
'
Where:
refnois your unique order reference numberpaymentsspecifies that the payment will be made from your SVAproductscontains the details of the gift cards to be purchasedskuis the gift card product identifierpriceis the amount to be loaded onto the gift cardqtyis the number of gift cards being ordered
syncOnlywith a value offalserequests that the order be processed in batch mode
We will acknowledge receipt of your batch order and begin creating your gift cards.
A successful response will have the HTTP status code of 202 and indicate your batch order is in processing status.
{
"status": "PROCESSING",
"orderId": "AAN9200073512",
"refno": "aaaa-bbbb-0000-0007",
"cancel": {
"allowed": true,
"allowedWithIn": 15
},
"currency": {
"code": "AUD",
"numericCode": "036",
"symbol": "$"
},
"payments": [
{
"code": "svc"
}
]
}
Where:
statuscontains the current status of your orderrefnois your unique order reference numberorderIdis the Wpay order identifier
The response contains the orderId which you will need to monitor the progress of your order as part of Step 3
Refer to the Order Digital Gift Cards API specification for descriptions of all fields in the request and response.
Step 3: Monitor Order Status
Once your batch order has been placed, you will need to track the progress of the order to know when processing has completed and your cards have been created so you can retrieve them.

You can use your order number from Step 2 to invoke the Order Status API and check the status of your order
curl --location --request GET 'https://pt-api.wpay.com.au/v1/partner/giftcards/order/{refno}/status' \
--header 'content-type: application/json' \
--header 'X-Api-Key: ************************'
Where:
refnois your unique order reference number
We recommend you periodically invoke the Order Status API while waiting 15 minutes between calls
- Your order will initially have the status
PENDINGand thenPROCESSINGas your cards are prepared. - Your order status will change to
COMPLETEwhen your order has been successfully processed
Note
If you've ordered around 100 gift cards, we recommend that you periodically invoke the Order Status API while waiting 5 minutes between calls
If you've ordered around 5000 gift cards, we recommend that you periodically invoke the Order Status API while waiting 15 minutes between calls
If you've ordered around 10000 gift cards, we recommend that you periodically invoke the Order Status API while waiting 35 minutes between calls
If you've ordered around 20000 gift cards, we recommend that you periodically invoke the Order Status API while waiting 60 minutes between calls
{
"status": "COMPLETE",
"statusLabel": "Complete",
"orderId": "AAN9200073512",
"refno": "aaaa-bbbb-0000-0007",
"cancel": {
"allowed": true,
"allowedWithIn": 15
}
}
Where:
statuscontains the current status of your orderrefnois your unique order reference numberorderIdis the Wpay order identifier
Once your order status has changed to COMPLETE, your card details are ready to be retrieved via Step 4
Refer to the Get Order Status API specification for descriptions of all fields in the request and response.
Step 4 : Retrieve Card Details
You can retrieve your activated card details once your order has been processed successfully.

You can access your card details by invoking the Activated Cards API.
curl --location --request GET 'https://pt-api.wpay.com.au/v1/partner/giftcards/order/{orderId}/cards?offset=0&limit=100' \
--header 'content-type: application/json' \
--header 'X-Api-Key: ************************'
Where:
orderIdis the Wpay order identifier returned when the order was placed.
A successful response will have the HTTP status code of 200 and contain all the gift cards that have been provisioned for you.
{
"products": {
"***********": {
"sku": "***********",
"name": "Woolworths eGift Card",
"specialInstruction": "",
"images": {
"thumbnail": "https://gbdev.s3.amazonaws.com/anzuat/product/d/thumbnail/560_microsite.jpg",
"mobile": "https://gbdev.s3.amazonaws.com/anzuat/product/d/mobile/560_microsite.jpg",
"base": "https://gbdev.s3.amazonaws.com/anzuat/product/d/image/560_microsite.jpg",
"small": "https://gbdev.s3.amazonaws.com/anzuat/product/d/small_image/560_microsite.jpg"
},
"cardBehaviour": "QC"
}
},
"cards": [
{
"sku": "WWQ651BHNWSH",
"productName": "Woolworths eGift Card",
"labels": {
"cardNumber": "Gift Card Number",
"cardPin": "Card PIN",
"activationCode": "Activation Code",
"validity": "Validity"
},
"cardNumber": "*******************",
"cardPin": "****",
"activationCode": null,
"barcode": "*********************************",
"activationUrl": null,
"formats": [
{
"key": "CNONLY",
"value": "*******************"
},
{
"key": "QCGTINBARCODE-32",
"value": "*********************************"
}
],
"amount": "5.00",
"validity": "2023-05-04T18:30:00+00:00",
"issuanceDate": "2022-05-05T05:43:07+00:00",
"cardId": 378470,
"recipientDetails": {
"salutation": null,
"name": "JANE SMITH",
"firstname": "JANE",
"lastname": "SMITH",
"email": "[email protected]",
"mobileNumber": "+61************",
"status": "",
"failureReason": "",
"delivery": {
"mode": "API",
"status": {
"sms": {
"status": "NA",
"reason": "NA"
},
"email": {
"status": "NA",
"reason": "NA"
}
}
}
},
"theme": ""
},{
"sku": "WWQ651BHNWSH",
"productName": "Woolworths eGift Card",
"labels": {
"cardNumber": "Gift Card Number",
"cardPin": "Card PIN",
"activationCode": "Activation Code",
"validity": "Validity"
},
"cardNumber": "*******************",
"cardPin": "****",
"activationCode": null,
"barcode": "*********************************",
"activationUrl": null,
"formats": [
{
"key": "CNONLY",
"value": "*******************"
},
{
"key": "QCGTINBARCODE-32",
"value": "*********************************"
}
],
"amount": "5.00",
"validity": "2023-05-04T18:30:00+00:00",
"issuanceDate": "2022-05-05T05:43:07+00:00",
"cardId": 378470,
"recipientDetails": {
"salutation": null,
"name": "JANE SMITH",
"firstname": "JANE",
"lastname": "SMITH",
"email": "[email protected]",
"mobileNumber": "+61************",
"status": "",
"failureReason": "",
"delivery": {
"mode": "API",
"status": {
"sms": {
"status": "NA",
"reason": "NA"
},
"email": {
"status": "NA",
"reason": "NA"
}
}
}
},
"theme": ""
},{
"sku": "WWQ651BHNWSH",
"productName": "Woolworths eGift Card",
"labels": {
"cardNumber": "Gift Card Number",
"cardPin": "Card PIN",
"activationCode": "Activation Code",
"validity": "Validity"
},
"cardNumber": "*******************",
"cardPin": "****",
"activationCode": null,
"barcode": "*********************************",
"activationUrl": null,
"formats": [
{
"key": "CNONLY",
"value": "*******************"
},
{
"key": "QCGTINBARCODE-32",
"value": "*********************************"
}
],
"amount": "5.00",
"validity": "2023-05-04T18:30:00+00:00",
"issuanceDate": "2022-05-05T05:43:07+00:00",
"cardId": 378470,
"recipientDetails": {
"salutation": null,
"name": "JANE SMITH",
"firstname": "JANE",
"lastname": "SMITH",
"email": "[email protected]",
"mobileNumber": "+61************",
"status": "",
"failureReason": "",
"delivery": {
"mode": "API",
"status": {
"sms": {
"status": "NA",
"reason": "NA"
},
"email": {
"status": "NA",
"reason": "NA"
}
}
}
},
"theme": ""
},
//... all 100 requested cards will be returned
],
"currency": {
"code": "AUD",
"numericCode": "036",
"symbol": "$"
},
"deliveryMode": "API",
"delivery": {
"summary": {
"inProgress": 0,
"sent": 0,
"delivered": 0,
"failed": 0,
"email": {
"totalCount": 0,
"delivered": 0,
"failed": 0,
"inProgress": 0
},
"sms": {
"totalCount": 0,
"delivered": 0,
"failed": 0,
"inProgress": 0
},
"totalCardsCount": 0
}
},
"total_cards": 1
}
The response contains two key sets of information:
- The 'cards' field contains the card details of every gift card created
- The 'products' field contains SKU data for each SKU ordered.
Refer to the Get Activated Cards API specification for descriptions of all fields in the request and response.
Note
When ordering more than 100 gift cards, use pagination to call the Activated Cards API to retrieve 100 gift cards at a time.
You can retrieve the next set of 100 cards, by incrementing the
offsetparameter by 100 and leaving thelimitparameter at 100.When ordering more than 500 cards, use pagination to call the Activated Cards API in a loop with a maximum limit of 500 records until all cards are retrieved.
curl --location --request GET 'https://pt-api.wpay.com.au/v1/partner/giftcards/order/{orderId}/cards?offset=100&limit=100' \
--header 'content-type: application/json' \
--header 'X-Api-Key: ************************'
Where:
orderIdis the Wpay order identifier returned when the order was placed.offsetis the starting record numberlimitis the number of cards to retrieve
The system will respond with a 201 and the details of the next 100 cards. Continue this process until all cards are retrieved.
Step 5 : Fulfill Order
Once your order has been processed successfully, you can choose to communicate the activated card details to the customer via your existing business process i.e. email or text message.
Updated 9 months ago
