Server API version 1.0
Java

Results for

icon-search-large No search results yet
Enter your search query above

Create refund

POST https://{domainname}/v1/{merchantId}/payments/{paymentId}/refund

Payments

The payments REST services allow you to initiate a payment, retrieve the payment details or perform specific actions like refunding or requesting capture of a payment. A payment is identified by its paymentId. Some payment products allow a two step approach allowing you to control when the authorization takes place separate from when the funds are actually captured.

Request

You can refund any transaction by just calling this API. The system will automatically select the most appropriate means to refund the transaction based on the payment product that was used for the payment and the currency and the country of the refund request.

Create refund supports idempotent requests

Depending on the payment product of the payment you will need to supply refund specific details on where the money should be refunded to or not. You always have the option to refund just a portion of the payment amount. It is also possible to submit multiple refund requests on one payment as long as the total amount to be refunded does not exceed the total amount that was paid.

PayloadRefundRequest

      Property Type Required Description
object no SDK object type: AmountOfMoney
Object containing amount and ISO currency code attributes
amount integer (12) yes

Amount in cents and always having 2 decimals

currencyCode string (3) yes

Three-letter ISO currency code representing the currency for the amount

object no SDK object type: BankRefundMethodSpecificInput
Object containing the specific input details for a bank refund
object no,

one of group

SDK object type: BankAccountBbanRefund
Object that holds the Basic Bank Account Number (BBAN) data
accountHolderName string (30) no

Name of the account holder

accountNumber string (30) no

Bank account number

bankCity string (40) no

City of the bank to refund to

bankCode string (15) no

Bank code

bankName string (40) no

Name of the bank

branchCode string (15) no

Branch code

checkDigit string (2) no

Bank check digit

countryCode string (2) no

ISO 3166-1 alpha-2 country code of the country where the bank account is held

swiftCode string (11) no

The BIC is the Business Identifier Code, also known as SWIFT or Bank Identifier code. It is a code with an internationally agreed format to Identify a specific bank. The BIC contains 8 or 11 positions: the first 4 contain the bank code, followed by the country code and location code.

object no,

one of group

SDK object type: BankAccountIban
Object that holds the International Bank Account Number (IBAN) data
accountHolderName string (30) depends

Name in which the account is held.
Depends on: Required for the creation of a Payout
Required for Create and Update token calls.

iban string (50) depends

The IBAN is the International Bank Account Number. It is an internationally agreed format for the BBAN and includes the ISO country code and two check digits.
Depends on: Required for the creation of a Payout
Required for Create and Update token.
Required for payments with product 9000 in Austria (AT) and Germany (DE).
Required for Create mandate and Create payment with mandate calls

countryCode string (2) no

ISO 3166-1 alpha-2 country code of the country where money will be refunded to

object no SDK object type: RefundCustomer
Object containing the details of the consumer
object no SDK object type: AddressPersonal
Object containing address details
additionalInfo string (50) no

Additional address information

city string (40) depends

City
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.

countryCode string (2) depends

ISO 3166-1 alpha-2 country code
Depends on: Please note that this field is required, except when a token has been included in the request that includes this value.

houseNumber string (15) no

House number

object no SDK object type: PersonalName
Object that holds the name elements
firstName string (15) depends

Given name(s) or first name(s) of the consumer
Depends on: Required for payments with product 9000 or 9001.

surname string (70) depends

Surname(s) or last name(s) of the consumer
Depends on: Required for the creation of a Payout.
Required for payments with product 9000 or 9001.

surnamePrefix string (15) no

Middle name - In between first name and surname - of the consumer

title string (35) depends

Title of consumer
Depends on: Required for payments with product 9000 or 9001 in Austria (AT), Belgium (BE), Germany (DE), the Netherlands (NL) and Switzerland (CH).

state string (35) no

Full name of the state or province

stateCode string (9) no

State code

street string (50) depends

Streetname
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.

zip string (10) depends

Zip code
Depends on: Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.

object no SDK object type: CompanyInformation
Object containing company information
name string (40) no

Name of company, as a consumer

object no SDK object type: ContactDetailsBase
Object containing contact details like email address and phone number
emailAddress string (70) no

Email address of the consumer

emailMessageType string no

Preference for the type of email message markup
  • plain-text
  • html

refundDate string (8) no

