Transactions

Get and refund transactions.

Ready to Pay

Get available payment methods for a specific transaction or a purchase.

The payment methods order shown to a customer SHOULD be the same as the order in the response.

The list of available methods is generated from available Gateway Accounts intersected with the last matched Rules Engine adjust-ready-to-pay action on ready-to-pay-requested event.

If there were no actions matched for the specific request – all methods supported by the Gateway Accounts are sent.

To invert this behavior – place an all-matching rule at the very end of the ready-to-pay-requested event in Rules Engine with an empty paymentMethods property of the adjust-ready-to-pay action.

Authorizations:
header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Request Body schema: application/json
One of
currency
required
string (CurrencyCode) 3 characters

ISO 4217 alphabetic currency code.

amount
required
number <double>

The amount.

customerId
string <= 50 characters

The customer identifier string.

websiteId
required
string <= 50 characters

The website identifier string.

object

The billing address.

required
object (Risk metadata)

Risk metadata used for 3DS and risk scoring.

Responses

Response Schema: application/json
Array ()
One of
method
required
string
Value: "payment-card"

The payment method.

Digital Wallet (object) Nullable

The specific feature (eg. digital wallet or a processor) of this method. If method doesn't have any features – will be null.

brands
Array of strings (PaymentCardBrand) non-empty
Items Enum: "Visa" "MasterCard" "American Express" "Discover" "Maestro" "Solo" "Electron" "JCB" "Voyager" "Diners Club" "Switch" "Laser" "China UnionPay" "AstroPay Card"

The list of supported brands.

filters
Array of strings

For the method to be applicable any of the following filters should match. If no filters sent – no restrictions applied. This follows our standard filter format.

Request samples

Content type
application/json
Example
{
  • "currency": "USD",
  • "amount": 0,
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "billingAddress": {
    },
  • "riskMetadata": {
    }
}

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Create a transaction

Create a transaction of type sale or authorize. This endpoint supports two main styles of transactions:

  1. A real-time decision and response.
  2. User approval/interaction is required.

A real-time decision is very familiar. You send a request, and inspect the result of the response for approved or declined.

However, many transactions, especially those for alternative methods, require the user to interact with a 3rd party. You may be able to envision PayPal, for example, the user must give permission to complete the payment (or accept the billing agreement).

Even payment cards may require user approval in the case of 3D secure authentication. In the event that approval is required, you will receive a response back and notice that the result is unknown. You will find that the status is waiting-approval. And you will find in the _links section of the response a link for the approvalUrl.

In this case you would either open the approvalUrl in an iframe or in a pop (better workflow for mobile).

Authorizations:
query Parameters
expand
string

Expand a response to get a full related object included inside of the _embedded path in the response. It accepts a comma-separated list of objects to expand. See the expand guide for more info.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Request Body schema: application/json

Transaction resource.

websiteId
required
string <= 50 characters

The website identifier string.

customerId
required
string <= 50 characters

The customer identifier string.

currency
required
string 3 characters

ISO 4217 alphabetic currency code.

amount
required
number <double>

The transaction amount.

invoiceIds
Array of strings (ResourceId) Nullable

The array of invoice identifiers.

Payment Token (object) or Payment Instrument (object) or Payment Methods (object)

Payment instruction. If not supplied, customer's default payment instrument will be used.

VaultedInstrument (object) or AlternativePaymentInstrument (object) or CashInstrument (object) or CheckInstrument (object)
Deprecated
object Nullable

Billing address. If not supplied, we use the billing address associated with the payment instrument, and then customer.

requestId
string <= 50 characters Nullable ^[\-\w]+$

The request id is recommended. It prevents duplicate transaction requests within a short period of time. If a duplicate request is sent with the same requestId it will be ignored to prevent double-billing anyone. It must be unique within a 24-hour period. We recommend generating a UUID v4 as its value.

gatewayAccountId
string <= 50 characters Nullable

Rebilly will select the appropriate payment gateway account for the transaction based on the properties of the transaction and the gateway-account-requested event rules configurations. If you wish to prevent Rebilly from making the gateway account selection, you may supply a gateway account id here, and it will be used instead. Only use this field if you intend to override the settings.

description
string <= 255 characters Nullable

The payment description.

notificationUrl
string <uri> Nullable

The URL where a server-to-server notification request type POST with a transaction payload will be sent when the transaction's result is finalized. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. You may use {id} or {result} as placeholders in the URL and we will replace them with the transaction's id and result accordingly.

