The paymentWithState
type represents a payment with its last state.
Example:
<payment xsi:type="paymentWithState">
<merchantID>KalixaAcceptDEMO</merchantID>
<shopID>KalixaAcceptDEMO</shopID>
<paymentMethod>
<key>2</key>
<value>VISA Deposit</value>
</paymentMethod>
<merchantTransactionID>Order99999</merchantTransactionID>
<paymentID>86b10ad3-d7f6-43fe-bccf-cfde79689584</paymentID>
<userID>u12312312</userID>
<paymentProvider>
<key>92</key>
<value>CQRUK</value>
</paymentProvider>
<amount currencyCode="EUR">100.0000</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>b8c96597-97f7-4ed8-ba63-1d512f8eb62a</id>
<definition>
<key>13</key>
<value>AuthorisedByProvider</value>
</definition>
<createdOn>2017-03-29T13:52:03.997</createdOn>
<description>Approved or completed successfully</description>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderResponseCode</key>
<value>0</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ApprovalCode</key>
<value>129560</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>true</isExecuted>
<baseAmount currencyCode="EUR">100.0000</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>471762</value>
</detail>
</paymentDetails>
</payment>
Fields:
field (type, required) | description |
---|---|
merchantID (stringID, required) | Merchant ID |
shopID (stringID, required) | Shop ID |
paymentMethod (keyStringValuePair, required) | key = ID of the corresponding payment method value = name of the corresponding payment method See Payment Methods for a list including corresponding credit/debit and reversal states. |
merchantTransactionID (stringID, required) | Merchant’s transaction ID |
paymentID (guid, required) | PXP Financial’s Unique ID of the payment There can be multiple payments with Unique ID related to one merchantTransactionID. This is possible in Refunds, or payment retries from a particular customer |
userID (stringID, required) | The customer ID |
paymentProvider (keyStringValuePair) | The provider through which the payment was processed |
amount (money, required) | same as in request |
shopFee (money) | same as in request |
creationType (keyStringValuePair, required) | same as in request |
userIP (IPAddress) | same as in request |
payment.state (paymentState, required) | The current (last) state of the payment, containing all state-specific details |
state.id (guid, required) | The ID of the payment state |
state.definition (keyStringValuePair, required) | The ID and Name of the state, e.g. 13 AuthorisedByProvider |
state.createdOn (dateTime, required) | The payment state creation date and time, UTC |
state.description (secureString) | |
state.paymentStateDetails (array of keyValueBasePairs) | Additional state-specific information (e.g. received from the card schemes in relation to the payment result). Depending on state definition ( payment.state.definition.key ) and payment method ('payment.paymentMethod.key') specific key-values can be returned in the payment.state.paymentStateDetails key-value collection. |
isExecuted (boolean) | Indicates if the payment has reached a credit/debit state indicating that the money transfer has been authorised |
baseAmount (money) | |
paymentDetails (array of keyValueBasePairs) | Further information can be delivered depending on the payment method |
paymentAccount (paymentAccount) | |
paymentAccount.paymentAccountID (paymentAccount, required) | The token associated to the card number or any alternative payment method account |
paymentAccount.details (array of keyValueBasePairs) | Further information can be delivered depending on the payment account type |
XML Schema:
<complexType name="paymentWithState">
<sequence>
<element minOccurs="1" maxOccurs="1" name="merchantID" type="stringID"/>
<element minOccurs="1" maxOccurs="1" name="shopID" type="stringID"/>
<element minOccurs="1" maxOccurs="1" name="paymentMethod" type="keyStringValuePair"/>
<element minOccurs="1" maxOccurs="1" name="merchantTransactionID" type="merchantTransactionID"/>
<element minOccurs="1" maxOccurs="1" name="paymentID" type="guid"/>
<element minOccurs="1" maxOccurs="1" name="userID" type="stringID"/>
<element minOccurs="0" maxOccurs="1" name="paymentProvider" type="keyStringValuePair"/>
<element minOccurs="1" maxOccurs="1" name="amount" type="money"/>
<element minOccurs="0" maxOccurs="1" name="shopFee" type="money"/>
<element minOccurs="1" maxOccurs="1" name="creationType" type="keyStringValuePair"/>
<element minOccurs="0" maxOccurs="1" name="userIP" type="IPAddress"/>
<element minOccurs="1" maxOccurs="1" name="state" type="paymentState"/>
<element minOccurs="0" maxOccurs="1" name="isExecuted" type="s:boolean" nillable="true"/>
<element minOccurs="0" maxOccurs="1" name="baseAmount" type="money"/>
<element minOccurs="0" maxOccurs="1" name="paymentDetails" nillable="true">
<complexType>
<sequence>
<element minOccurs="1" maxOccurs="100" name="detail" type="keyValueBasePair"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>