Refund date
Format: YYYYMMDD

object no SDK object type: RefundReferences
Object that holds all reference fields that are linked to this refund
merchantReference string (30) no

Your unique reference of the transaction that is also returned in our report files. This is almost always used for your reconciliation of our report files.

Request example

SDK: Java

This scenario you will probably use the most

  • AmountOfMoney amountOfMoney = new AmountOfMoney();
    amountOfMoney.setAmount(1L);
    amountOfMoney.setCurrencyCode("EUR");
    
    BankAccountIban bankAccountIban = new BankAccountIban();
    bankAccountIban.setIban("NL53INGB0000000036");
    
    BankRefundMethodSpecificInput bankRefundMethodSpecificInput = new BankRefundMethodSpecificInput();
    bankRefundMethodSpecificInput.setBankAccountIban(bankAccountIban);
    
    PersonalName name = new PersonalName();
    name.setSurname("Coyote");
    
    AddressPersonal address = new AddressPersonal();
    address.setCountryCode("US");
    address.setName(name);
    
    ContactDetailsBase contactDetails = new ContactDetailsBase();
    contactDetails.setEmailAddress("wile.e.coyote@acmelabs.com");
    contactDetails.setEmailMessageType("html");
    
    RefundCustomer customer = new RefundCustomer();
    customer.setAddress(address);
    customer.setContactDetails(contactDetails);
    
    RefundReferences refundReferences = new RefundReferences();
    refundReferences.setMerchantReference("AcmeOrder0001");
    
    RefundRequest body = new RefundRequest();
    body.setAmountOfMoney(amountOfMoney);
    body.setBankRefundMethodSpecificInput(bankRefundMethodSpecificInput);
    body.setCustomer(customer);
    body.setRefundDate("20140306");
    body.setRefundReferences(refundReferences);
    
    try {
    	RefundResponse response = client.merchant("merchantId").payments().refund("paymentId", body);
    } catch (DeclinedRefundException e) {
    	handleDeclinedRefund(e.getRefundResult());
    } catch (ApiException e) {
    	handleApiErrors(e.getErrors());
    }
    

Responses

Please find below an overview of the possible responses.

Response 201 - CreatedRefundResponse

The refund was successfully created.

In the HTTP header the location is provided of the created refund object so you can easily query its status, by simply performing a GET on the URI provided in this header.

       Property Type Required Description
id string no

Our unique refund transaction identifier

object no SDK object type: RefundOutput
Information of the refund resource such as amount, currency, nature of the refund.
object no SDK object type: AmountOfMoney
Object containing amount and ISO currency code attributes
amount integer (12) yes

Amount in cents and always having 2 decimals

currencyCode string (3) yes

Three-letter ISO currency code representing the currency for the amount

amountPaid integer no

Amount paid

object yes,

one of group

SDK object type: RefundBankMethodSpecificOutput
Object containing specific bank refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundCardMethodSpecificOutput
Object containing specific card refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEInvoiceMethodSpecificOutput
Object containing specific e-invoice refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEWalletMethodSpecificOutput
Object containing specific eWallet refund details
object no SDK object type: RefundPaymentProduct840SpecificOutput
PayPal (payment product 840) specific details
object no SDK object type: RefundPaymentProduct840CustomerAccount
Object containing the PayPal account details
customerAccountStatus string no

Status of the PayPal account.
Possible values are:
  • verified - PayPal has verified the funding means for this account
  • unverified - PayPal has not verified the funding means for this account

customerAddressStatus string no

Status of the consumer's shipping address as registered by PayPal
Possible values are:
  • none - Status is unknown at PayPal
  • confirmed - The address has been confirmed
  • unconfirmed - The address has not been confirmed

payerId string no

The unique identifier of a PayPal account and will never change in the life cycle of a PayPal account

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundMobileMethodSpecificOutput
Object containing specific mobile refund details
network string no

The network that was used for the refund. The string that represents the network is identical to the strings that the payment product vendors use in their documentation. For instance: "Visa" for Apple Pay, and "VISA" for Android Pay.

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

paymentMethod string no

Payment method identifier used by the our payment engine with the following possible values:
  • bankRefund
  • bankTransfer
  • card
  • cash
  • directDebit
  • eInvoice
  • invoice
  • redirect