redirectUrl
string <uri> Nullable

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL. You may use {id} or {result} as placeholders in the URL and we will replace them with the transaction's id and result accordingly.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

object (Risk metadata)

Risk metadata used for 3DS and risk scoring.

isProcessedOutside
boolean
Default: false

True if transaction was processed outside Rebilly.

isMerchantInitiated
boolean
Default: false

True if the transaction was initiated by the merchant.

processedTime
string <date-time>

The time the transaction was processed. Can be specified only if transaction was processed outside Rebilly.

type
required
string
Enum: "3ds-authentication" "sale" "authorize"

The type of transaction requested. You should always include the type within your API request. This supports a limited subset of Transaction types. To refund or void, use the refund endpoint. To capture use the sale type. If any existing authorize transactions are eligible, then they will be captured and the sale will be converted to a capture type.

Responses

Response Schema: application/json
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

Content type
application/json
{
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "currency": "USD",
  • "amount": 97.97,
  • "invoiceIds": [
    ],
  • "paymentInstruction": {
    },
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "requestId": "44433322-2c4y-483z-a0a9-158621f77a21",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "description": "string",
  • "notificationUrl": "http://example.com",
  • "redirectUrl": "http://example.com",
  • "customFields": {
    },
  • "riskMetadata": {
    },
  • "isProcessedOutside": false,
  • "isMerchantInitiated": false,
  • "processedTime": "2019-08-24T14:15:22Z",
  • "type": "3ds-authentication"
}

Response samples

Content type
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "type": "3ds-authentication",
  • "status": "completed",
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD",
  • "purchaseAmount": 0,
  • "purchaseCurrency": "USD",
  • "requestAmount": 0,
  • "requestCurrency": "USD",
  • "parentTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "childTransactions": [
    ],
  • "invoiceIds": [
    ],
  • "subscriptionIds": [
    ],
  • "planIds": [
    ],
  • "isRebill": true,
  • "rebillNumber": 0,
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "has3ds": true,
  • "3ds": {
    },
  • "redirectUrl": "http://example.com",
  • "retryNumber": 0,
  • "isRetry": true,
  • "billingDescriptor": "string",
  • "description": "string",
  • "requestId": "string",
  • "hasAmountAdjustment": true,
  • "gatewayName": "A1Gateway",
  • "customFields": {
    },
  • "processedTime": "2019-08-24T14:15:22Z",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gatewayTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gateway": {
    },
  • "acquirerName": "Adyen",
  • "method": "payment-card",
  • "velocity": 0,
  • "revision": 0,
  • "referenceData": {
    },
  • "bin": "string",
  • "hasDcc": true,
  • "dcc": {
    },
  • "hasBumpOffer": true,
  • "bumpOffer": {
    },
  • "riskScore": 0,
  • "riskMetadata": {
    },
  • "notificationUrl": "http://example.com",
  • "retryInstruction": {
    },
  • "retriedTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "retriesResult": "approved",
  • "isDisputed": true,
  • "disputeTime": "2019-08-24T14:15:22Z",
  • "disputeStatus": "response-needed",
  • "isReconciled": true,
  • "isProcessedOutside": true,
  • "isMerchantInitiated": true,
  • "hadDiscrepancy": true,
  • "orderId": "string",
  • "arn": "74836950144358910018150",
  • "scheduledTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "_embedded": [
    ]
}

Retrieve a list of transactions

Retrieve a list of transactions.

Authorizations:
query Parameters
limit
integer [ 0 .. 1000 ]

The collection items limit.

offset
integer >= 0

The collection items offset.

filter
string

The collection items filter requires a special format. Use "," for multiple allowed values. Use ";" for multiple fields. See the filter guide for more options and examples about this format.

q
string

The partial search of the text fields.

sort
Array of strings

The collection items sort field and order (prefix with "-" for descending sort).

expand
string

Expand a response to get a full related object included inside of the _embedded path in the response. It accepts a comma-separated list of objects to expand. See the expand guide for more info.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Responses

Response Headers
Rate-Limit-Limit
integer

The number of allowed requests in the current period.

Rate-Limit-Remaining
integer

The number of remaining requests in the current period.

Rate-Limit-Reset
string

The date in format defined by RFC 822 when the current period will reset.

Pagination-Total
integer

Total items count.

Pagination-Limit
integer

Items per page limit.

Pagination-Offset
integer

Pagination offset.

Response Schema: application/json
Array ()
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

$transactions = $client->transactions()->search([
    'filter' => 'result:approved',
]);

Response samples

