{"action":"published","release":{"url":"https://api.github.com/repos/thephpleague/omnipay-sagepay/releases/2419073","assets_url":"https://api.github.com/repos/thephpleague/omnipay-sagepay/releases/2419073/assets","upload_url":"https://uploads.github.com/repos/thephpleague/omnipay-sagepay/releases/2419073/assets{?name,label}","html_url":"https://github.com/thephpleague/omnipay-sagepay/releases/tag/2.3.0","id":2419073,"tag_name":"2.3.0","target_commitish":"master","name":"Support XML Basket","draft":false,"author":{"login":"judgej","id":395934,"avatar_url":"https://avatars.githubusercontent.com/u/395934?v=3","gravatar_id":"","url":"https://api.github.com/users/judgej","html_url":"https://github.com/judgej","followers_url":"https://api.github.com/users/judgej/followers","following_url":"https://api.github.com/users/judgej/following{/other_user}","gists_url":"https://api.github.com/users/judgej/gists{/gist_id}","starred_url":"https://api.github.com/users/judgej/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/judgej/subscriptions","organizations_url":"https://api.github.com/users/judgej/orgs","repos_url":"https://api.github.com/users/judgej/repos","events_url":"https://api.github.com/users/judgej/events{/privacy}","received_events_url":"https://api.github.com/users/judgej/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2016-01-12T12:43:31Z","published_at":"2016-01-13T11:34:25Z","assets":[],"tarball_url":"https://api.github.com/repos/thephpleague/omnipay-sagepay/tarball/2.3.0","zipball_url":"https://api.github.com/repos/thephpleague/omnipay-sagepay/zipball/2.3.0","body":"The XML Basket is supported through the `Omnipay\\Common\\Item` and `Omnipay\\Common\\ItemBag` data. Negative prices are put into the basket as discount items.\r\n\r\nThe basket was not supported at all previously, so the minor version has been raised, as sites using the `ItemBag` generically against all its drivers will now find they are sending the basket contents to SagePay.\r\n\r\nNote that the OmniPay `Item` does not support tax, so prices are assumed to be gross and tax is set to zero. The OmniPay `Item` also does not support a separate shipping/delivery item, so that will not be used.\r\n\r\nNote also that the basket totals must add up to the amount sent in the transaction, otherwise the transaction will fail. The Sage Pay test APi does not enforce that rule at present, but the live API does.\r\n\r\nIssue #44 \r\nPR #50 \r\nPR #51 \r\n"}}