object no SDK object type: PaymentReferences
Object that holds all reference fields that are linked to this refund
merchantOrderId integer no

Your order ID for this transaction that is also returned in our report files

merchantReference string no

Your unique reference of the transaction that is also returned in our report files. This is almost always used for your reconciliation of our report files.

paymentReference string no

Payment Reference generated by WebCollect

providerId string no

Provides an additional means of reconciliation for Gateway merchants

providerReference string no

Provides an additional means of reconciliation for Gateway merchants

referenceOrigPayment string no

When you did not supply a merchantReference for your payment, you need to fill this field with the reference of the original payment when you want to refund it

status enum no

Current high-level status of the refund in a human-readable form. Possible values are:
  • CREATED - The transaction has been created. This is the initial state once a new refund is created.
  • PENDING_APPROVAL - The transaction is awaiting approval from you to proceed with the processing of the refund
  • REJECTED - The refund has been rejected
  • REFUND_REQUESTED - The transaction is in the queue to be refunded
  • CAPTURED - We have successfully refunded the consumer and has received an online confirmation from the third party
  • REFUNDED - We have successfully refunded the consumer
  • CANCELLED - You have cancelled the transaction

Please see Statuses for a full overview of possible values.

object no SDK object type: OrderStatusOutput
This object has the numeric representation of the current refund status, timestamp of last status change and performable action on the current refund resource.
In case of a rejected refund, detailed error information is listed.
array no
Custom object contains the set of errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

isCancellable boolean no

Flag indicating if the payment can be cancelled
  • true
  • false

statusCategory enum no

Highlevel status of the payment, payout or refund with the following possible values:
  • CREATED - The transaction has been created. This is the initial state once a new payment, payout or refund is created. This category groups the following statuses:
    • CREATED
  • PENDING_PAYMENT: The payment is waiting on consumer action. This category groups the following statuses:
    • PENDING_PAYMENT
    • REDIRECTED
  • ACCOUNT_VERIFIED: The account has been verified. This category groups the following statuses:
    • ACCOUNT_VERIFIED
  • PENDING_MERCHANT: The transaction is awaiting approval to proceed with the payment, payout or refund. This category groups the following statuses:
    • PENDING_APPROVAL
    • PENDING_COMPLETION
    • PENDING_CAPTURE
    • PENDING_FRAUD_APPROVAL
  • PENDING_CONNECT_OR_3RD_PARTY: The transaction is in the queue to be processed. This category groups the following statuses:
    • AUTHORIZATION_REQUESTED
    • CAPTURE_REQUESTED
    • PAYOUT_REQUESTED
    • REFUND_REQUESTED
  • COMPLETED: The transaction has completed. This category groups the following statuses:
    • CAPTURED
    • PAID
    • ACCOUNT_CREDITED
    • CHARGEBACK_NOTIFICATION
  • REVERSED: The transaction has been reversed. This category groups the following statuses:
    • CHARGEBACKED
    • REVERSED
  • REFUNDED: The transaction has been refunded. This category groups the following statuses:
    • REFUNDED
  • UNSUCCESSFUL: The transaction has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
    • CANCELLED
    • REJECTED
    • REJECTED_CAPTURE
    • REJECTED_CREDIT

Please see Statuses for a full overview of possible values.

statusCode integer no

Numeric status code that is returned by either Ingenico's Global Collect Payment Platform or Ingenico's Ogone Payment Platform. It is returned to ease the migration from the local APIs to Ingenico Connect. You should not write new business logic based on this field as it will be deprecated in a future version of the API. The value can also be found in the Global Collect Payment Console, in the Global Collect report files and the Ogone BackOffice and report files.

statusCodeChangeDateTime string no

Date and time of payment
Format: YYYYMMDDHH24MISS

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "id" : "00000085001000006995000-300001",
        "refundOutput" : {
            "amountOfMoney" : {
                "amount" : 1,
                "currencyCode" : "EUR"
            },
            "references" : {
                "merchantReference" : "AcmeOrder0001",
                "paymentReference" : "0"
            },
            "paymentMethod" : "card",
            "cardRefundMethodSpecificOutput" : {
                "totalAmountPaid" : 2890,
                "totalAmountRefunded" : 0
            }
        },
        "status" : "PENDING_APPROVAL",
        "statusOutput" : {
            "isCancellable" : true,
            "statusCode" : 800,
            "statusCodeChangeDateTime" : "20140625154922"
        }
    }
    