Content type
application/json
[
  • {
    }
]

Retrieve a Transaction

Retrieve a Transaction with specified identifier string.

Authorizations:
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

query Parameters
expand
string

Expand a response to get a full related object included inside of the _embedded path in the response. It accepts a comma-separated list of objects to expand. See the expand guide for more info.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Responses

Response Headers
Rate-Limit-Limit
integer

The number of allowed requests in the current period.

Rate-Limit-Remaining
integer

The number of remaining requests in the current period.

Rate-Limit-Reset
string

The date in format defined by RFC 822 when the current period will reset.

Response Schema: application/json
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

$transaction = $client->transactions()->load('transactionId');

Response samples

Content type
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "type": "3ds-authentication",
  • "status": "completed",
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD",
  • "purchaseAmount": 0,
  • "purchaseCurrency": "USD",
  • "requestAmount": 0,
  • "requestCurrency": "USD",
  • "parentTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "childTransactions": [
    ],
  • "invoiceIds": [
    ],
  • "subscriptionIds": [
    ],
  • "planIds": [
    ],
  • "isRebill": true,
  • "rebillNumber": 0,
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "has3ds": true,
  • "3ds": {
    },
  • "redirectUrl": "http://example.com",
  • "retryNumber": 0,
  • "isRetry": true,
  • "billingDescriptor": "string",
  • "description": "string",
  • "requestId": "string",
  • "hasAmountAdjustment": true,
  • "gatewayName": "A1Gateway",
  • "customFields": {
    },
  • "processedTime": "2019-08-24T14:15:22Z",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gatewayTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gateway": {
    },
  • "acquirerName": "Adyen",
  • "method": "payment-card",
  • "velocity": 0,
  • "revision": 0,
  • "referenceData": {
    },
  • "bin": "string",
  • "hasDcc": true,
  • "dcc": {
    },
  • "hasBumpOffer": true,
  • "bumpOffer": {
    },
  • "riskScore": 0,
  • "riskMetadata": {
    },
  • "notificationUrl": "http://example.com",
  • "retryInstruction": {
    },
  • "retriedTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "retriesResult": "approved",
  • "isDisputed": true,
  • "disputeTime": "2019-08-24T14:15:22Z",
  • "disputeStatus": "response-needed",
  • "isReconciled": true,
  • "isProcessedOutside": true,
  • "isMerchantInitiated": true,
  • "hadDiscrepancy": true,
  • "orderId": "string",
  • "arn": "74836950144358910018150",
  • "scheduledTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "_embedded": [
    ]
}

Update a transaction

Update a transaction's custom fields.

Authorizations:
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Request Body schema: application/json

Use the patch transaction request to modify custom fields.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

Responses

Response Headers
Rate-Limit-Limit
integer

The number of allowed requests in the current period.

Rate-Limit-Remaining
integer

The number of remaining requests in the current period.

Rate-Limit-Reset
string

The date in format defined by RFC 822 when the current period will reset.

Response Schema: application/json
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

Content type
application/json
{
  • "customFields": {
    }
}

Response samples

Content type
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "type": "3ds-authentication",
  • "status": "completed",
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD",
  • "purchaseAmount": 0,
  • "purchaseCurrency": "USD",
  • "requestAmount": 0,
  • "requestCurrency": "USD",
  • "parentTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "childTransactions": [
    ],
  • "invoiceIds": [
    ],
  • "subscriptionIds": [
    ],
  • "planIds": [
    ],
  • "isRebill": true,
  • "rebillNumber": 0,
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "has3ds": true,
  • "3ds": {
    },
  • "redirectUrl": "http://example.com",
  • "retryNumber": 0,
  • "isRetry": true,
  • "billingDescriptor": "string",
  • "description": "string",
  • "requestId": "string",
  • "hasAmountAdjustment": true,
  • "gatewayName": "A1Gateway",
  • "customFields": {
    },
  • "processedTime": "2019-08-24T14:15:22Z",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gatewayTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gateway": {
    },
  • "acquirerName": "Adyen",
  • "method": "payment-card",
  • "velocity": 0,
  • "revision": 0,
  • "referenceData": {
    },
  • "bin": "string",
  • "hasDcc": true,
  • "dcc": {
    },
  • "hasBumpOffer": true,
  • "bumpOffer": {
    },
  • "riskScore": 0,
  • "riskMetadata": {
    },
  • "notificationUrl": "http://example.com",
  • "retryInstruction": {
    },
  • "retriedTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "retriesResult": "approved",
  • "isDisputed": true,
  • "disputeTime": "2019-08-24T14:15:22Z",
  • "disputeStatus": "response-needed",
  • "isReconciled": true,
  • "isProcessedOutside": true,
  • "isMerchantInitiated": true,
  • "hadDiscrepancy": true,
  • "orderId": "string",
  • "arn": "74836950144358910018150",
  • "scheduledTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "_embedded": [
    ]
}

