Modify Payment Call

Method Goals This method aims to change the specification of an already created payment. Providers could allow complete modification, no modification at all or even just the modification of some parameters of the payment.

Request Format The ModifyPayment request requires an ationType, indicating the type of modification. As well as an identification of the payment to update and the new values.

Response Format The response contains information about the payment that has been modified.

ModifyPaymentRQ Example

<ModifyPaymentRQ>
    <Action>Modify</Action>
    <BillingAgreementDetails>
        <ReferenceID>9999-53245-4578-8421</ReferenceID>
        <BillingAgreementDescription>Billing Description</BillingAgreementDescription>
        <BillingAgreementMax CurrencyCode = "EUR" Amount = "23.50"/>
        <BillingAgreementStatus>Modify</BillingAgreementStatus>
        <PayerInfo>...</PayerInfo>
    </BillingAgreementDetails>
    <Transaction Id = "99999-53245-5483-4891">
        <MerchantReference>12346879</MerchantReference>
        <CurrencyAmount CurrencyCode = "EUR" Amount = "20.00" />
        <AuthorizationCode></AuthorizationCode>
        <SenderDetails Id = "PI8542256813" />
        <TransactionTokens>
            <Attribute key = "att1" value = ""/>
            ...
        </TransactionTokens>
    </Transaction>
</ModifyPaymentRQ>

ModifyPaymentRQ

Element Number Type Description
ModifyPaymentRQ 1 Root node.
Action 1 String Type of update, its values can be: “Modify”, “Cancel”, “Update”, “Reactivate”
RecurringPaymentProfileDetails 0..1 Information used for recurring payments
RecurringPaymentProfileDetails/BillingStartDate 1 DateTime Date when billing for this profile begins
RecurringPaymentProfileDetails/ProfileReference 1 String Merchants own unique reference or invoice number
BillingAgreementDetails 0..1
BillingAgreementDetails/ReferenceID 1 Id of the billing agreement
BillingAgreementDetails/BillingAgreementDescription 1 Description of the billing agreement
BillingAgreementDetails/BillingAgreementMax 1 CurrencyAmount Maximum value allowed by the agreement. See common elements
BillingAgreementDetails/BillingAgreementStatus 1 string Action to be applied to the billig agreement, valid values are “Modify”, “Cancel”, “Update”, Reactivate”
BillingAgreementDetails/PayerInfo 1 SenderDetails Information about the payer. See common elements.
Transaction 1 Contains information about the payment transaction to modify.
@Id 1 String Transaction identifier.
Transaction/MerchantReference 1 String Payment reference in the merchants system.
Transaction/CurrencyAmount 1 CurrencyAmount Contains the new amount for the payment. See common elements
Transaction/AuthorizationCode 1 String Contains the Authorization Code of the transaction. Necesary if returned in the ProcessNotificationRS.
Transaction/SenderDetails 0..1 SenderDetails Contains information about the payment sender. Necesary if returned in the ProcessNotificationRS. See common elements.
Transaction/PaymentItemsDetails 0..1 PaymentItemsDetails Contains a list of items that are related to this payment. This items are add to the transaction information if the provider admits it, check StaticConfiguration. See common elements.
Transaction/TransactionTokens 0..1 TransactionTokens List of elements with additional data without specific place on the RQ. See common elements.

ModifyPaymentRS Example

<ModifyPaymentRS>
    <ProfileID>684214784</ProfileID>
    <BillingAgreementDetails>
        <ReferenceID>9999-53245-4578-8421</ReferenceID>
        <BillingAgreementDescription>Billing Description</BillingAgreementDescription>
        <BillingAgreementMax CurrencyCode = "EUR" Amount = "23.50"/>
        <BillingAgreementStatus>Modify</BillingAgreementStatus>
        <PayerInfo>...</PayerInfo>
    </BillingAgreementDetails>
    <Transaction Id = "99999-53245-5483-4891" IdType = "Final" Status = "Success" StatusDescription = "credited">
        <TransactionDate>2013-12-20T10:48:52.00000Z</TransactionDate>
        <CurrencyAmount CurrencyCode = "EUR" Amount = "2.20"/>
        <AuthorizationCode>1951673</AuthorizationCode>
        <SenderDetails Id = " ">
            <Email>test@example.com</Email>
            <Name>Max</Name>
            <Surname>Mustermann</Surname>
            <SenderBankDetails>
                <Holder>Max Mustermann</Holder>
                <CountryCode>ES</CountryCode>
                <IBAN>DE11888888882222222222</IBAN>
                <BIC>PNAGDE45920</BIC>
            </SenderBankDetails>
        </SenderDetails>
        <Fees>
            <Fee Id = " ">
                <CurrencyAmount CurrencyCode = "EUR" Amount = "0.00"/>
                <ExchangeRate>1.0000</ExchangeRate>
                <Description></Description>
            </Fee>
        </Fees>
        <Reasons>
            <Reason Id = "Reference">123456798</Reason>
        </Reasons>
    </Transaction>
    <Redirects>
        <HTTPRequests>
        <HTTPRequest>
            <Url>https://redirect-url.com/</Url>
            <Method>POST</Method>
            <Protocol>HTTP/1.1</Protocol>
            <FormInputs>
            <Input key = "input1" value = "value1"/>
            <Input key = "input2" value = "value2"/>
            </FormInputs>
        </HTTPRequest>
        </HTTPRequests>
    </Redirects>
</ModifyPaymentRS>

ModifyPaymentRS

Element Number Type Description
CapturePaymentRS 1 Root node.
ProfileId 0..1 String
BillingAgreementDetails 0..1
BillingAgreementDetails/ReferenceID 1 String Id of the billing agreement
BillingAgreementDetails/BillingAgreementDescription 1 String Description of the billing agreement
BillingAgreementDetails/BillingAgreementMax 1 CurrencyAmount Maximum value it will be paid. See common elements
BillingAgreementDetails/BillingAgreementStatus 1 string Action to be applied to the billig agreement, valid values are “Modify”, “Cancel”, “Update”, Reactivate”
BillingAgreementDetails/PayerInfo 1 SenderDetails Information about the payer. See common elements.
Transaction 0..1 Contains information about the payment transaction.
@Id 1 String Transaction identifier.
@IdType 1 String Transaction Id type (possible values: “Expirable” or “Final”). If “Final”, the transaction id will not change. If “Expirable”, the transaction id returned is only valid until the ExpiryDate.
@ExpiryDate 0..1 DateTime Transaction id expiration date. Only returned if IdType = Expirable.
@Status 1 String Transaction status (possible value: “Success” or “Unknown”).
@StatusDescription 0..1 String Additional information about the transaction status.
Transaction/TransactionDate 0..1 DateTime Transaction date.
Transaction/CurrencyAmount 0..1 CurrencyAmount Contains the currency and the amount of the transaction. See common elements
Transaction/AuthorizationCode 0..1 String Contains the Authorization Code of the transaction.
Transaction/SenderDetails 0..1 SenderDetails Contains information about the payment sender. See common elements.
Transaction/Fees 0..1 Fees Contains information about the transaction fees. See common elements
Transaction/Reasons 0..1 Reasons Reasons of the payment. This reasons are add to the transaction information if the provider admits it. See common elements
Redirects 0..1 Redirects Information about where to redirect the user if needed. See common elements