Response 400 - Bad requestRefundErrorResponse

        Property Type Required Description
errorId string yes

Unique reference, for debugging purposes, of this error response

array yes
List of one or more errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

object no SDK object type: RefundResult
Object that contains details on the created refund in case one has been created
id string no

Our unique refund transaction identifier

object no SDK object type: RefundOutput
Object containing refund details
object no SDK object type: AmountOfMoney
Object containing amount and ISO currency code attributes
amount integer (12) yes

Amount in cents and always having 2 decimals

currencyCode string (3) yes

Three-letter ISO currency code representing the currency for the amount

amountPaid integer no

Amount paid

object yes,

one of group

SDK object type: RefundBankMethodSpecificOutput
Object containing specific bank refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundCardMethodSpecificOutput
Object containing specific card refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEInvoiceMethodSpecificOutput
Object containing specific e-invoice refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEWalletMethodSpecificOutput
Object containing specific eWallet refund details
object no SDK object type: RefundPaymentProduct840SpecificOutput
PayPal (payment product 840) specific details
object no SDK object type: RefundPaymentProduct840CustomerAccount
Object containing the PayPal account details
customerAccountStatus string no

Status of the PayPal account.
Possible values are:
  • verified - PayPal has verified the funding means for this account
  • unverified - PayPal has not verified the funding means for this account

customerAddressStatus string no

Status of the consumer's shipping address as registered by PayPal
Possible values are:
  • none - Status is unknown at PayPal
  • confirmed - The address has been confirmed
  • unconfirmed - The address has not been confirmed

payerId string no

The unique identifier of a PayPal account and will never change in the life cycle of a PayPal account

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundMobileMethodSpecificOutput
Object containing specific mobile refund details
network string no

The network that was used for the refund. The string that represents the network is identical to the strings that the payment product vendors use in their documentation. For instance: "Visa" for Apple Pay, and "VISA" for Android Pay.

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

paymentMethod string no

Payment method identifier used by the our payment engine with the following possible values:
  • bankRefund
  • bankTransfer
  • card
  • cash
  • directDebit
  • eInvoice
  • invoice
  • redirect

object no SDK object type: PaymentReferences
Object that holds all reference fields that are linked to this refund
merchantOrderId integer no

Your order ID for this transaction that is also returned in our report files

merchantReference string no

Your unique reference of the transaction that is also returned in our report files. This is almost always used for your reconciliation of our report files.

paymentReference string no

Payment Reference generated by WebCollect

providerId string no

Provides an additional means of reconciliation for Gateway merchants

providerReference string no

Provides an additional means of reconciliation for Gateway merchants

referenceOrigPayment string no

When you did not supply a merchantReference for your payment, you need to fill this field with the reference of the original payment when you want to refund it

status enum no

Current high-level status of the refund in a human-readable form. Possible values are:
  • CREATED - The transaction has been created. This is the initial state once a new refund is created.
  • PENDING_APPROVAL - The transaction is awaiting approval from you to proceed with the processing of the refund
  • REJECTED - The refund has been rejected
  • REFUND_REQUESTED - The transaction is in the queue to be refunded
  • REFUNDED - We have successfully refunded the consumer
  • REJECTED_CAPTURE - The refund was rejected by the bank or us during processing
  • CANCELLED - You have cancelled the transaction

Please see Statuses for a full overview of possible values.

object no SDK object type: OrderStatusOutput
This object has the numeric representation of the current refund status, timestamp of last status change and performable action on the current refund resource.
In case of a rejected refund, detailed error information is listed.
array no
Custom object contains the set of errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

isCancellable boolean no

Flag indicating if the payment can be cancelled
  • true
  • false

statusCategory enum no