Create a credit transaction

Create a transaction of type credit.

Authorizations:
header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Request Body schema: application/json

Transaction resource.

websiteId
required
string <= 50 characters

The website identifier string.

customerId
required
string <= 50 characters

The customer identifier string.

currency
required
string 3 characters

ISO 4217 alphabetic currency code.

amount
required
number <double>

The transaction amount.

invoiceIds
Array of strings (ResourceId) Nullable

The array of invoice identifiers.

Payment Token (object) or Payment Instrument (object) or Payment Methods (object)

Payment instruction. If not supplied, customer's default payment instrument will be used.

VaultedInstrument (object) or AlternativePaymentInstrument (object) or CashInstrument (object) or CheckInstrument (object)
Deprecated
object Nullable

Billing address. If not supplied, we use the billing address associated with the payment instrument, and then customer.

requestId
string <= 50 characters Nullable ^[\-\w]+$

The request id is recommended. It prevents duplicate transaction requests within a short period of time. If a duplicate request is sent with the same requestId it will be ignored to prevent double-billing anyone. It must be unique within a 24-hour period. We recommend generating a UUID v4 as its value.

gatewayAccountId
string <= 50 characters Nullable

Rebilly will select the appropriate payment gateway account for the transaction based on the properties of the transaction and the gateway-account-requested event rules configurations. If you wish to prevent Rebilly from making the gateway account selection, you may supply a gateway account id here, and it will be used instead. Only use this field if you intend to override the settings.

description
string <= 255 characters Nullable

The payment description.

notificationUrl
string <uri> Nullable

The URL where a server-to-server notification request type POST with a transaction payload will be sent when the transaction's result is finalized. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. You may use {id} or {result} as placeholders in the URL and we will replace them with the transaction's id and result accordingly.

redirectUrl
string <uri> Nullable

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL. You may use {id} or {result} as placeholders in the URL and we will replace them with the transaction's id and result accordingly.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

object (Risk metadata)

Risk metadata used for 3DS and risk scoring.

isProcessedOutside
boolean
Default: false

True if transaction was processed outside Rebilly.

isMerchantInitiated
boolean
Default: false

True if the transaction was initiated by the merchant.

processedTime
string <date-time>

The time the transaction was processed. Can be specified only if transaction was processed outside Rebilly.

Responses

Response Schema: application/json
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

Content type
application/json
{
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "currency": "USD",
  • "amount": 97.97,
  • "invoiceIds": [
    ],
  • "paymentInstruction": {
    },
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "requestId": "44433322-2c4y-483z-a0a9-158621f77a21",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "description": "string",
  • "notificationUrl": "http://example.com",
  • "redirectUrl": "http://example.com",
  • "customFields": {
    },
  • "riskMetadata": {
    },
  • "isProcessedOutside": false,
  • "isMerchantInitiated": false,
  • "processedTime": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "type": "3ds-authentication",
  • "status": "completed",
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD",
  • "purchaseAmount": 0,
  • "purchaseCurrency": "USD",
  • "requestAmount": 0,
  • "requestCurrency": "USD",
  • "parentTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "childTransactions": [
    ],
  • "invoiceIds": [
    ],
  • "subscriptionIds": [
    ],
  • "planIds": [
    ],
  • "isRebill": true,
  • "rebillNumber": 0,
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "has3ds": true,
  • "3ds": {
    },
  • "redirectUrl": "http://example.com",
  • "retryNumber": 0,
  • "isRetry": true,
  • "billingDescriptor": "string",
  • "description": "string",
  • "requestId": "string",
  • "hasAmountAdjustment": true,
  • "gatewayName": "A1Gateway",
  • "customFields": {
    },
  • "processedTime": "2019-08-24T14:15:22Z",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gatewayTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gateway": {
    },
  • "acquirerName": "Adyen",
  • "method": "payment-card",
  • "velocity": 0,
  • "revision": 0,
  • "referenceData": {
    },
  • "bin": "string",
  • "hasDcc": true,
  • "dcc": {
    },
  • "hasBumpOffer": true,
  • "bumpOffer": {
    },
  • "riskScore": 0,
  • "riskMetadata": {
    },
  • "notificationUrl": "http://example.com",
  • "retryInstruction": {
    },
  • "retriedTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "retriesResult": "approved",
  • "isDisputed": true,
  • "disputeTime": "2019-08-24T14:15:22Z",
  • "disputeStatus": "response-needed",
  • "isReconciled": true,
  • "isProcessedOutside": true,
  • "isMerchantInitiated": true,
  • "hadDiscrepancy": true,
  • "orderId": "string",
  • "arn": "74836950144358910018150",
  • "scheduledTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "_embedded": [
    ]
}

