API Reference

Server API version 1.0
Java

Results for

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

Get refund

GET https://{domainname}/v1/{merchantId}/refunds/{refundId}

Refunds

The refund API allows you to manipulate refunds that have been created on a payment. Funds will be refunded to either the card or wallet that was originally charged or to a bank account if a direct refund is not possible

Request

This REST service retrieves the status and additional information of a refund. No payload is required in the request.

Request example

SDK: Java

This scenario you will probably use the most

  • RefundResponse response = client.merchant("merchantId").refunds().get("refundId");
    

Responses

Please find below an overview of the possible responses.

Response 200 - OKRefundResponse

For every successfully fetched refund resource a HTTP 200 response is returned. The response body holds JSON objects detailing the refund resource retrieved.

Property Type Required Details
id string no read close
close

Description

Our unique refund transaction identifier
refundOutput object no read close
close

Description

Information of the refund resource such as amount, currency, nature of the refund.
  • SDK Object type
    RefundOutput
amountOfMoney object no read close
close

Description

Object containing amount and ISO currency code attributes
  • SDK Object type
    AmountOfMoney
amount integer (12) yes read close
close

Description

Amount in cents and always having 2 decimals
currencyCode string (3) yes read close
close

Description

Three-letter ISO currency code representing the currency for the amount
amountPaid integer no read close
close

Description

Amount paid
Group bankRefundMethodSpecificOutput object yes, one of group read close
close

Description

Object containing specific bank refund details
  • SDK Object type
    RefundBankMethodSpecificOutput
  • Property is part of a group
    Learn more

    Properties that make up a group are mutually exclusive, which means you can only include one of each group in any given call.

    If there are multiple groups at one level in the object hierarchy we use numbers to distinguish groups from one another.

totalAmountPaid integer no read close
close

Description

Total paid amount (in cents and always with 2 decimals)
totalAmountRefunded integer no read close
close

Description

Total refunded amount (in cents and always with 2 decimals)
Group cardRefundMethodSpecificOutput object yes, one of group read close
close

Description

Object containing specific card refund details
  • SDK Object type
    RefundCardMethodSpecificOutput
  • Property is part of a group
    Learn more

    Properties that make up a group are mutually exclusive, which means you can only include one of each group in any given call.

    If there are multiple groups at one level in the object hierarchy we use numbers to distinguish groups from one another.

totalAmountPaid integer no read close
close

Description

Total paid amount (in cents and always with 2 decimals)
totalAmountRefunded integer no read close
close

Description

Total refunded amount (in cents and always with 2 decimals)
Group eInvoiceRefundMethodSpecificOutput object yes, one of group read close
close

Description

Object containing specific e-invoice refund details
  • SDK Object type
    RefundEInvoiceMethodSpecificOutput
  • Property is part of a group
    Learn more

    Properties that make up a group are mutually exclusive, which means you can only include one of each group in any given call.

    If there are multiple groups at one level in the object hierarchy we use numbers to distinguish groups from one another.

totalAmountPaid integer no read close
close

Description

Total paid amount (in cents and always with 2 decimals)
totalAmountRefunded integer no read close
close

Description

Total refunded amount (in cents and always with 2 decimals)
Group eWalletRefundMethodSpecificOutput object yes, one of group read close
close

Description

Object containing specific eWallet refund details
  • SDK Object type
    RefundEWalletMethodSpecificOutput
  • Property is part of a group
    Learn more

    Properties that make up a group are mutually exclusive, which means you can only include one of each group in any given call.

    If there are multiple groups at one level in the object hierarchy we use numbers to distinguish groups from one another.

paymentProduct840SpecificOutput object yes read close
close

Description

PayPal (payment product 840) specific details
  • SDK Object type
    RefundPaymentProduct840SpecificOutput
customerAccount object no read close
close

Description

Object containing the PayPal account details
  • SDK Object type
    RefundPaymentProduct840CustomerAccount
customerAccountStatus string no read close
close

Description

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 read close
close

Description

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 read close
close

Description

The unique identifier of a PayPal account and will never change in the life cycle of a PayPal account
totalAmountPaid integer no read close
close

Description

Total paid amount (in cents and always with 2 decimals)
totalAmountRefunded integer no read close
close

Description

Total refunded amount (in cents and always with 2 decimals)
Group mobileRefundMethodSpecificOutput object yes, one of group read close
close

Description

Object containing specific mobile refund details
  • SDK Object type
    RefundMobileMethodSpecificOutput
  • Property is part of a group
    Learn more

    Properties that make up a group are mutually exclusive, which means you can only include one of each group in any given call.

    If there are multiple groups at one level in the object hierarchy we use numbers to distinguish groups from one another.

network string no read close
close

Description

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 read close
close

Description

Total paid amount (in cents and always with 2 decimals)
totalAmountRefunded integer no read close
close

Description

Total refunded amount (in cents and always with 2 decimals)
paymentMethod string no read close
close

Description

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

Description

Object that holds all reference fields that are linked to this refund
  • SDK Object type
    PaymentReferences
merchantOrderId integer no read close
close

Description

Your order ID for this transaction that is also returned in our report files
merchantReference string no read close
close

Description

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 read close
close

Description

Payment Reference generated by WebCollect
providerId string no read close
close

Description

Provides an additional means of reconciliation for Gateway merchants
providerReference string no read close
close

Description

Provides an additional means of reconciliation for Gateway merchants
referenceOrigPayment string no read close
close

Description

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 read close
close

Description

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.
statusOutput object no read close
close

Description

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.
  • SDK Object type
    OrderStatusOutput
errors array of object no read close
close

Description

Custom object contains the set of errors
items object no read close
close
  • SDK Object type
    APIError
category string no read close
close

Description

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 read close
close

Description

Error code
httpStatusCode integer no read close
close

Description

HTTP status code for this error that can be used to determine the type of error
id string no read close
close

Description

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

Description

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 read close
close

Description

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 read close
close

Description

ID of the request that can be used for debugging purposes
isCancellable boolean no read close
close

Description

Flag indicating if the payment can be cancelled
  • true
  • false
statusCategory enum no read close
close

Description

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 read close
close

Description

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 read close
close

Description

Date and time of payment
Format: YYYYMMDDHH24MISS

Response example

SDK: Java

This scenario you will probably use the most

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