Highlevel status of the payment, payout or refund with the following possible values:
  • CREATED - The transaction has been created. This is the initial state once a new payment, payout or refund is created. This category groups the following statuses:
    • CREATED
  • PENDING_PAYMENT: The payment is waiting on consumer action. This category groups the following statuses:
    • PENDING_PAYMENT
    • REDIRECTED
  • ACCOUNT_VERIFIED: The account has been verified. This category groups the following statuses:
    • ACCOUNT_VERIFIED
  • PENDING_MERCHANT: The transaction is awaiting approval to proceed with the payment, payout or refund. This category groups the following statuses:
    • PENDING_APPROVAL
    • PENDING_COMPLETION
    • PENDING_CAPTURE
    • PENDING_FRAUD_APPROVAL
  • PENDING_CONNECT_OR_3RD_PARTY: The transaction is in the queue to be processed. This category groups the following statuses:
    • AUTHORIZATION_REQUESTED
    • CAPTURE_REQUESTED
    • PAYOUT_REQUESTED
    • REFUND_REQUESTED
  • COMPLETED: The transaction has completed. This category groups the following statuses:
    • CAPTURED
    • PAID
    • ACCOUNT_CREDITED
    • CHARGEBACK_NOTIFICATION
  • REVERSED: The transaction has been reversed. This category groups the following statuses:
    • CHARGEBACKED
    • REVERSED
  • REFUNDED: The transaction has been refunded. This category groups the following statuses:
    • REFUNDED
  • UNSUCCESSFUL: The transaction has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
    • CANCELLED
    • REJECTED
    • REJECTED_CAPTURE
    • REJECTED_CREDIT

Please see Statuses for a full overview of possible values.

statusCode integer no

Numeric status code that is returned by either Ingenico's Global Collect Payment Platform or Ingenico's Ogone Payment Platform. It is returned to ease the migration from the local APIs to Ingenico Connect. You should not write new business logic based on this field as it will be deprecated in a future version of the API. The value can also be found in the Global Collect Payment Console, in the Global Collect report files and the Ogone BackOffice and report files.

statusCodeChangeDateTime string no

Date and time of payment
Format: YYYYMMDDHH24MISS

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "errorId" : "15eabcd5-30b3-479b-ae03-67bb351c07e6-00000092",
        "errors" : [
            {
                "code" : "20000000",
                "propertyName" : "bankRefundMethodSpecificInput.bankAccountBban.accountNumber",
                "message" : "PARAMETER_NOT_FOUND_IN_REQUEST"
            }
        ]
    }
    

Response 404 - Not foundRefundErrorResponse

The most common cause for this response id that the payment was not in a cancelable state.

        Property Type Required Description
errorId string yes

Unique reference, for debugging purposes, of this error response

array yes
List of one or more errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

object no SDK object type: RefundResult
Object that contains details on the created refund in case one has been created
id string no

Our unique refund transaction identifier

object no SDK object type: RefundOutput
Object containing refund details
object no SDK object type: AmountOfMoney
Object containing amount and ISO currency code attributes
amount integer (12) yes

Amount in cents and always having 2 decimals

currencyCode string (3) yes

Three-letter ISO currency code representing the currency for the amount

amountPaid integer no

Amount paid

object yes,

one of group

SDK object type: RefundBankMethodSpecificOutput
Object containing specific bank refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundCardMethodSpecificOutput
Object containing specific card refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEInvoiceMethodSpecificOutput
Object containing specific e-invoice refund details
totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundEWalletMethodSpecificOutput
Object containing specific eWallet refund details
object no SDK object type: RefundPaymentProduct840SpecificOutput
PayPal (payment product 840) specific details
object no SDK object type: RefundPaymentProduct840CustomerAccount
Object containing the PayPal account details
customerAccountStatus string no

Status of the PayPal account.
Possible values are:
  • verified - PayPal has verified the funding means for this account
  • unverified - PayPal has not verified the funding means for this account

customerAddressStatus string no

Status of the consumer's shipping address as registered by PayPal
Possible values are:
  • none - Status is unknown at PayPal
  • confirmed - The address has been confirmed
  • unconfirmed - The address has not been confirmed

payerId string no

The unique identifier of a PayPal account and will never change in the life cycle of a PayPal account

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

object yes,

one of group

SDK object type: RefundMobileMethodSpecificOutput
Object containing specific mobile refund details
network string no

The network that was used for the refund. The string that represents the network is identical to the strings that the payment product vendors use in their documentation. For instance: "Visa" for Apple Pay, and "VISA" for Android Pay.

totalAmountPaid integer no

Total paid amount (in cents and always with 2 decimals)

totalAmountRefunded integer no

Total refunded amount (in cents and always with 2 decimals)