Retrieve a Transaction Gateway Logs

Retrieve Gateway communication Logs for Transaction with specified identifier string.

Authorizations:
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Responses

Response Schema: application/json
headers
Array of strings

The request headers.

url
string

The request URL.

request
string

The request body.

response
string

The response body.

object

The response headers.

duration
integer

The request time (miliseconds).

createdTime
string <date-time>

The log entry created time.

Array of objects (TransactionLink) non-empty

The links related to resource.

Request samples

const collection = await api.transactions.getGatewayLogs({id: 'my-transaction-id'});
collection.items.forEach(log => console.log(log.fields.url));

Response samples

Content type
application/json
{
  • "headers": [
    ],
  • "url": "string",
  • "request": "string",
  • "response": "string",
  • "responseHeaders": {
    },
  • "duration": 0,
  • "createdTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ]
}

Query a Transaction

Query a Transaction with a specified identifier string. The query will contact the gateway account to find the result and amount/currency. The response should be analyzed. If deemed appropriate, the transaction could be updated using the Transaction Update API.

Authorizations:
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Responses

Response Headers
Rate-Limit-Limit
integer

The number of allowed requests in the current period.

Rate-Limit-Remaining
integer

The number of remaining requests in the current period.

Rate-Limit-Reset
string

The date in format defined by RFC 822 when the current period will reset.

Response Schema: application/json
result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

Request samples

curl -i -X POST \
  https://api-sandbox.rebilly.com/transactions/:id/query \
  -H 'Organization-Id: 4f6cf35x-2c4y-483z-a0a9-158621f77a21' \
  -H 'REB-APIKEY: YOUR_API_KEY_HERE'

Response samples

Content type
application/json
{
  • "result": "abandoned",
  • "status": "completed",
  • "amount": 0,
  • "currency": "USD"
}

Update a Transaction status

Update a Transaction manually to completed status with given result with optional currency and amount.

Authorizations:
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

header Parameters
Organization-Id
string (ResourceId) <= 50 characters
Example: 4f6cf35x-2c4y-483z-a0a9-158621f77a21

Organization identifier in scope of which need to perform request (if not specified, the default organization will be used).

Request Body schema: application/json
result
required
string
Enum: "abandoned" "approved" "canceled" "declined"

Transaction result.

amount
number <double>

The transaction amount.

currency
string 3 characters

The transaction currency.

Responses

Response Headers
Rate-Limit-Limit
integer

The number of allowed requests in the current period.

Rate-Limit-Remaining
integer

The number of remaining requests in the current period.

Rate-Limit-Reset
string

The date in format defined by RFC 822 when the current period will reset.

Response Schema: application/json
id
string <= 50 characters

The transaction ID.

websiteId
string <= 50 characters

The website ID.

customerId
string <= 50 characters

The сustomer's ID.

type
string
Enum: "3ds-authentication" "authorize" "capture" "credit" "refund" "sale" "void"

Transaction type.

status
string
Enum: "completed" "conn-error" "disputed" "never-sent" "offsite" "partially-refunded" "pending" "refunded" "sending" "suspended" "timeout" "voided" "waiting-approval" "waiting-capture" "waiting-gateway" "waiting-refund"

Transaction status.

result
string
Enum: "abandoned" "approved" "canceled" "declined" "unknown"

Transaction result.

amount
number <double>

The transaction's amount.

currency
string 3 characters

ISO 4217 alphabetic currency code.

purchaseAmount
number <double>

The amount actually purchased which may have differed from the originally requested amount in case of an adjustment.

purchaseCurrency
string 3 characters

ISO 4217 alphabetic currency code.

requestAmount
number <double>

The amount in the payment request. If adjusted, the purchase amount and billing amount may vary from it.

requestCurrency
string 3 characters

ISO 4217 alphabetic currency code.

parentTransactionId
string <= 50 characters

The parent's transaction ID.

childTransactions
Array of strings (ResourceId)

