{"info":{"_postman_id":"dcc2bde5-9ff7-40c0-b2a7-f055a3514a42","name":"Openpay Ecommerce API","description":"## THE OPENPAY API\nWelcome to the Openpay API reference documentation. The API is based on XML and uses standard HTTP response codes. This documentation assumes you are confident with RESTful services, web programming and comfortable making http requests.\n\n\n\n## INTRODUCTION\n\nOpenpay's ecommerce API is designed for ecommerce merchants to enable Openpay as a payment option for consumers who may elect to take out an Openpay plan.\n\nThe API facilitates the plan creation process and gives confirmation to the merchant that the plan has been successfully created, and the user is therefore entitled to have the merchant order processed.\n\nThere are three steps to the workflow:\n1. The merchant provides the purchase amount and customer information to obtain a valid Plan ID.\n2. The merchant forwards the customer to the Openpay \"websales\" website so the customer can choose their plan & receive confirmation.\n3. The customer is returned back to the merchant via a callback and are notified of the outcome for instant plans. \n\nNb. For pending plans, merchants request Openpay to capture the payment and receive confirmation in the response for step 3.\n\n----\n\n\n\n## API CALLS\n\nThe API supports the following calls. Detailed descriptions are available in the call sections below.\n\n| Call                            | Description                                                                 |\n|---------------------------------|-----------------------------------------------------------------------------|\n| `NewOnlineOrder`                | Request a new plan ID.                                                      |\n| `OnlineOrderStatus`             | Order status for any valid plan ID.                                         |\n| `OnlineOrderPaymentStatus`      | Payment status for active plans.                                            |\n| `OnlineOrderCapturePayment`     | Capture's the payment for pending plans.                                    |\n| `OnlineOrderReduction`          | Refund or reduce a plan/order.                                              |\n| `OnlineOrderDispatchPlan`       | Notify openpay that an order has been dispatched.                           |\n| `OnlineOrderChangeDeliveryDate` | Change the delivery date of an order.                                       |\n| `MinMaxPurchasePrice`           | Request the min/max purchase price configured for the merchant.             |\n| `RetailerPlanInformation`       | Request plan information for the merchant.                                  |\n| `OnlineOrderFraudAlert`         | Notify openpay when a customer is fraudulant after a plan has been created. |\n\n\n\n----\n\n## Authentication\n\nThe API uses token-based authentication namely a JamAuthToken. Tokens will be provided and must be included in the body of all requests made to the API. The JamAuthToken can authenticate any API action described in this documentation.\n\nJam tokens must only be used on your server, and never in the frontend of your application to avoid users obtaining the tokens and using them maliciously. \n\nTokens should be shared with the minimum number of people necessary in your organisation for security reasons. Similarly, you should avoid embedding Jam tokens in your backend and instead include them in environment variables or configruations.\n\n----\n\n\n\n## REQUEST/RESPONSE\nThe API uses token-based authentication which needs to be included in the body of your request. Please ensure that all connections are using TLS 1.2\n\nPOST requests should have a Content-Type: application/xml header, except when using the `RetailerPlanInformation` call in which case use the application/json header. Responses return XML/JSON with a consistent structure.\n\n----\n\n\n\n## GETTING STARTED\n\nOpenpay provides a simple API which is uses HTTP response codes to indicate errors and uses only HTTP POST requests. The API is compatible with most HTTP clients and will respond with XML and JSON payloads.\n\nTo get started first obtain your test JamAuthToken from openpay which will be provided with an endpoint and your configuration details.\n\nOnce your JamAuthToken is provided you can experiment with the API calls using the Openpay postman collections herein.\n\nSample responses are included below for clarity.\n\n----\n\n\n\n## ERROR CODES\n\nThe following error codes are possible in the API responses:\n\n| Error | Error Description                                                                     |\n|-------|---------------------------------------------------------------------------------------|\n| 12700 | Retailer identity key supplied not valid (check Jam Token)                               |\n| 12701 | Retailer is not Active (check Jam Token)                                                                |\n| 12702 | Retailer location is not Active (check Jam Token)                                                     |\n| 12703 | Retailer location origin not Active (check Jam Token)                                                 |\n| 12704 | Plan ID supplied does not exist                                                       |\n| 12705 | Plan ID supplied is not owned by this Retailer                                      |\n| 12708 | Invalid Purchase Price (<0,   Not Numeric or outside of Min/Max Purchase Price range) |\n| 12709 | New Purchase Price is greater   than current Purchase Price                           |\n| 12710 | New Purchase Price is less than   or equal to zero                                    |\n| 12711 | Plan must be Active for this   feature to apply                                       |\n| 12719 | Maximum number of requests for   Calendar Day reached                                 |\n| 12721 | New Delivery Date is too close   to plan creation date.                               |\n| 12722 | New Delivery Date is too far   from plan creation.                                    |\n| 12723 | New Delivery Date cannot be   earlier than today.                                     |\n| 12730 | Payment unsuccessful                                                                  |\n| 12731 | Payment errored                                                                       |\n| 12732 | Plan ID supplied is not valid   for capture                                           |\n| 12733 | Plan ID has expired and may no   longer be captured                                   |\n| 12734 | Plan Creation Mode unknown                                                            |","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json"},"item":[{"name":"NewOnlineOrder","event":[{"listen":"test","script":{"id":"643b815d-85a4-4305-9cf1-641569dbc3ae","exec":["var jsonData = xml2Json(responseBody);","pm.environment.set(\"planId\", jsonData.ResponseNewOnlineOrder.PlanID);","","// Websales Link Cheat","var websalesUrl = 'https://websales.' + pm.environment.get('environment') + '.myopenpay.co.uk';","var callbackUrl = 'https%3A%2F%2Fwebsalesclient.' + pm.environment.get('environment') + '.myopenpay.co.uk%2F';","var queryString = '?JamCallbackURL=' + callbackUrl + '&JamAuthToken=' + pm.environment.get('jamAuthToken') + '&JamPlanID=' +  pm.environment.get('planId')","var websalesFullUrl = websalesUrl + queryString;","pm.environment.set(\"websalesLink\",websalesFullUrl);","","tests[websalesFullUrl] = true;","tests['http://localhost:60382' + queryString] = true;","","","pm.test(\"API Response OK\", function () {","    pm.response.to.be.success;","});","","pm.test(\"API Status 0\", function () {","    pm.expect(parseInt( jsonData.ResponseNewOnlineOrder.status)).to.eql(0)","});","","pm.test(\"Reason Empty\", function(){","   pm.expect(jsonData.ResponseNewOnlineOrder.reason).to.be.empty","});","","pm.test(\"Valid PlanID Returned\", function () {","    pm.expect(parseInt(jsonData.ResponseNewOnlineOrder.PlanID)).to.be.above(0);","});"],"type":"text/javascript"}},{"listen":"prerequest","script":{"id":"8a27b83c-2217-4f4e-a684-1c6529ad8236","exec":[""],"type":"text/javascript"}}],"id":"7e9447d2-bc7a-4ffb-9c82-1185d288587f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<NewOnlineOrder>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n    <PurchasePrice>{{purchasePrice}}</PurchasePrice>\n    <PlanCreationType>Pending</PlanCreationType>\n    <RetailerOrderNo>{{orderNo}}</RetailerOrderNo>\n    <ChargeBackCount>{{chargeBackCount}}</ChargeBackCount>\n    <CustomerQuality>{{customerQuality}}</CustomerQuality>\n    <FirstName>{{firstName}}</FirstName>\n    <FamilyName>{{familyName}}</FamilyName>\n    <Email>{{email}}</Email>\n    <DateOfBirth>{{dob}}</DateOfBirth>\n    <Gender>{{gender}}</Gender>\n    <PhoneNumber>{{phoneNumber}}</PhoneNumber>\n    <ResAddress1>{{resAddress1}}</ResAddress1>\n    <ResAddress2>{{resAddress2}}</ResAddress2>\n    <ResSuburb>{{resSuburb}}</ResSuburb>\n    <ResState>{{resState}}</ResState>\n    <ResPostCode>{{resPostCode}}</ResPostCode>\n    <DeliveryDate>{{deliveryDate}}</DeliveryDate>\n    <DelAddress1>{{delAddress1}}</DelAddress1>\n    <DelAddress2>{{delAddress2}}</DelAddress2>\n    <DelSuburb>{{delSuburb}}</DelSuburb>\n    <DelState>{{delState}}</DelState>\n    <DelPostCode>{{delPostCode}}</DelPostCode>\n\t<BasketData>\n\t\t<BasketItem>\n\t\t\t<ItemName>Shoes</ItemName>\n\t\t\t<ItemGroup>Footwear</ItemGroup>\n\t\t\t<ItemCode>1234567890</ItemCode>\n\t\t\t<ItemGroupCode>F123</ItemGroupCode>\n\t\t\t<ItemRetailUnitPrice>120.00</ItemRetailUnitPrice>\n\t\t\t<ItemQty>1</ItemQty>\n\t\t\t<ItemRetailCharge>120.00</ItemRetailCharge>\n\t\t</BasketItem>\n\t</BasketData>\n\t<TenderTypes>\n\t\t<TenderType>\n\t\t\t<Tender>Cash</Tender>\n\t\t\t<Amount>20.00</Amount>\n\t\t</TenderType>\n\t</TenderTypes>\n</NewOnlineOrder>\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/NewOnlineOrder","description":"A valid Plan ID is required before an Openpay order can be processed. This API call is required before a customer is directed to Websales signin/signup.\n\nThe API response will contain the PlanID for the subsequent order placement. \n\n----\n\n### BODY STRUCTURE\n\nThe body of the requests contain the following data:\n\n| Section                       | Fields                                                                                                                                 |\n|-------------------------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| Order Information             | `PurchasePrice` `PlanCreationType` `RetailerOrderNo`                                                                                   |\n| Customer Quality Information  | `ChargeBackCount` `CustomerQuality`                                                                                                    |\n| Customer Personal Information | `FirstName` `FamilyName` `Email` `DateOfBirth` `Gender` `PhoneNumber` `ResAddress1` `ResAddress2` `ResSuburb` `ResState` `ResPostCode` |\n| Customer Delivery Details     | `DeliveryDate` `DelAddress1` `DelAddress2` `DelSuburb` `DelState` `DelPostCode`                                                        |\n| Basket Data                   | `ItemName` `ItemGroup` `ItemCode` `ItemGroupCode` `ItemRetail UnitPrice` `ItemQty` `ItemRetailCharge`                                  |\n| Split Tender Information      | `Tender` `Amount`                                                                                                                      |\n\n\n----\n\n### Field Details\n| Element            | Type        | Optional | Description                                                                                                                                                    |\n|--------------------|-------------|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `JamAuthToken`     | Chars       | No       | A unique string issued to the   Retailer                                                                                                                       |\n| `PurchasePrice`    | Decimal     | Yes      | Purchase price of the order                                                                                                                                    |\n| `PlanCreationType` | Chars       | Yes      | `Pending`, `Instant`                                                                                                                                            |\n| `RetailerOrderNo`  | As supplied | No       | Retailer Order number                                                                                                                                |\n| `ChargeBackCount`  | Number      | No       | How many chargebacks are known to have been received from this customer? `-1 Unknown`                                                                        |\n| `CustomerQuality`  | Number      | No       | How is this customer categorised? `-1 Unknown (default)`, `0 Brand new with no history`, `1   Returning good customer`, `2 Returning average`, `3 Returning bad` |\n| `FirstName`        | 50 chars    | Yes      | The customer’s first name.                                                                                                                                     |\n| `OtherNames`       | 50 chars    | No       | The customer’s other names (middle names).                                                                                                                     |\n| `FamilyName`       | 50 chars    | Yes      | The customer’s family name.                                                                                                                                    |\n| `Email`            | 150 chars   | Yes      | The customers email address..                                                                                                                       |\n| `DateOfBirth`      | 11 chars    | No       | Format: dd mmm yyyy                                                                                                                                            |\n| `Gender`           | 1 char      | No       | `U Unspecified`, `M Male`, `F Female`, `O Other`                                                                                                                       |\n| `PhoneNumber`      | 25 chars    | No       | Valid mobile phone number                                                                                                                                      |\n| `ResAddress1`      | 100 chars   | No       | Physical residential address (line 1) as it would be known to the credit checking authority.  It may not be a PO Box.                                  |\n| `ResAddress2`      | 100 chars   | No       | Physical address (line 2).                                                                                                                               |\n| `ResSuburb`        | 100 chars   | No       | Physical suburb.                                                                                                                                         |\n| `ResState`         | 100 chars     | No       | State or county.                                                                                                                                           |\n| `ResPostCode`      | 8 chars     | No       | The postcode for the customers address.                                                                                                                      |\n| `DeliveryDate`     | date        | No       | Format: dd mmm yyyy                                                                                                                                            |\n| `DelAddress1`      | 100 chars   | Yes      | Delivery address                                                                                                                                               |\n| `DelAddress2`      | 100 chars   | No       | Delivery address (line 2)                                                                                                                                      |\n| `DelSuburb`        | 100 chars   | Yes      | Delivery suburb / town / county                                                                                                                                |\n| `DelState`         | 3 chars     | Yes      | The state or county.                                                                                                                                           |\n| `DelPostCode`      | 8 chars     | Yes      | The postcode for the customers address.                                                                                                                      |\n\n----\n\n\n### OPTIONAL BASKET DATA\n\nThe basket data component, if supplied may contain a collection of the following:\n\n| Element              | Value   | Mandatory? | Notes                                                                                                                                       |\n|------------------------|---------|------------|---------------------------------------------------------------------------------------------------------------------------------------------|\n| `ItemName`             | Chars   | Yes        | A description of the item used   by the retailer.                                                                                           |\n| `ItemGroup`            | Chars   | No         | A group level description if   available.                                                                                                   |\n| `ItemCode`             | Chars   | Yes        | An internal stock number for   this item.                                                                                                   |\n| `ItemGroupCode`        | Chars   | No         | If a group has an internal code   that may be used to refer to it, it can be supplied.                                                      |\n| `ItemRetail UnitPrice` | Decimal | Yes        | The individual retail price   charged for the item.  It may be   omitted if required in situations where group discounts have been applied. |\n| `ItemQty`              | Number  | Yes        | How many of the items were   purchased.                                                                                                     |\n| `ItemRetailCharge`     | Decimal | Yes        | The overall retail charge for   the quantity of items.                                                                                      |\n\n\n\n### OPTIONAL SPLIT TENDERS\n\nFor situations involving split tenders, the following details may be supplied:\n\n| Element | Value   | Mandatory? | Notes                                                                                                                                                                                                                                                                      |\n|---------|---------|------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `Tender`  | Chars   | Yes        | A short description of the   tender type. e.g. “Cash”, “Card”, “Openpay”, “Unknown”, etc.  The unknown would reflect where the rest of   the transaction has not yet been conducted.                                                                                       |\n| `Amount`  | Decimal | Yes        | How much of the overall purchase   price has been allocated against this tender type.  The assumption here is that the purchase   price that is visible in the call only represents the value that Openpay   needs to satisfy although the overall purchase may be higher. |\n\n\n----\n\n### RESPONSE\n\nThe response will contain the Plan ID that can be used for the subsequent order placement.\n\n| Element         | Format      | Notes                                                                                                                                                                                                      |\n|-----------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `Status`          | Int         | `0  Successful` `>0 Error Code`                                                                                                                                                                            |\n| `Reason`          | Chars       | A description of why it was   unsuccessful.                                                                                                                                                                |\n| `PlanID`          | BigInt (13) | A 13 digit number representing   the Plan ID that can be used in the subsequent order. 13 digits are used in   case the retailer wishes to print the Plan ID as an EAN barcode on any   receipts produced. |\n| `EncryptedPlanID` | Chars       | Future Use: Encrypted version of   Plan ID, which should be used for secure Plan related communications.                                                                                                   |\n| `BackListMatch`   | Number      | `-1 Not enough information   supplied to check BlackList` `0 No match against black list database` `1 One   or more attributes supplied match a black list`                                                |\n| `TransactionToken`   | Chars      | Transaction token attached to the PlanID, this token should be use to authorise transaction |"},"response":[{"id":"11fff806-cec9-4ad8-8746-df546e186255","name":"Bad JamAuthToken","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/xml","type":"text"}],"body":{"mode":"raw","raw":"<NewOnlineOrder>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n    <PurchasePrice>{{purchasePrice}}</PurchasePrice>\n    <PlanCreationType>Pending</PlanCreationType>\n    <RetailerOrderNo>{{orderNo}}</RetailerOrderNo>\n    <ChargeBackCount>{{chargeBackCount}}</ChargeBackCount>\n    <CustomerQuality>{{customerQuality}}</CustomerQuality>\n    <FirstName>{{firstName}}</FirstName>\n    <FamilyName>{{familyName}}</FamilyName>\n    <Email>{{email}}</Email>\n    <DateOfBirth>{{dob}}</DateOfBirth>\n    <Gender>{{gender}}</Gender>\n    <PhoneNumber>{{phoneNumber}}</PhoneNumber>\n    <ResAddress1>{{resAddress1}}</ResAddress1>\n    <ResAddress2>{{resAddress2}}</ResAddress2>\n    <ResSuburb>{{resSuburb}}</ResSuburb>\n    <ResState>{{resState}}</ResState>\n    <ResPostCode>{{resPostCode}}</ResPostCode>\n    <DeliveryDate>{{deliveryDate}}</DeliveryDate>\n    <DelAddress1>{{delAddress1}}</DelAddress1>\n    <DelAddress2>{{delAddress2}}</DelAddress2>\n    <DelSuburb>{{delSuburb}}</DelSuburb>\n    <DelState>{{delState}}</DelState>\n    <DelPostCode>{{delPostCode}}</DelPostCode>\n</NewOnlineOrder>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/NewOnlineOrder"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:48:39 GMT"},{"key":"Content-Length","value":"252"}],"cookie":[],"responseTime":null,"body":"<ResponseNewOnlineOrder xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12700</status>\n    <reason>Online Retailer Location Origin Authentication Failed</reason>\n    <PlanID/>\n    <EncryptedPlanID/>\n    <BackListMatch>0</BackListMatch>\n</ResponseNewOnlineOrder>"},{"id":"2f7c2b54-98fc-4b07-8c8e-a0327f59a1b3","name":"Purchase Price out of range","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/xml","type":"text"}],"body":{"mode":"raw","raw":"<NewOnlineOrder>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n    <PurchasePrice>{{purchasePrice}}</PurchasePrice>\n    <PlanCreationType>Pending</PlanCreationType>\n    <RetailerOrderNo>{{orderNo}}</RetailerOrderNo>\n    <ChargeBackCount>{{chargeBackCount}}</ChargeBackCount>\n    <CustomerQuality>{{customerQuality}}</CustomerQuality>\n    <FirstName>{{firstName}}</FirstName>\n    <FamilyName>{{familyName}}</FamilyName>\n    <Email>{{email}}</Email>\n    <DateOfBirth>{{dob}}</DateOfBirth>\n    <Gender>{{gender}}</Gender>\n    <PhoneNumber>{{phoneNumber}}</PhoneNumber>\n    <ResAddress1>{{resAddress1}}</ResAddress1>\n    <ResAddress2>{{resAddress2}}</ResAddress2>\n    <ResSuburb>{{resSuburb}}</ResSuburb>\n    <ResState>{{resState}}</ResState>\n    <ResPostCode>{{resPostCode}}</ResPostCode>\n    <DeliveryDate>{{deliveryDate}}</DeliveryDate>\n    <DelAddress1>{{delAddress1}}</DelAddress1>\n    <DelAddress2>{{delAddress2}}</DelAddress2>\n    <DelSuburb>{{delSuburb}}</DelSuburb>\n    <DelState>{{delState}}</DelState>\n    <DelPostCode>{{delPostCode}}</DelPostCode>\n</NewOnlineOrder>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/NewOnlineOrder"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:58:11 GMT"},{"key":"Content-Length","value":"291"}],"cookie":[],"responseTime":null,"body":"<ResponseNewOnlineOrder xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12708</status>\n    <reason>Invalid Purchase Price (less than 0, Not Numeric or outside of Min/Max purchase Price range)</reason>\n    <PlanID/>\n    <EncryptedPlanID/>\n    <BackListMatch>0</BackListMatch>\n</ResponseNewOnlineOrder>"},{"id":"dfd4fbee-f97d-4d98-9dc9-54c9b7e35521","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<NewOnlineOrder>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n    <PurchasePrice>{{purchasePrice}}</PurchasePrice>\n    <PlanCreationType>Pending</PlanCreationType>\n    <RetailerOrderNo>{{orderNo}}</RetailerOrderNo>\n    <ChargeBackCount>{{chargeBackCount}}</ChargeBackCount>\n    <CustomerQuality>{{customerQuality}}</CustomerQuality>\n    <FirstName>{{firstName}}</FirstName>\n    <FamilyName>{{familyName}}</FamilyName>\n    <Email>{{email}}</Email>\n    <DateOfBirth>{{dob}}</DateOfBirth>\n    <Gender>{{gender}}</Gender>\n    <PhoneNumber>{{phoneNumber}}</PhoneNumber>\n    <ResAddress1>{{resAddress1}}</ResAddress1>\n    <ResAddress2>{{resAddress2}}</ResAddress2>\n    <ResSuburb>{{resSuburb}}</ResSuburb>\n    <ResState>{{resState}}</ResState>\n    <ResPostCode>{{resPostCode}}</ResPostCode>\n    <DeliveryDate>{{deliveryDate}}</DeliveryDate>\n    <DelAddress1>{{delAddress1}}</DelAddress1>\n    <DelAddress2>{{delAddress2}}</DelAddress2>\n    <DelSuburb>{{delSuburb}}</DelSuburb>\n    <DelState>{{delState}}</DelState>\n    <DelPostCode>{{delPostCode}}</DelPostCode>\n\t<BasketData>\n\t\t<BasketItem>\n\t\t\t<ItemName>Shoes</ItemName>\n\t\t\t<ItemGroup>Footwear</ItemGroup>\n\t\t\t<ItemCode>1234567890</ItemCode>\n\t\t\t<ItemGroupCode>F123</ItemGroupCode>\n\t\t\t<ItemRetailUnitPrice>120.00</ItemRetailUnitPrice>\n\t\t\t<ItemQty>1</ItemQty>\n\t\t\t<ItemRetailCharge>120.00</ItemRetailCharge>\n\t\t</BasketItem>\n\t</BasketData>\n\t<TenderTypes>\n\t\t<TenderType>\n\t\t\t<Tender>Cash</Tender>\n\t\t\t<Amount>20.00</Amount>\n\t\t</TenderType>\n\t</TenderTypes>\n</NewOnlineOrder>\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/NewOnlineOrder"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Server","value":"Reblaze Secure Web Gateway"},{"key":"Date","value":"Fri, 17 May 2019 04:18:20 GMT"},{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Content-Length","value":"414"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Via","value":"1.1 google"},{"key":"Alt-Svc","value":"clear"}],"cookie":[],"responseTime":null,"body":"<ResponseNewOnlineOrder xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <PlanID>9000000002359</PlanID>\n    <EncryptedPlanID>eeM8RLV/KsTeWduPSQec2iYtUO6CmPbgLa+L3uP87D0=</EncryptedPlanID>\n    <BackListMatch>0</BackListMatch>\n    <TransactionToken>fkhdyFY0tDdwjx27IxWM6uFlaPVfEcBSwHJkZvbfIOkKowgE4uXDIBrMlcNXBLaeMW7UW2HRiVrpl6Os5leHgZzijb3vyFwdMifQxR4a9S0=</TransactionToken>\n</ResponseNewOnlineOrder>"}],"_postman_id":"7e9447d2-bc7a-4ffb-9c82-1185d288587f"},{"name":"OnlinePlanCreation","event":[{"listen":"test","script":{"id":"86ce6191-03fb-4e9f-982b-4412c02c8708","exec":["// Update Environment Variables","var jsonData = xml2Json(responseBody);","","pm.environment.set(\"websalesStatus\", pm.response.status);","console.log(pm.response.status);","","// NewOnlineOrder Tests","pm.test(\"Content-Type is present\", function () {","    pm.response.to.have.header(\"Content-Type\");","});","","pm.test(\"Status 200\", function () {","    pm.expect(pm.response.to.be.success);","    ","});","","pm.test(\"Content Type is text/html\", function () {","    pm.expect(pm.response.headers.get('Content-Type')).to.eql('text/html; charset=utf-8');","});","","pm.test(\"Body includes user email\", function () {","    pm.expect(pm.response.text()).to.include(pm.environment.get(\"email\"));","});","","pm.test(\"Body includes Shopping Cart\", function () {","    pm.expect(pm.response.text()).to.include(\"Shopping Cart\");","});","","pm.test(\"Body includes purchase price\", function () {","    pm.expect(pm.response.text()).to.include(\"net-purchase-price-show\\\">£\"&pm.environment.get(\"purchasePrice\"));","});","console.log(pm.tests);"],"type":"text/javascript"}}],"id":"eb1c5335-4aaf-47ff-8a56-c619fab9b5a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":{"raw":"{{websalesLink}}?JamCallbackURL={{jamCallbackURL}}&TransactionToken={{transactionToken}}&JamCancelURL={{jamCancelURL}}&JamFailURL={{jamFailURL}}","host":["{{websalesLink}}"],"query":[{"key":"JamCallbackURL","value":"{{jamCallbackURL}}","description":"The URL that you wish the Jam system to redirect to after the process has been successfully completed."},{"key":"TransactionToken","value":"{{transactionToken}}","description":"Token value received from “NewOnlineOrder” api call. "},{"key":"JamCancelURL","value":"{{jamCancelURL}}","description":"In the event of a cancellation of the process by the user, this URL may be supplied (default: JamCallbackURL)"},{"key":"JamFailURL","value":"{{jamFailURL}}","description":"In the event of a cancellation of the process by the user, this URL may be supplied (default: JamCallbackURL)"}]},"description":"Once a Plan ID has been received, the customer can be forwarded to Websales to sign in/sign up and select their plan. This is done through by redirecting the customer to a URL with several parameters.\n\nThe resultant URL would look somewhat like this:\n```\nhttps://websales.sandbox.myopenpay.co.uk?JamCallbackURL=yoursite.co.uk?success&TransactionToken=[TransactionToken]&JamPlanID=[JamPlanID]\n```\n\n\n----\n\n\n\n### RESPONSE\n\nThe response will contain the Plan ID that can be used for the subsequent order placement.\n\n|    Element    |    Value        |    Optional?    |    Notes                                                                                                                                             |\n|---------------|-----------------|-----------------|------------------------------------------------------------------------------------------------------------------------------------------------------|\n|    `Status`     |    Chars        |    No           |    Possible outcomes of the order. `LODGED`,`CANCELLED`,`FAILURE`\n|    `Planid`     |    13 digits    |    No           |    Plan ID provided by Openpay.                                                                                                                      |\n|   `Orderid`    |    Chars        |    Yes          |    This field will be provided if the Order ID was provided.                                                                   |\n\nAn example callback URL might be:\n```\nhttps://yoursite.co.uk?status=LODGED&planid=1000000000001&orderid=mysite786\n```\n\n\n----"},"response":[],"_postman_id":"eb1c5335-4aaf-47ff-8a56-c619fab9b5a3"},{"name":"OnlineOrderCapturePayment","event":[{"listen":"test","script":{"id":"8c3fd0da-9430-4853-91d6-e1e01077538b","exec":["var jsonData = xml2Json(responseBody);","","pm.test(\"API Response OK\", function () {","    pm.response.to.be.success","});","","pm.test(\"API Status 0\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderCapturePayment.status)).to.eql(0)","});","","pm.test(\"Reason Empty\", function(){","   pm.expect(jsonData.ResponseOnlineOrderCapturePayment.reason).to.be.empty","});","","pm.test(\"PlanID Match\", function () {","    pm.expect(jsonData.ResponseOnlineOrderCapturePayment.PlanID).to.equal(pm.environment.get(\"planId\"));","});","","pm.test(\"Purchase Price Match\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderCapturePayment.PurchasePrice)).to.eql(parseInt(pm.environment.get(\"purchasePrice\")));","});",""],"type":"text/javascript"}}],"id":"95ab413b-9168-409d-a1a4-b73fb536d1e6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderCapturePayment>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n\t<PlanID>{{planId}}</PlanID>\n</OnlineOrderCapturePayment>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderCapturePayment","description":"If your `PlanCreationType` is `Pending` you will need to capture the payment once the customer has been redirected to the `CallbackURL` with a successful result.\n\nThis call will capture the deposit amount for the Plan and make the purchase Active in the Openpay system. This call must occur within 15 minutes from when the consumer has finished the Plan selection process and the user has been redirected back to your online store.\n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n\n\n----\n\n\n### RESPONSE\n\nOnce the response is received you can confidently mark the customers payment as successful.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used for capture            |\n|    `PurchasePrice`    |    Decimal        |    Purchase price of the order            |\n"},"response":[{"id":"100b64e9-71af-4eff-ba72-f17a2f9aa6de","name":"Successful capture","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderCapturePayment>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n\t<PlanID>{{planId}}</PlanID>\n</OnlineOrderCapturePayment>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderCapturePayment"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:52:50 GMT"},{"key":"Content-Length","value":"218"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderCapturePayment xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <PlanID>9000000000170</PlanID>\n    <PurchasePrice>80.0000</PurchasePrice>\n</ResponseOnlineOrderCapturePayment>"},{"id":"aff55981-7cbc-4e75-bd5a-aa6bb86916bb","name":"Bad PlanID","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderCapturePayment>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n\t<PlanID>{{planId}}</PlanID>\n</OnlineOrderCapturePayment>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderCapturePayment"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:53:20 GMT"},{"key":"Content-Length","value":"218"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderCapturePayment xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12704</status>\n    <reason>Plan ID supplied does not exist</reason>\n    <PlanID/>\n    <PurchasePrice/>\n</ResponseOnlineOrderCapturePayment>"},{"id":"b6ec9cc0-973a-44d1-ae64-c6df8201c7db","name":"Already captured","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderCapturePayment>\n    <JamAuthToken>{{jamAuthToken}}</JamAuthToken>\n\t<PlanID>{{planId}}</PlanID>\n</OnlineOrderCapturePayment>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderCapturePayment"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:53:58 GMT"},{"key":"Content-Length","value":"249"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderCapturePayment xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12732</status>\n    <reason>Plan ID supplied is not valid for capture</reason>\n    <PlanID>9000000000170</PlanID>\n    <PurchasePrice/>\n</ResponseOnlineOrderCapturePayment>"}],"_postman_id":"95ab413b-9168-409d-a1a4-b73fb536d1e6"},{"name":"OnlineOrderStatus","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"d6e21ce0-e756-4317-8c45-932a808985a7","exec":["var jsonData = xml2Json(responseBody);","","pm.test(\"API Response OK\", function () {","    pm.response.to.be.success","});","","pm.test(\"API Status 0\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderStatus.status)).to.eql(0)","});","","pm.test(\"Reason Empty\", function(){","   pm.expect(jsonData.ResponseOnlineOrderStatus.reason).to.be.empty","});","","pm.test(\"PlanID Match\", function () {","    pm.expect(jsonData.ResponseOnlineOrderStatus.PlanID).to.equal(pm.environment.get(\"planId\"));","});","","pm.test(\"Purchase Price Match\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderStatus.PurchasePrice)).to.eql(parseInt(pm.environment.get(\"purchasePrice\")));","});","","","pm.test(\"Order Status Approved\", function () {","    pm.expect(jsonData.ResponseOnlineOrderStatus.OrderStatus).to.eql('Approved');","});","","pm.test(\"Plan Status Active\", function () {","    pm.expect(jsonData.ResponseOnlineOrderStatus.PlanStatus).to.eql('Active');","});",""],"type":"text/javascript"}}],"id":"9cd131d2-9f19-41a2-89dd-416cf187ec8e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderStatus>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderStatus","description":"This call will return the order status associated with the PlanID. \n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n\n\n----\n\n\n### RESPONSE\n\nThe following response will be received.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used for capture            |\n|    `OrderStatus`           |    Chars    |    `Approved`, `Rejected`, `Refused`         |\n|    `PlanStatus`           |    Chars    |    `Active`, `Refunded`, `Finished`, `Errored`, `Refused`, `BeingProcessed`, `N/A`            |\n|    `PurchasePrice`    |    Decimal        |    Purchase price of the order            |"},"response":[{"id":"0dddc9b5-04e5-458c-b4ec-384add06d374","name":"Approved & Active","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/xml","type":"text"}],"body":{"mode":"raw","raw":"<OnlineOrderStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderStatus>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:55:54 GMT"},{"key":"Content-Length","value":"268"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <PlanID>9000000000170</PlanID>\n    <OrderStatus>Approved</OrderStatus>\n    <PlanStatus>Active</PlanStatus>\n    <PurchasePrice>80.0000</PurchasePrice>\n</ResponseOnlineOrderStatus>"},{"id":"c8a638b1-0fdb-4e8c-b79a-28e287b43b00","name":"Bad Plan ID","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/xml","type":"text"}],"body":{"mode":"raw","raw":"<OnlineOrderStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderStatus>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:56:40 GMT"},{"key":"Content-Length","value":"283"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12704</status>\n    <reason>Plan ID supplied does not exist</reason>\n    <PlanID>{{bad}}</PlanID>\n    <OrderStatus>Refused</OrderStatus>\n    <PlanStatus>Refused</PlanStatus>\n    <PurchasePrice/>\n</ResponseOnlineOrderStatus>"},{"id":"d14a6e8a-18af-47bf-ba65-7aa4a66f1a4d","name":"Websales complete pending capture","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/xml","type":"text"}],"body":{"mode":"raw","raw":"<OnlineOrderStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderStatus>"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:51:40 GMT"},{"key":"Content-Length","value":"229"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <PlanID>9000000000170</PlanID>\n    <OrderStatus/>\n    <PlanStatus/>\n    <PurchasePrice>80.0000</PurchasePrice>\n</ResponseOnlineOrderStatus>"}],"_postman_id":"9cd131d2-9f19-41a2-89dd-416cf187ec8e"},{"name":"OnlineOrderPaymentStatus","event":[{"listen":"test","script":{"id":"fdae480a-e4c4-486b-ae45-9490d44dd128","exec":["var jsonData = xml2Json(responseBody);","","pm.test(\"API Response OK\", function () {","    pm.response.to.be.success","});","","pm.test(\"API Status 0\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderPaymentStatus.status)).to.eql(0)","});","","pm.test(\"Reason Empty\", function(){","   pm.expect(jsonData.ResponseOnlineOrderPaymentStatus.reason).to.be.empty","});","","pm.test(\"PlanID Match\", function () {","    pm.expect(jsonData.ResponseOnlineOrderPaymentStatus.PlanID).to.equal(pm.environment.get(\"planId\"));","});","","pm.test(\"Plan Status Active\", function () {","    pm.expect(jsonData.ResponseOnlineOrderPaymentStatus.Plans.Plan.PlanStatus).to.eql('Active');","});","","pm.test(\"Payment Status OK\", function () {","    pm.expect(jsonData.ResponseOnlineOrderPaymentStatus.Plans.Plan.PaymentStatus).to.eql('OK');","});","","pm.test(\"Plan Error Code 0\", function () {","    pm.expect(jsonData.ResponseOnlineOrderPaymentStatus.Plans.Plan.PlanErrorCode).to.eql('0');","});","","",""],"type":"text/javascript"}}],"id":"323fe73e-ee50-4d14-8144-bbb3a3ddaf68","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderPaymentStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanIDs>\r\n\t\t<PlanID>{{planId}}</PlanID>\r\n\t</PlanIDs>\r\n</OnlineOrderPaymentStatus>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderPaymentStatus","description":"This call will return the payment status associated with the PlanID. \n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n\n\n----\n\n\n### RESPONSE\n\nThe following response will be received.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used for capture            |\n|    `PlanErrorCode`           |    Int    |    `0 Success`, `>0 Fail` |\n|    `PlanErrorReason`    |    Chars        |    Description of the error            |\n|    `PlanStatus`           |    Chars    |    `Active`, `Refunded`, `Finished`, `Errored`, `Refused`, `BeingProcessed`, `N/A` |    \n|    `PaymentStatus` | Chars |\t`OK`, `LATE`, `N/A` |"},"response":[{"id":"38d82b14-fa26-45ef-a104-2bfb21573511","name":"Bad Plan ID","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderPaymentStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanIDs>\r\n\t\t<PlanID>{{planId}}</PlanID>\r\n\t</PlanIDs>\r\n</OnlineOrderPaymentStatus>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderPaymentStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:59:35 GMT"},{"key":"Content-Length","value":"337"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderPaymentStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <Plans>\n        <Plan>\n            <PlanErrorCode>12704</PlanErrorCode>\n            <PlanErrorReason>Plan ID supplied does not exist</PlanErrorReason>\n            <PlanID>9000000000171</PlanID>\n            <PlanStatus/>\n            <PaymentStatus/>\n        </Plan>\n    </Plans>\n</ResponseOnlineOrderPaymentStatus>"},{"id":"8a8c7a94-074b-4792-957f-22a7eb4b110e","name":"Plan created pending capture","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderPaymentStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanIDs>\r\n\t\t<PlanID>{{planId}}</PlanID>\r\n\t</PlanIDs>\r\n</OnlineOrderPaymentStatus>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderPaymentStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:52:16 GMT"},{"key":"Content-Length","value":"358"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderPaymentStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <Plans>\n        <Plan>\n            <PlanErrorCode>0</PlanErrorCode>\n            <PlanErrorReason/>\n            <PlanID>9000000000170</PlanID>\n            <PlanStatus>Plan created in pending payment capture mode</PlanStatus>\n            <PaymentStatus>OK</PaymentStatus>\n        </Plan>\n    </Plans>\n</ResponseOnlineOrderPaymentStatus>"},{"id":"8e013065-deb7-4f50-8d45-bcbdb5b40596","name":"Active & OK","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderPaymentStatus>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanIDs>\r\n\t\t<PlanID>{{planId}}</PlanID>\r\n\t</PlanIDs>\r\n</OnlineOrderPaymentStatus>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderPaymentStatus"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 13:54:11 GMT"},{"key":"Content-Length","value":"320"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderPaymentStatus xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <Plans>\n        <Plan>\n            <PlanErrorCode>0</PlanErrorCode>\n            <PlanErrorReason/>\n            <PlanID>9000000000170</PlanID>\n            <PlanStatus>Active</PlanStatus>\n            <PaymentStatus>OK</PaymentStatus>\n        </Plan>\n    </Plans>\n</ResponseOnlineOrderPaymentStatus>"}],"_postman_id":"323fe73e-ee50-4d14-8144-bbb3a3ddaf68"},{"name":"OnlineOrderReduction","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}},{"listen":"test","script":{"id":"81c944c8-4f16-4faf-8468-5a9cadbe3fb3","exec":["var jsonData = xml2Json(responseBody);","","pm.test(\"API Response OK\", function () {","    pm.response.to.be.success","});","","pm.test(\"API Status 0\", function () {","    pm.expect(parseInt(jsonData.ResponseOnlineOrderReduction.status)).to.eql(0)","});","","pm.test(\"Reason Empty\", function(){","   pm.expect(jsonData.ResponseOnlineOrderReduction.reason).to.be.empty","});","","pm.test(\"PlanID Match\", function () {","    pm.expect(jsonData.ResponseOnlineOrderReduction.PlanID).to.equal(pm.environment.get(\"planId\"));","});"],"type":"text/javascript"}}],"id":"27965bcc-d83c-4650-b341-ce8b04944479","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderReduction>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewPurchasePrice>0</NewPurchasePrice>\r\n\t<ReducePriceBy>0</ReducePriceBy>\r\n\t<FullRefund>True</FullRefund>\r\n</OnlineOrderReduction>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderReduction","description":"This call allows a plan to be refunded, or reduced in value. Either by setting a new purchase price, or reducing by a specific amount. The call is provided to suit automated fulfilment systems that can automatically adjust the value of prospective orders when stock availability requires it.\n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n|    `NewPurchasePrice`          |    Money    |    No                              |    Must be zero, or greater than zero and less than the current Purchase Price for the Plan ID concerned.  Either NewPurchasePrice OR ReducePriceBy must be supplied. In the event that both are greater than zero, they both must be accurate (i.e. New Purchase Price and Reduction are correct). |\n|    `ReducePriceBy`          |    Money    |    No                              |   Must be zero, or greater than zero and less than the current Purchase Price for the Plan ID concerned.  This will reduce the current value of a Plan by the nominated amount and helps cater for Split Order situations where the original value of the order is no longer known.    |\n|    `Fullrefund`          |    True/False    |    No                              |    If True then the entire Plan will be Refunded instead of reduced.  A setting of True here will completely override the NewPurchasePrice and ReducePriceBy field values. |\n\n\n----\n\n\n### RESPONSE\n\nThe following response will be received.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used for capture            |"},"response":[{"id":"057e5046-452c-46a5-90ba-be34cff649c2","name":"Hasn't been captured","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderReduction>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewPurchasePrice>0</NewPurchasePrice>\r\n\t<ReducePriceBy>0</ReducePriceBy>\r\n\t<FullRefund>True</FullRefund>\r\n</OnlineOrderReduction>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderReduction"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 13:19:32 GMT"},{"key":"Content-Length","value":"230"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderReduction xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12711</status>\n    <reason>Invalid Web Sales Plan Status For Partial Refund</reason>\n    <PlanID>9000000000514</PlanID>\n</ResponseOnlineOrderReduction>"},{"id":"0cdb0af0-f152-45dd-89c6-8c1c7fff7987","name":"Plan ID doesn't exist","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderReduction>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewPurchasePrice>0</NewPurchasePrice>\r\n\t<ReducePriceBy>0</ReducePriceBy>\r\n\t<FullRefund>True</FullRefund>\r\n</OnlineOrderReduction>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderReduction"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Date","value":"Wed, 24 Apr 2019 13:55:23 GMT"},{"key":"Content-Length","value":"213"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderReduction xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12704</status>\n    <reason>Plan ID supplied does not exist</reason>\n    <PlanID>1000000002274</PlanID>\n</ResponseOnlineOrderReduction>"},{"id":"1ff3cc37-f814-41fd-9074-fb282b1b079c","name":"Invalid Plan Status for Refund","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderReduction>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>1000000002057</PlanID>\r\n\t<NewPurchasePrice>0</NewPurchasePrice>\r\n\t<ReducePriceBy>0</ReducePriceBy>\r\n\t<FullRefund>True</FullRefund>\r\n</OnlineOrderReduction>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderReduction"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Date","value":"Wed, 24 Apr 2019 13:56:03 GMT"},{"key":"Content-Length","value":"230"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderReduction xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12711</status>\n    <reason>Invalid Web Sales Plan Status For Partial Refund</reason>\n    <PlanID>1000000002056</PlanID>\n</ResponseOnlineOrderReduction>"}],"_postman_id":"27965bcc-d83c-4650-b341-ce8b04944479"},{"name":"OnlineOrderDispatchPlan","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}}],"id":"b02ff2a7-e555-4ad3-bb65-806cd9d603b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderDispatchPlan>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderDispatchPlan>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderDispatchPlan","description":"This call supports Retailers that are set up to not receive any payment for their Plans until their system has issued a dispatch notice. This allows those retailers to make adjustments to their orders as needed prior to fulfilment and then receive the payment and reconciliation information after the dispatch event occurs.\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n\n\n----\n\n\n### RESPONSE\n\nThe following response will be received\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used to dispatch plan          |"},"response":[{"id":"1dafe2d3-f9c7-4b65-9aeb-c60f30974576","name":"Invalid","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderDispatchPlan>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderDispatchPlan>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderDispatchPlan"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 14:02:49 GMT"},{"key":"Content-Length","value":"236"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderDispatchPlan xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12711</status>\n    <reason>Invalid Web Sales Plan Status For Partial Refund</reason>\n    <PlanID>9000000000514</PlanID>\n</ResponseOnlineOrderDispatchPlan>"},{"id":"29558487-9b4a-44f4-b0e1-4a840a975ad5","name":"12711","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderDispatchPlan>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderDispatchPlan>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderDispatchPlan"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 14:27:30 GMT"},{"key":"Content-Length","value":"236"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderDispatchPlan xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12711</status>\n    <reason>Invalid Web Sales Plan Status For Partial Refund</reason>\n    <PlanID>9000000000518</PlanID>\n</ResponseOnlineOrderDispatchPlan>"},{"id":"952265e6-1a24-41fe-a183-90b125d9c3f3","name":"Already Dispatched","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderDispatchPlan>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken> \r\n\t<PlanID>{{planId}}</PlanID>\r\n</OnlineOrderDispatchPlan>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderDispatchPlan"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 14:08:10 GMT"},{"key":"Content-Length","value":"224"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderDispatchPlan xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12713</status>\n    <reason>Web Sales Plan ID Already Dispatched</reason>\n    <PlanID>9000000000514</PlanID>\n</ResponseOnlineOrderDispatchPlan>"}],"_postman_id":"b02ff2a7-e555-4ad3-bb65-806cd9d603b0"},{"name":"OnlineOrderChangeDeliveryDate","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}}],"id":"4c4d997c-36d8-4f69-a9b9-c453a4a58e3d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderChangeDeliveryDate>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>      \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewDeliveryDate>30 May 2019</NewDeliveryDate>\r\n</OnlineOrderChangeDeliveryDate>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderChangeDeliveryDate","description":"This call allows Retailers to update the delivery date of a given plan.\n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    No                              |    The Plan ID that represents the recently created order.    |\n|    `NewDeliveryDate`          |    Chars    |    No                              |    The new delivery date to be used on the given plan. Format: dd mmm yyyy    |\n\n----\n\n\n### RESPONSE\n\nThe following response will be recieved.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID used to change delivery date           |"},"response":[{"id":"508e1171-0e3b-41d3-9312-bdcc4c5805af","name":"Date in the past","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderChangeDeliveryDate>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>      \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewDeliveryDate>30 May 2018</NewDeliveryDate>\r\n</OnlineOrderChangeDeliveryDate>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderChangeDeliveryDate"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 13:15:30 GMT"},{"key":"Content-Length","value":"171"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderChangeDeliveryDate xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12723</status>\n    <reason/>\n    <PlanID/>\n</ResponseOnlineOrderChangeDeliveryDate>"},{"id":"d530f872-c6b5-42aa-bee1-a4ac50b24c60","name":"12216","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderChangeDeliveryDate>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>      \r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<NewDeliveryDate>30 May 2019</NewDeliveryDate>\r\n</OnlineOrderChangeDeliveryDate>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderChangeDeliveryDate"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 13:15:03 GMT"},{"key":"Content-Length","value":"306"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderChangeDeliveryDate xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12216</status>\n    <reason>When creating the Hold Back Retailer Trans record, zero or more than one Retailer Trans records were found</reason>\n    <PlanID>9000000000514</PlanID>\n</ResponseOnlineOrderChangeDeliveryDate>"}],"_postman_id":"4c4d997c-36d8-4f69-a9b9-c453a4a58e3d"},{"name":"MinMaxPurchasePrice","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}}],"id":"d881af91-0669-457c-a105-4ffea32192a1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<MinMaxPurchasePrice>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>  \r\n</MinMaxPurchasePrice>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/MinMaxPurchasePrice","description":"This call returns the currently configured Min and Max purchase price range that is available for the nominated Retailer. This call may not be used more than 3 times on any given calendar day.\n\n\n----\n\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer        |\n\n----\n\n\n### RESPONSE\n\nThe following response will be recieved.\n\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `Minimum Price`           |    Int   |    The Minimum Purchase Price of an active Retailer Plan for WebSales only.          |\n|    `Maximum Price`           |    Int   |    The Maxmimum Purchase Price of an active Retailer Plan for WebSales only.          |"},"response":[{"id":"6966e300-d3f0-4742-97f4-33feb9040553","name":"Expected","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<MinMaxPurchasePrice>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>  \r\n</MinMaxPurchasePrice>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/MinMaxPurchasePrice"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 14:04:07 GMT"},{"key":"Content-Length","value":"192"}],"cookie":[],"responseTime":null,"body":"<ResponseMinMaxPurchasePrice xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <MinPrice>25.00</MinPrice>\n    <MaxPrice>2000.00</MaxPrice>\n</ResponseMinMaxPurchasePrice>"},{"id":"c4e93ff0-8612-4554-a7e2-8e019c8c67de","name":"Rate Limit","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<MinMaxPurchasePrice>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>  \r\n</MinMaxPurchasePrice>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/MinMaxPurchasePrice"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 14:26:15 GMT"},{"key":"Content-Length","value":"223"}],"cookie":[],"responseTime":null,"body":"<ResponseMinMaxPurchasePrice xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>12719</status>\n    <reason>Maximum number of requests for Calendar Day reached</reason>\n    <MinPrice/>\n    <MaxPrice/>\n</ResponseMinMaxPurchasePrice>"}],"_postman_id":"d881af91-0669-457c-a105-4ffea32192a1"},{"name":"OnlineOrderFraudAlert","id":"6c8ac9e2-713a-4b24-8fff-39057581b4cd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderFraudAlert>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<Details>Text</Details>\r\n</OnlineOrderFraudAlert>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderFraudAlert","description":"This API call is provided for those systems that support latent customer fraud warning alerts that may be received outside of the normal process.\n\n----\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n|    `PlanID`          |    BigInt (13)    |    Yes                              |    The Plan ID that represents the recently created order.    |\n|    `Details`          |    Text (2000)    |    Yes                              |    Any comments / details about the person involved that were received from the external source.    |\n\n\n### RESPONSE\n\nThe response will contain the following.\n\n|    Element          |    Format         |    Notes                                  |\n|---------------------|-------------------|-------------------------------------------|\n|    `Status`           |    Int            | `0 Success`, `>0 Fail`                    |\n|    `Reason`           |    Chars          |    A description of error encountered.    |\n|    `PlanID`           |    BigInt (13)    |    The PlanID which was inspected           |                                                              |\n\n\n----"},"response":[{"id":"88a65b07-928f-4b50-b1ec-0b296c494ced","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<OnlineOrderFraudAlert>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>\r\n\t<PlanID>{{planId}}</PlanID>\r\n\t<Details>Text</Details>\r\n</OnlineOrderFraudAlert>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/OnlineOrderFraudAlert"},"status":"OK","code":200,"_postman_previewlanguage":"xml","header":[{"key":"Content-Type","value":"application/xml; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Tue, 16 Apr 2019 13:19:05 GMT"},{"key":"Content-Length","value":"172"}],"cookie":[],"responseTime":null,"body":"<ResponseOnlineOrderFraudAlert xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">\n    <status>0</status>\n    <reason/>\n    <PlanID>9000000000514</PlanID>\n</ResponseOnlineOrderFraudAlert>"}],"_postman_id":"6c8ac9e2-713a-4b24-8fff-39057581b4cd"},{"name":"RetailerPlanInformation","event":[{"listen":"prerequest","script":{"id":"54441e11-501d-4fd9-a2f2-ba9811471218","exec":[""],"type":"text/javascript"}}],"id":"b06f6e04-3fe0-4b1f-9184-454e21ca9cc4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<RetailerPlanInformation>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>  \r\n</RetailerPlanInformation>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/RetailerPlanInformation","description":"This API call returns information relating to the retailer's plan.\n\n----\n\n### Field Details\n\n|    Element         |    Value          |    Optional?                       |    Notes                                                      |\n|--------------------|-------------------|------------------------------------|---------------------------------------------------------------|\n|    `JamAuthToken`    |    Chars          |    Either token must be present    |    A unique string issued to the Retailer                     |\n\n\n\n### RESPONSE\n\nA JSON object containing plan information. \n\n----"},"response":[{"id":"4150bb8d-b78b-47c1-9936-d2761e8ee0f3","name":"Expected","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/xml"}],"body":{"mode":"raw","raw":"<RetailerPlanInformation>\r\n\t<JamAuthToken>{{jamAuthToken}}</JamAuthToken>  \r\n</RetailerPlanInformation>\r\n"},"url":"https://integration.{{environment}}.myopenpay.co.uk/JamServiceImpl.svc/RetailerPlanInformation"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Server","value":"Microsoft-IIS/10.0"},{"key":"X-Powered-By","value":"ASP.NET"},{"key":"Date","value":"Sun, 14 Apr 2019 14:04:10 GMT"},{"key":"Content-Length","value":"658"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": 0,\n    \"reason\": null,\n    \"IntervalTypes\": [\n        {\n            \"ID\": 2,\n            \"Name\": \"Monthly\"\n        }\n    ],\n    \"PlanTypes\": [\n        {\n            \"ID\": 32002,\n            \"Name\": \"Openpay≫\"\n        }\n    ],\n    \"RetailerPlanPeriods\": [\n        {\n            \"IsPlus\": false,\n            \"MaxPurchasePrice\": 2000,\n            \"MinPurchasePrice\": 25,\n            \"PlanTierDetails\": [\n                {\n                    \"DefaultDepositPercentage\": 33.33,\n                    \"DepositFee\": 0,\n                    \"DurationInMonths\": \"2 Month\",\n                    \"EstablishmentFee\": 0,\n                    \"IntervalType\": 2,\n                    \"PaymentCount\": 2,\n                    \"PaymentFrequency\": \"Monthly|Payments\",\n                    \"PlanManagementFee\": 0\n                },\n                {\n                    \"DefaultDepositPercentage\": 25,\n                    \"DepositFee\": 0,\n                    \"DurationInMonths\": \"3 Month\",\n                    \"EstablishmentFee\": 0,\n                    \"IntervalType\": 2,\n                    \"PaymentCount\": 3,\n                    \"PaymentFrequency\": \"Monthly|Payments\",\n                    \"PlanManagementFee\": 0\n                }\n            ],\n            \"PlanTypeID\": 32002\n        }\n    ]\n}"}],"_postman_id":"b06f6e04-3fe0-4b1f-9184-454e21ca9cc4"}],"event":[{"listen":"prerequest","script":{"id":"b95ff238-1bc0-4b57-8095-eb125f2e267c","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"7c75f64c-c243-43bf-8202-eb28ef523fae","type":"text/javascript","exec":[""]}}]}