paymentMethod string no

Payment method identifier used by the our payment engine with the following possible values:
  • bankRefund
  • bankTransfer
  • card
  • cash
  • directDebit
  • eInvoice
  • invoice
  • redirect

object no SDK object type: PaymentReferences
Object that holds all reference fields that are linked to this refund
merchantOrderId integer no

Your order ID for this transaction that is also returned in our report files

merchantReference string no

Your unique reference of the transaction that is also returned in our report files. This is almost always used for your reconciliation of our report files.

paymentReference string no

Payment Reference generated by WebCollect

providerId string no

Provides an additional means of reconciliation for Gateway merchants

providerReference string no

Provides an additional means of reconciliation for Gateway merchants

referenceOrigPayment string no

When you did not supply a merchantReference for your payment, you need to fill this field with the reference of the original payment when you want to refund it

status enum no

Current high-level status of the refund in a human-readable form. Possible values are:
  • CREATED - The transaction has been created. This is the initial state once a new refund is created.
  • PENDING_APPROVAL - The transaction is awaiting approval from you to proceed with the processing of the refund
  • REJECTED - The refund has been rejected
  • REFUND_REQUESTED - The transaction is in the queue to be refunded
  • REFUNDED - We have successfully refunded the consumer
  • REJECTED_CAPTURE - The refund was rejected by the bank or us during processing
  • CANCELLED - You have cancelled the transaction

Please see Statuses for a full overview of possible values.

object no SDK object type: OrderStatusOutput
This object has the numeric representation of the current refund status, timestamp of last status change and performable action on the current refund resource.
In case of a rejected refund, detailed error information is listed.
array no
Custom object contains the set of errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

isCancellable boolean no

Flag indicating if the payment can be cancelled
  • true
  • false

statusCategory enum no

Highlevel status of the payment, payout or refund with the following possible values:
  • CREATED - The transaction has been created. This is the initial state once a new payment, payout or refund is created. This category groups the following statuses:
    • CREATED
  • PENDING_PAYMENT: The payment is waiting on consumer action. This category groups the following statuses:
    • PENDING_PAYMENT
    • REDIRECTED
  • ACCOUNT_VERIFIED: The account has been verified. This category groups the following statuses:
    • ACCOUNT_VERIFIED
  • PENDING_MERCHANT: The transaction is awaiting approval to proceed with the payment, payout or refund. This category groups the following statuses:
    • PENDING_APPROVAL
    • PENDING_COMPLETION
    • PENDING_CAPTURE
    • PENDING_FRAUD_APPROVAL
  • PENDING_CONNECT_OR_3RD_PARTY: The transaction is in the queue to be processed. This category groups the following statuses:
    • AUTHORIZATION_REQUESTED
    • CAPTURE_REQUESTED
    • PAYOUT_REQUESTED
    • REFUND_REQUESTED
  • COMPLETED: The transaction has completed. This category groups the following statuses:
    • CAPTURED
    • PAID
    • ACCOUNT_CREDITED
    • CHARGEBACK_NOTIFICATION
  • REVERSED: The transaction has been reversed. This category groups the following statuses:
    • CHARGEBACKED
    • REVERSED
  • REFUNDED: The transaction has been refunded. This category groups the following statuses:
    • REFUNDED
  • UNSUCCESSFUL: The transaction has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
    • CANCELLED
    • REJECTED
    • REJECTED_CAPTURE
    • REJECTED_CREDIT

Please see Statuses for a full overview of possible values.

statusCode integer no

Numeric status code that is returned by either Ingenico's Global Collect Payment Platform or Ingenico's Ogone Payment Platform. It is returned to ease the migration from the local APIs to Ingenico Connect. You should not write new business logic based on this field as it will be deprecated in a future version of the API. The value can also be found in the Global Collect Payment Console, in the Global Collect report files and the Ogone BackOffice and report files.

statusCodeChangeDateTime string no

Date and time of payment
Format: YYYYMMDDHH24MISS

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "errorId" : "27ba5f42-e750-4cba-a3ed-9ab90067c849-0000917a",
        "errors" : [
            {
                "code" : "300240",
                "requestId" : "142727",
                "message" : "GET_ORDERSTATUS ORDER NOT FOUND"
            }
        ]
    }
    
icon_top_1