The child transaction IDs.

invoiceIds
Array of strings (ResourceId)

The invoice IDs related to transaction.

subscriptionIds
Array of strings (ResourceId)

The orders IDs related to transaction's invoice(s).

planIds
Array of strings (ResourceId)

The plan IDs related to transaction's order(s).

isRebill
boolean
rebillNumber
integer

The transaction's rebill number.

Instrument (object) or Method only (object)
object

Billing address.

has3ds
boolean
object
redirectUrl
string <uri>

The URL to redirect the end-user when an offsite transaction is completed. Defaults to the website's configured URL.

retryNumber
integer

The position in the sequence of retries.

isRetry
boolean

True if this transaction is retry.

billingDescriptor
string

The billing descriptor that appears on the periodic billing statement. Commonly 12 or fewer characters for a credit card statement.

description
string <= 255 characters

The payment description.

requestId
string

The transaction's request ID. This ID must be unique within a 24 hour period. Use this field to prevent duplicated transactions.

hasAmountAdjustment
boolean

True if transaction has amount adjustment.

gatewayName
string
Enum: "A1Gateway" "Adyen" "Airpay" "AmexVPC" "ApcoPay" "AsiaPaymentGateway" "AstroPayCard" "AuthorizeNet" "Bambora" "BitPay" "BlueSnap" "BraintreePayments" "Cardknox" "Cashflows" "CASHlib" "CashToCode" "CauriPayment" "Cayan" "CCAvenue" "Chase" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "DataCash" "Dengi" "Dragonphoenix" "Directa24" "dLocal" "EBANX" "ecoPayz" "EcorePay" "Elavon" "Euteller" "eMerchantPay" "EMS" "EPG" "EPro" "eZeeWallet" "ezyEFT" "Finrax" "Flexepin" "FinTecSystems" "FundSend" "Forte" "GET" "Gigadat" "GlobalOnePay" "Gooney" "Gpaysafe" "Greenbox" "HiPay" "iCanPay" "ICEPAY" "iCheque" "iDebit" "Ilixium" "Ingenico" "INOVAPAY" "Inovio" "Intuit" "InstaDebit" "IpayOptions" "JetPay" "Jeton" "Khelocard" "Konnektive" "LPG" "Moneris" "MtaPay" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "NGenius" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Pagsmile" "Panamerican" "ParamountEft" "ParamountInterac" "PandaGateway" "Pay4Fun" "PayCash" "Payeezy" "Payflow" "PaymenTechnologies" "PaymentsOS" "Paymero" "PayPal" "Payr" "Paysafe" "Paysafecash" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Plugnpay" "PostFinance" "Prosa" "Realex" "Realtime" "Redsys" "Rotessa" "RPN" "SaltarPay" "Sagepay" "SeamlessChex" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "StaticGateway" "Stripe" "TestProcessor" "ToditoCash" "TrustPay" "TrustsPay" "Trustly" "TWINT" "UPayCard" "USAePay" "VantivLitle" "vegaaH" "VCreditos" "Wallet88" "Walpay" "Wirecard" "WorldlineAtosFrankfurt" "Worldpay" "Zimpler" "Zotapay"

Payment Gateway name, available only after the gateway is selected for the transaction.

customFields
object (ResourceCustomFields)
Default: {}

Custom Fields list as a map {"custom field name": "custom field value", ...}. The format must follow the saved format (see Custom Fields section for the formats).

processedTime
string <date-time>

Transaction processed time.

createdTime
string <date-time>

Transaction created time.

updatedTime
string <date-time>

Transaction updated time.

gatewayAccountId
string <= 50 characters

The transaction's Gateway Account ID.

gatewayTransactionId
string <= 50 characters

The gateway's transaction ID.

object

The related gateway information.

acquirerName
string
Enum: "Adyen" "Alipay" "AIB" "Airpay" "ApcoPay" "AsiaPaymentGateway" "AstroPay Card" "Ipay Options" "B+S" "Bambora" "BitPay" "Bank of America" "Bank of Moscow" "Bank of Rebilly" "Bank One" "BMO Harris Bank" "Borgun" "BraintreePayments" "Cardknox" "CASHlib" "CashToCode" "Catalunya Caixa" "CCAvenue" "Chase" "ChinaUnionPay" "CIM" "Circle" "Citadel" "Clearhaus" "CODVoucher" "CoinPayments" "Conekta" "Coppr" "Credorax" "Cryptonator" "CyberSource" "dLocal" "Dragonphoenix" "EBANX" "ecoPayz" "EcorePay" "Elavon" "EMS" "EPG" "Euteller" "eZeeWallet" "ezyEFT" "Fifth Third Bank" "Finrax" "First Data Buypass" "First Data Nashville" "First Data North" "First Data Omaha" "FinTecSystems" "Flexepin" "Forte" "FundSend" "Gigadat" "Global East" "Gooney" "Gpaysafe" "Heartland" "HiPay" "HSBC" "iCanPay" "ICEPAY" "iCheque" "Ilixium" "Ingenico" "INOVAPAY" "Intuit" "Jeton" "Khelocard" "Konnektive" "LPG" "Masapay" "Merrick" "Mission Valley Bank" "Moneris" "MuchBetter" "MyFatoorah" "NATWEST" "Neosurf" "Netbanking" "Neteller" "NinjaWallet" "NMI" "NuaPay" "OchaPay" "Onlineueberweisen" "OnRamp" "Other" "Panamerican" "Panda Bank" "Paramount" "ParamountEft" "ParamountInterac" "Pay4fun" "PayCash" "PaymenTechnologies" "PaymentsOS" "Paymero" "Paynetics" "PayPal" "Payr" "PayTabs" "PayULatam" "Payvision" "Piastrix" "Peoples Trust Company" "PostFinance" "Privatbank" "Prosa" "QQPay" "RBC" "RBS WorldPay" "RealTime" "Rotessa" "SaltarPay" "SecureTrading" "Skrill" "SmartInvoice" "SMSVoucher" "Sofort" "SparkPay" "State Bank of Mauritius" "Stripe" "TBI" "TestProcessor" "ToditoCash" "Trustly" "TrustPay" "TrustsPay" "TSYS" "TWINT" "UPayCard" "Vantiv" "VCreditos" "VoicePay" "Wallet88" "WeChat Pay" "Wells Fargo" "Wing Hang Bank" "Wirecard" "WorldPay" "Zimpler" "Zotapay"

Acquirer name, available only when transaction use gateway, else null.

method
string
Deprecated
Enum: "payment-card" "ach" "cash" "check" "paypal" "AdvCash" "Airpay" "Alfa-click" "Alipay" "Apple Pay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" "bank-transfer-6" "bank-transfer-7" "bank-transfer-8" "bank-transfer-9" "Beeline" "Belfius-direct-net" "bitcoin" "Boleto" "Boleto-2" "Boleto-3" "cash-deposit" "CASHlib" "CashToCode" "CCAvenue" "China UnionPay" "CODVoucher" "Conekta-oxxo" "Conekta-spei" "cryptocurrency" "Cupon-de-pagos" "domestic-cards" "echeck" "ecoPayz" "ecoVoucher" "EPS" "ePay.bg" "Ethereum" "e-wallet" "ezyEFT" "eZeeWallet" "Flexepin" "Giropay" "Google Pay" "Gpaysafe" "iDebit" "iDEAL" "ING-homepay" "INOVAPAY-pin" "INOVAPAY-wallet" "InstaDebit" "instant-bank-transfer" "Interac-online" "Interac-eTransfer" "Interac-express-connect" "Interac" "invoice" "Jeton" "jpay" "Khelocard" "Klarna" "Litecoin" "LPG-online" "LPG-payment-card" "Megafon" "miscellaneous" "Bancontact" "MTS" "MuchBetter" "MyFatoorah" "Neosurf" "Netbanking" "Neteller" "Nordea-Solo" "OchaPay" "online-bank-transfer" "Onlineueberweisen" "oriental-wallet" "OXXO" "Pagsmile-lottery" "Pagsmile-deposit-express" "PayCash" "Payeer" "Paysafecard" "PayTabs" "Pay4Fun" "Paymero" "Paymero-QR" "PayULatam" "Perfect-money" "Piastrix" "PIX" "PinPay" "phone" "PhonePe" "POLi" "PostFinance-card" "PostFinance-e-finance" "Przelewy24" "QIWI" "QQPay" "Resurs" "SEPA" "Siirto" "Skrill" "Skrill Rapid Transfer" "SMSVoucher" "Sofort" "SparkPay" "swift-dbt" "Tele2" "Terminaly-RF" "Tether" "ToditoCash-card" "Trustly" "TWINT" "UniCrypt" "UPayCard" "UPI" "VCreditos" "voucher" "voucher-2" "voucher-3" "voucher-4" "Webmoney" "Webpay" "Webpay-2" "Webpay Card" "WeChat Pay" "Yandex-money" "Zotapay" "Zimpler"

Payment Method. Use paymentInstrument.method instead.

velocity
integer

The number of transactions by the same customer in the past 24 hours.

revision
integer

The number of times the transaction data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object Nullable

Transaction reference data.

bin
string <bin>

Payment Card BIN.

hasDcc
boolean

True if transaction has Dynamic Currency Conversion applied.

object

Dynamic Currency Conversion detailed information. Null if hasDcc is false.

hasBumpOffer
boolean

True if transaction has a Bump offer.

object

Bump offer information. Null if hasBumpOffer is false.

riskScore
integer

The transaction's risk score.

object

Risk metadata.

notificationUrl
string <uri> (TransactionNotificationUrl)

The URL where a server-to-server POST notification will be sent. It will be sent when the transaction's result is finalized after a timeout or an offsite interaction. Do not trust the notification; follow with a GET request to confirm the result of the transaction. Please respond with a 2xx HTTP status code, or we will reattempt the request again. The 2 placeholders are available to use in this URI: {id} and {result}.

object (PaymentRetry)
retriedTransactionId
string <= 50 characters

The retried transaction ID.

retriesResult
string
Enum: "approved" "canceled" "declined" "scheduled"

Retries sequence result.

isDisputed
boolean

True if transaction is disputed.

disputeTime
string <date-time> Nullable

Time the dispute was created, else null.

disputeStatus
string Nullable
Enum: "response-needed" "under-review" "forfeited" "won" "lost" "unknown"

The dispute's status, else null.

isReconciled
boolean

True if the transaction has been verified with gateway batch data.

isProcessedOutside
boolean

True if the transaction was processed outside of Rebilly.

isMerchantInitiated
boolean

True if the transaction was initiated by the merchant.

hadDiscrepancy
boolean

True if the transaction has been updated due to a discrepancy with its. source of truth.

orderId
string
Deprecated

The transaction's order ID. This ID must be unique within a 24 hour period. This field was renamed to the requestId.

arn
string

The acquirer reference number.

scheduledTime
string <date-time>

The time the transaction is scheduled for collection.

Array of SelfLink (object) or WebsiteLink (object) or CustomerLink (object) or GatewayAccountLink (object) or PaymentCardLink (object) or ParentTransactionLink (object) or RetriedTransactionLink (object) or LeadSourceLink (object) or ApprovalUrlLink (object) or RefundUrlLink (object) or TransactionUpdateUrlLink (object) or DisputeLink (object) or InvoicesLink (object) or QueryUrlLink (object) non-empty

The links related to resource.

Array of ParentTransactionEmbed (object) or RetriedTransactionEmbed (object) or GatewayAccountEmbed (object) or CustomerEmbed (object) or LeadSourceEmbed (object) or WebsiteEmbed (object) or PaymentCardEmbed (object) or BankAccountEmbed (object) or InvoicesEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Request samples

Content type
application/json
{
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD"
}

Response samples

Content type
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "type": "3ds-authentication",
  • "status": "completed",
  • "result": "abandoned",
  • "amount": 0,
  • "currency": "USD",
  • "purchaseAmount": 0,
  • "purchaseCurrency": "USD",
  • "requestAmount": 0,
  • "requestCurrency": "USD",
  • "parentTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "childTransactions": [
    ],
  • "invoiceIds": [
    ],
  • "subscriptionIds": [
    ],
  • "planIds": [
    ],
  • "isRebill": true,
  • "rebillNumber": 0,
  • "paymentInstrument": {
    },
  • "billingAddress": {
    },
  • "has3ds": true,
  • "3ds": {
    },
  • "redirectUrl": "http://example.com",
  • "retryNumber": 0,
  • "isRetry": true,
  • "billingDescriptor": "string",
  • "description": "string",
  • "requestId": "string",
  • "hasAmountAdjustment": true,
  • "gatewayName": "A1Gateway",
  • "customFields": {
    },
  • "processedTime": "2019-08-24T14:15:22Z",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "gatewayAccountId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gatewayTransactionId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "gateway": {
    },
  • "acquirerName": "Adyen",
  • "method": "payment-card",
  • "velocity": 0,
  • "revision": 0,
  • "referenceData": {
    },
  • "bin": "string",
  • "hasDcc": true,
  • "dcc": {
    },
  • "hasBumpOffer": true,
  • "bumpOffer": {
    },
  • "riskScore": 0,
  • "riskMetadata": {
    },
  • "notificationUrl": "http://example.com",
  • "retryInstruction": {