Orders

A payment has a lifecycle in Rebilly, which is represented by its status.

Starting as pending if the payment is to occur in the future, or sending while the payment is being processed and sent to the gateway or processor.

Then, it may be one of several statuses:

  • never-sent: if the payment is, say, aborted during process in some way. For example, players can cancel out of a 3DS process.
  • timeout or conn-error: if the payment is, say, aborted during network errors on send to gateway.
  • waiting-capture or waiting-refund: if the payment is, say, waiting on the gateway to do some processing, typically, post-authorization processing like delayed capture.
  • waiting-approval: if the payment is waiting for the player to do some interaction, such as interacting with 3DS, China UnionPay, OchaPay, or any other method that requires interaction. Most interaction happens expediently, within minutes, but some may require a player to visit a 3rd party physical venue, and may take hours or days to complete.
  • offsite: if the user was redirected to the gateway to approve his payment.
  • completed: if the payment was sent to the gateway and completed succesfully. This does NOT mean that the payment was approved. To check approval, see the payment Result field.

Search orders

Search orders. Recommended to filter by OrderID (eg. ?filter=OrderID:1234_567890).

SecurityApiKey
Request
query Parameters
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.

sort
Array of strings

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

header Parameters
Organization-Id
string

The gaming server id maps to an organization in Rebilly (if not set will choose default user gaming server)

Responses
200

Orders were retrieved successfully

Response Schema: application/json
Array
PaymentMethod
required
string (PaymentMethod)

The payment method.

TransactionID
string <= 50 characters

The transaction identifier string. This will be unique for the merchant in Rebilly. We will attempt to use the OrderID, but if it isn't unique, we will generate a variation.

OrderID
required
string <= 50 characters

The payment identifier string. This must be unique (for the merchant) within a 24-hour period.

CasinoID
required
string <= 50 characters

The casino id maps to a website identifier string in Rebilly.

GSID
string <= 50 characters

The gaming server id maps to an organization in Rebilly (read-only).

PlayerID
required
string <= 50 characters

The player identifier string (maps to a customer in Rebilly). It is composed of two parts concatenated by an underscore. The first part is the registration casino id, and the second part the user id.

LimitCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

LimitAmount
string

The limit amount with no currency sign (55.00). This amount shall be null or 0 or 0.00 or simply not supplied with the request to indicate that there is no purchase limit in place. If there is a purchase limit, this amount should designate the available purchase limit remaining. For example, if the player has set a daily limit of $200, and has already successfully deposited $150 during that day, the limit shall be $50. Rebilly will prevent any purchase adjustment / bump from causing that limit to be breached. How to test limits?

a) Send a limit amount within $10 of the order amount and utilize a special pan that will result in a bump. b) Send an order where the limit amount is below the order amount.

LimitResetTime
string <date-time>

The time when that purchase limit would reset. In case a message needs to be displayed to the the player, this time may be transformed and used by the user interface.

OrderCurrency
required
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

OrderAmount
required
string

The payment amount with no currency sign (45.00). It is important to check the PurchaseAmount, which may be different from the OrderAmount in case the Player changed the order mid-process, which could be due to an upsell/bump scenarios.

PurchaseCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account. This will always match the OrderCurrency.

PurchaseAmount
string

The amount purchased, in the event of a bump, it will be larger than the OrderAmount with no currency sign (55.00). This amount should be used to credit the player. Please pay careful attention to this field.

BillingCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. In event of dynamic currency conversion, this will be the currency billed (read-only).

BillingAmount
string

The amount billed. In event of dynamic currency conversion, this will be the amount of the currency billed (read-only).

BillingDescriptor
string

The billing descriptor that will appear on the cardholders billing statement (read-only).

DOB
string <date>

The DOB is the date of birth of the player in ISO 8601 full-date format (yyyy-mm-dd).

IpAddress
required
string <ipv4>

The ipv4 address in dotted decimal format, such as 127.0.0.1.

Email
required
string <email>

The Email must match an email regex, and also be at a domain with a valid MX record. Rebilly will not send any emails.

FirstName
required
string [ 3 .. 45 ] characters

The player's first name.

LastName
required
string [ 3 .. 45 ] characters

The player's last name.

Address
string <= 60 characters

The Address refers to the street address, with a max length of 60 characters.

Address2
string <= 60 characters

The Address2 refers to the street address, with a max length of 60 characters.

City
string <= 45 characters

The city.

Region
string <= 45 characters

The Region refers to the state, province, territory, parish, or region.

Country
required
string <ISO-3166-1-alpha-2> <= 2 characters

The Country refers to the ISO 3166-1 alpha-2. Two characters max.

PostalCode
string <= 10 characters

The PostalCode which is also known as the post code or zip code.

PhoneNumber
string <= 20 characters

The telephone number may be either a landline or mobile.

NotificationURL
required
string <url>

In the event of an offsite payment due to third party verification, this URL will be called by the system when the payment is no longer offsite. In the event of a timeout, or other exceptional type of transaction, the NotificationURL will be used to update in the event the Result changes from unknown to another value.

RedirectURL
string <url>

In the event of an offsite payment due to third party verification, this URL will be used to redirect the player upon the completion of the interaction.

UserAgent
string <= 255 characters

The player's user-agent header (from the browser request).

Language
string <ISO-639-1-alpha-2> <= 5 characters

The player's designated as represented by the ISO-639-1 alpha-2 code and optional ISO-3166-1 alpha-2 country. For example, en-AU for Australian English.

ExtraData
object

"Extra data list as a map {"field name": "custom value", ...}". The format must follow the saved format. Recommended fields are BannerTagId, RegistrationDate, DeviceFingerprint and CPF. If a global/master user id is available, that would be appropriate too.

Status
string

Some status values require special handling.

  • waiting-approval: the user should be directed to the approvalUrl (in _links) by either pop or in an iframe which will be specified in the Display attribute value.
  • offsite: the user was already redirected to the approvalUrl and we are awaiting notification from the 3rd party gateway.
  • timeout (or conn-error): Rebilly will poll the gateway to determine if it was processed. The transaction should be held open until a determination is made. Rebilly will send a notification to the NotificationURL upon resolution of the timeout and conn-error states.
  • waiting-gateway: Rebilly will poll final status and will send a notification to NotificationURL upon completed
Enum: "pending" "sending" "timeout" "conn-error" "never-sent" "waiting-capture" "waiting-gateway" "waiting-refund" "waiting-approval" "offsite" … 5 more
Result
string

Payment result (read-only). A result of unknown means the payment should be held open/pending for future changes. That may happen because of a timeout or because interaction is necessary for further processing. If interaction is necessary, there will be a status of waiting-approval, or if the user has already been redirected to the 3rd party for approval, it would be offsite.

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

The Merchant account used for the payment (read-only).

Acquirer
string

The Acquirer used for the payment (read-only).

ResponseCode
string

A code that maps to a message. The code is a string number between 0 and 1000. See Rebilly response codes (read-only).

ResponseMessage
string

The message mapped from the code (read-only).

ResponseCodeGateway
string

A code from the downstream gateway (read-only).

ResponseMessageGateway
string

The message mapped from the code from the gateway (read-only).

HumanMessage
string

The message appropriate for presentation to a customer, translated into the language supplied in the request (read-only).

GatewayTransactionID
string

The transaction identifier from the gateway (read-only).

Display
string
Default: "iframe"

In the event interaction is required to complete the payment, there will be an approvalUrl field in the _links section of the API response. This field will determine if the approvalUrl should be displayed inline, as an iframe, or as a pop in a new window. If the field has an empty string value, then there is not a fixed requirement for the user-experience. If the value is iframe it is recommended it be displayed as an iframe. If the value is pop it is required it to be displayed as a pop in a new window.

Enum: "pop" "iframe"
CreatedTime
string <date-time>

Payment created time (read-only)

UpdatedTime
string <date-time>

Payment updated time (read-only)

Array of objects (Links)

The links related to resource

AlternativeMethod
required
string (AlternativeMethod)

The name of the alternative method. The value supplied here will determine where the payment is routed.

Enum: "Alipay" "Aircash" "Airpay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" … 271 more
FinancialAccountId
string

The unique financial account id from the payment service.

object

Other alternative payment data intended only to provide additional context that may be available about the payment. This data may not be important but may be valuable to store in the event of an audit or investigation into the payment. This data is not intended to be parsed, and the structure of it is unreliable.

401

Unauthorized

403

Access forbidden

404

Resource was not found

get/orders
Response samples
application/json
[
  • {
    }
]

Create an order

Create an order with specified identifier string. If you are unable to make a PUT request, you may make a POST request instead with otherwise the same structure.

SecurityApiKey
Request
path Parameters
OrderID
required
string

The resource identifier string

header Parameters
Organization-Id
string

The gaming server id maps to an organization in Rebilly (if not set will choose default user gaming server)

Request Body schema: application/json
required

Order resource

PaymentMethod
required
string (PaymentMethod)

The payment method.

OrderID
required
string <= 50 characters

The payment identifier string. This must be unique (for the merchant) within a 24-hour period.

CasinoID
required
string <= 50 characters

The casino id maps to a website identifier string in Rebilly.

PlayerID
required
string <= 50 characters

The player identifier string (maps to a customer in Rebilly). It is composed of two parts concatenated by an underscore. The first part is the registration casino id, and the second part the user id.

LimitCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

LimitAmount
string

The limit amount with no currency sign (55.00). This amount shall be null or 0 or 0.00 or simply not supplied with the request to indicate that there is no purchase limit in place. If there is a purchase limit, this amount should designate the available purchase limit remaining. For example, if the player has set a daily limit of $200, and has already successfully deposited $150 during that day, the limit shall be $50. Rebilly will prevent any purchase adjustment / bump from causing that limit to be breached. How to test limits?

a) Send a limit amount within $10 of the order amount and utilize a special pan that will result in a bump. b) Send an order where the limit amount is below the order amount.

LimitResetTime
string <date-time>

The time when that purchase limit would reset. In case a message needs to be displayed to the the player, this time may be transformed and used by the user interface.

OrderCurrency
required
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

OrderAmount
required
string

The payment amount with no currency sign (45.00). It is important to check the PurchaseAmount, which may be different from the OrderAmount in case the Player changed the order mid-process, which could be due to an upsell/bump scenarios.

DOB
string <date>

The DOB is the date of birth of the player in ISO 8601 full-date format (yyyy-mm-dd).

IpAddress
required
string <ipv4>

The ipv4 address in dotted decimal format, such as 127.0.0.1.

Email
required
string <email>

The Email must match an email regex, and also be at a domain with a valid MX record. Rebilly will not send any emails.

FirstName
required
string [ 3 .. 45 ] characters

The player's first name.

LastName
required
string [ 3 .. 45 ] characters

The player's last name.

Address
string <= 60 characters

The Address refers to the street address, with a max length of 60 characters.

Address2
string <= 60 characters

The Address2 refers to the street address, with a max length of 60 characters.

City
string <= 45 characters

The city.

Region
string <= 45 characters

The Region refers to the state, province, territory, parish, or region.

Country
required
string <ISO-3166-1-alpha-2> <= 2 characters

The Country refers to the ISO 3166-1 alpha-2. Two characters max.

PostalCode
string <= 10 characters

The PostalCode which is also known as the post code or zip code.

PhoneNumber
string <= 20 characters

The telephone number may be either a landline or mobile.

NotificationURL
required
string <url>

In the event of an offsite payment due to third party verification, this URL will be called by the system when the payment is no longer offsite. In the event of a timeout, or other exceptional type of transaction, the NotificationURL will be used to update in the event the Result changes from unknown to another value.

RedirectURL
string <url>

In the event of an offsite payment due to third party verification, this URL will be used to redirect the player upon the completion of the interaction.

UserAgent
string <= 255 characters

The player's user-agent header (from the browser request).

Language
string <ISO-639-1-alpha-2> <= 5 characters

The player's designated as represented by the ISO-639-1 alpha-2 code and optional ISO-3166-1 alpha-2 country. For example, en-AU for Australian English.

ExtraData
object

"Extra data list as a map {"field name": "custom value", ...}". The format must follow the saved format. Recommended fields are BannerTagId, RegistrationDate, DeviceFingerprint and CPF. If a global/master user id is available, that would be appropriate too.

AlternativeMethod
required
string (AlternativeMethod)

The name of the alternative method. The value supplied here will determine where the payment is routed.

Enum: "Alipay" "Aircash" "Airpay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" … 271 more
Responses
201

Order was created

Response Schema: application/json
PaymentMethod
required
string (PaymentMethod)

The payment method.

TransactionID
string <= 50 characters

The transaction identifier string. This will be unique for the merchant in Rebilly. We will attempt to use the OrderID, but if it isn't unique, we will generate a variation.

OrderID
required
string <= 50 characters

The payment identifier string. This must be unique (for the merchant) within a 24-hour period.

CasinoID
required
string <= 50 characters

The casino id maps to a website identifier string in Rebilly.

GSID
string <= 50 characters

The gaming server id maps to an organization in Rebilly (read-only).

PlayerID
required
string <= 50 characters

The player identifier string (maps to a customer in Rebilly). It is composed of two parts concatenated by an underscore. The first part is the registration casino id, and the second part the user id.

LimitCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

LimitAmount
string

The limit amount with no currency sign (55.00). This amount shall be null or 0 or 0.00 or simply not supplied with the request to indicate that there is no purchase limit in place. If there is a purchase limit, this amount should designate the available purchase limit remaining. For example, if the player has set a daily limit of $200, and has already successfully deposited $150 during that day, the limit shall be $50. Rebilly will prevent any purchase adjustment / bump from causing that limit to be breached. How to test limits?

a) Send a limit amount within $10 of the order amount and utilize a special pan that will result in a bump. b) Send an order where the limit amount is below the order amount.

LimitResetTime
string <date-time>

The time when that purchase limit would reset. In case a message needs to be displayed to the the player, this time may be transformed and used by the user interface.

OrderCurrency
required
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

OrderAmount
required
string

The payment amount with no currency sign (45.00). It is important to check the PurchaseAmount, which may be different from the OrderAmount in case the Player changed the order mid-process, which could be due to an upsell/bump scenarios.

PurchaseCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account. This will always match the OrderCurrency.

PurchaseAmount
string

The amount purchased, in the event of a bump, it will be larger than the OrderAmount with no currency sign (55.00). This amount should be used to credit the player. Please pay careful attention to this field.

BillingCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. In event of dynamic currency conversion, this will be the currency billed (read-only).

BillingAmount
string

The amount billed. In event of dynamic currency conversion, this will be the amount of the currency billed (read-only).

BillingDescriptor
string

The billing descriptor that will appear on the cardholders billing statement (read-only).

DOB
string <date>

The DOB is the date of birth of the player in ISO 8601 full-date format (yyyy-mm-dd).

IpAddress
required
string <ipv4>

The ipv4 address in dotted decimal format, such as 127.0.0.1.

Email
required
string <email>

The Email must match an email regex, and also be at a domain with a valid MX record. Rebilly will not send any emails.

FirstName
required
string [ 3 .. 45 ] characters

The player's first name.

LastName
required
string [ 3 .. 45 ] characters

The player's last name.

Address
string <= 60 characters

The Address refers to the street address, with a max length of 60 characters.

Address2
string <= 60 characters

The Address2 refers to the street address, with a max length of 60 characters.

City
string <= 45 characters

The city.

Region
string <= 45 characters

The Region refers to the state, province, territory, parish, or region.

Country
required
string <ISO-3166-1-alpha-2> <= 2 characters

The Country refers to the ISO 3166-1 alpha-2. Two characters max.

PostalCode
string <= 10 characters

The PostalCode which is also known as the post code or zip code.

PhoneNumber
string <= 20 characters

The telephone number may be either a landline or mobile.

NotificationURL
required
string <url>

In the event of an offsite payment due to third party verification, this URL will be called by the system when the payment is no longer offsite. In the event of a timeout, or other exceptional type of transaction, the NotificationURL will be used to update in the event the Result changes from unknown to another value.

RedirectURL
string <url>

In the event of an offsite payment due to third party verification, this URL will be used to redirect the player upon the completion of the interaction.

UserAgent
string <= 255 characters

The player's user-agent header (from the browser request).

Language
string <ISO-639-1-alpha-2> <= 5 characters

The player's designated as represented by the ISO-639-1 alpha-2 code and optional ISO-3166-1 alpha-2 country. For example, en-AU for Australian English.

ExtraData
object

"Extra data list as a map {"field name": "custom value", ...}". The format must follow the saved format. Recommended fields are BannerTagId, RegistrationDate, DeviceFingerprint and CPF. If a global/master user id is available, that would be appropriate too.

Status
string

Some status values require special handling.

  • waiting-approval: the user should be directed to the approvalUrl (in _links) by either pop or in an iframe which will be specified in the Display attribute value.
  • offsite: the user was already redirected to the approvalUrl and we are awaiting notification from the 3rd party gateway.
  • timeout (or conn-error): Rebilly will poll the gateway to determine if it was processed. The transaction should be held open until a determination is made. Rebilly will send a notification to the NotificationURL upon resolution of the timeout and conn-error states.
  • waiting-gateway: Rebilly will poll final status and will send a notification to NotificationURL upon completed
Enum: "pending" "sending" "timeout" "conn-error" "never-sent" "waiting-capture" "waiting-gateway" "waiting-refund" "waiting-approval" "offsite" … 5 more
Result
string

Payment result (read-only). A result of unknown means the payment should be held open/pending for future changes. That may happen because of a timeout or because interaction is necessary for further processing. If interaction is necessary, there will be a status of waiting-approval, or if the user has already been redirected to the 3rd party for approval, it would be offsite.

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

The Merchant account used for the payment (read-only).

Acquirer
string

The Acquirer used for the payment (read-only).

ResponseCode
string

A code that maps to a message. The code is a string number between 0 and 1000. See Rebilly response codes (read-only).

ResponseMessage
string

The message mapped from the code (read-only).

ResponseCodeGateway
string

A code from the downstream gateway (read-only).

ResponseMessageGateway
string

The message mapped from the code from the gateway (read-only).

HumanMessage
string

The message appropriate for presentation to a customer, translated into the language supplied in the request (read-only).

GatewayTransactionID
string

The transaction identifier from the gateway (read-only).

Display
string
Default: "iframe"

In the event interaction is required to complete the payment, there will be an approvalUrl field in the _links section of the API response. This field will determine if the approvalUrl should be displayed inline, as an iframe, or as a pop in a new window. If the field has an empty string value, then there is not a fixed requirement for the user-experience. If the value is iframe it is recommended it be displayed as an iframe. If the value is pop it is required it to be displayed as a pop in a new window.

Enum: "pop" "iframe"
CreatedTime
string <date-time>

Payment created time (read-only)

UpdatedTime
string <date-time>

Payment updated time (read-only)

Array of objects (Links)

The links related to resource

AlternativeMethod
required
string (AlternativeMethod)

The name of the alternative method. The value supplied here will determine where the payment is routed.

Enum: "Alipay" "Aircash" "Airpay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" … 271 more
FinancialAccountId
string

The unique financial account id from the payment service.

object

Other alternative payment data intended only to provide additional context that may be available about the payment. This data may not be important but may be valuable to store in the event of an audit or investigation into the payment. This data is not intended to be parsed, and the structure of it is unreliable.

401

Unauthorized

403

Access forbidden

409

Conflict

422

Invalid data was sent

500

Rebilly error. Please contact us to report problem.

503

Rebilly server timeout error. Please contact us to report problem.

put/orders/{OrderID}
Request samples
application/json
{
  • "PaymentMethod": "alternative",
  • "OrderID": "123_4567899",
  • "CasinoID": "123",
  • "PlayerID": "123_111222333",
  • "LimitCurrency": "GBP",
  • "LimitAmount": "55.00",
  • "LimitResetTime": "2019-02-12T22:45:00+00:00",
  • "OrderCurrency": "GBP",
  • "OrderAmount": "45.00",
  • "DOB": "2019-08-24",
  • "IpAddress": "127.0.0.1",
  • "Email": "user@example.com",
  • "FirstName": "Arnold",
  • "LastName": "Schwartzenegger",
  • "Address": "31 Guild Street",
  • "Address2": "Apartment 2",
  • "City": "London",
  • "Region": "Westminster",
  • "Country": "GB",
  • "PostalCode": "E8 6XD",
  • "PhoneNumber": "077 8826 0192",
  • "NotificationURL": "string",
  • "RedirectURL": "string",
  • "UserAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.170 Safari/537.36",
  • "Language": "en-US",
  • "ExtraData": {
    },
  • "AlternativeMethod": "Alipay"
}
Response samples
application/json
{
  • "PaymentMethod": "alternative",
  • "TransactionID": "123_4567899",
  • "OrderID": "123_4567899",
  • "CasinoID": "123",
  • "GSID": "22",
  • "PlayerID": "123_111222333",
  • "LimitCurrency": "GBP",
  • "LimitAmount": "55.00",
  • "LimitResetTime": "2019-02-12T22:45:00+00:00",
  • "OrderCurrency": "GBP",
  • "OrderAmount": "45.00",
  • "PurchaseCurrency": "GBP",
  • "PurchaseAmount": "55.00",
  • "BillingCurrency": "GBP",
  • "BillingAmount": "45.00",
  • "BillingDescriptor": "My descriptor",
  • "DOB": "2019-08-24",
  • "IpAddress": "127.0.0.1",
  • "Email": "user@example.com",
  • "FirstName": "Arnold",
  • "LastName": "Schwartzenegger",
  • "Address": "31 Guild Street",
  • "Address2": "Apartment 2",
  • "City": "London",
  • "Region": "Westminster",
  • "Country": "GB",
  • "PostalCode": "E8 6XD",
  • "PhoneNumber": "077 8826 0192",
  • "NotificationURL": "string",
  • "RedirectURL": "string",
  • "UserAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.170 Safari/537.36",
  • "Language": "en-US",
  • "ExtraData": {
    },
  • "Status": "completed",
  • "Result": "approved",
  • "GatewayAccountID": "101_WorldPay_GBP_X",
  • "Acquirer": "Natwest",
  • "ResponseCode": "00",
  • "ResponseMessage": "Successful approval",
  • "ResponseCodeGateway": "00",
  • "ResponseMessageGateway": "Approved transaction",
  • "HumanMessage": "Your card has expired. Please update your expiry dates and try again.",
  • "GatewayTransactionID": "11111-22222-33333-44444",
  • "Display": "pop",
  • "CreatedTime": "2019-08-24T14:15:22Z",
  • "UpdatedTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "AlternativeMethod": "Alipay",
  • "FinancialAccountId": "string",
  • "PaymentData": {
    }
}

Retrieve an order

Retrieve an order with specified identifier string.

SecurityApiKey
Request
path Parameters
OrderID
required
string

The resource identifier string

header Parameters
Organization-Id
string

The gaming server id maps to an organization in Rebilly (if not set will choose default user gaming server)

Responses
200

Order was retrieved successfully

Response Schema: application/json
PaymentMethod
required
string (PaymentMethod)

The payment method.

TransactionID
string <= 50 characters

The transaction identifier string. This will be unique for the merchant in Rebilly. We will attempt to use the OrderID, but if it isn't unique, we will generate a variation.

OrderID
required
string <= 50 characters

The payment identifier string. This must be unique (for the merchant) within a 24-hour period.

CasinoID
required
string <= 50 characters

The casino id maps to a website identifier string in Rebilly.

GSID
string <= 50 characters

The gaming server id maps to an organization in Rebilly (read-only).

PlayerID
required
string <= 50 characters

The player identifier string (maps to a customer in Rebilly). It is composed of two parts concatenated by an underscore. The first part is the registration casino id, and the second part the user id.

LimitCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

LimitAmount
string

The limit amount with no currency sign (55.00). This amount shall be null or 0 or 0.00 or simply not supplied with the request to indicate that there is no purchase limit in place. If there is a purchase limit, this amount should designate the available purchase limit remaining. For example, if the player has set a daily limit of $200, and has already successfully deposited $150 during that day, the limit shall be $50. Rebilly will prevent any purchase adjustment / bump from causing that limit to be breached. How to test limits?

a) Send a limit amount within $10 of the order amount and utilize a special pan that will result in a bump. b) Send an order where the limit amount is below the order amount.

LimitResetTime
string <date-time>

The time when that purchase limit would reset. In case a message needs to be displayed to the the player, this time may be transformed and used by the user interface.

OrderCurrency
required
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account.

OrderAmount
required
string

The payment amount with no currency sign (45.00). It is important to check the PurchaseAmount, which may be different from the OrderAmount in case the Player changed the order mid-process, which could be due to an upsell/bump scenarios.

PurchaseCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. The code is three characters. Currencies must be configured in the gateway account. This will always match the OrderCurrency.

PurchaseAmount
string

The amount purchased, in the event of a bump, it will be larger than the OrderAmount with no currency sign (55.00). This amount should be used to credit the player. Please pay careful attention to this field.

BillingCurrency
string <ISO-4217-alpha-3>

The ISO 4217 alpha-3 code. In event of dynamic currency conversion, this will be the currency billed (read-only).

BillingAmount
string

The amount billed. In event of dynamic currency conversion, this will be the amount of the currency billed (read-only).

BillingDescriptor
string

The billing descriptor that will appear on the cardholders billing statement (read-only).

DOB
string <date>

The DOB is the date of birth of the player in ISO 8601 full-date format (yyyy-mm-dd).

IpAddress
required
string <ipv4>

The ipv4 address in dotted decimal format, such as 127.0.0.1.

Email
required
string <email>

The Email must match an email regex, and also be at a domain with a valid MX record. Rebilly will not send any emails.

FirstName
required
string [ 3 .. 45 ] characters

The player's first name.

LastName
required
string [ 3 .. 45 ] characters

The player's last name.

Address
string <= 60 characters

The Address refers to the street address, with a max length of 60 characters.

Address2
string <= 60 characters

The Address2 refers to the street address, with a max length of 60 characters.

City
string <= 45 characters

The city.

Region
string <= 45 characters

The Region refers to the state, province, territory, parish, or region.

Country
required
string <ISO-3166-1-alpha-2> <= 2 characters

The Country refers to the ISO 3166-1 alpha-2. Two characters max.

PostalCode
string <= 10 characters

The PostalCode which is also known as the post code or zip code.

PhoneNumber
string <= 20 characters

The telephone number may be either a landline or mobile.

NotificationURL
required
string <url>

In the event of an offsite payment due to third party verification, this URL will be called by the system when the payment is no longer offsite. In the event of a timeout, or other exceptional type of transaction, the NotificationURL will be used to update in the event the Result changes from unknown to another value.

RedirectURL
string <url>

In the event of an offsite payment due to third party verification, this URL will be used to redirect the player upon the completion of the interaction.

UserAgent
string <= 255 characters

The player's user-agent header (from the browser request).

Language
string <ISO-639-1-alpha-2> <= 5 characters

The player's designated as represented by the ISO-639-1 alpha-2 code and optional ISO-3166-1 alpha-2 country. For example, en-AU for Australian English.

ExtraData
object

"Extra data list as a map {"field name": "custom value", ...}". The format must follow the saved format. Recommended fields are BannerTagId, RegistrationDate, DeviceFingerprint and CPF. If a global/master user id is available, that would be appropriate too.

Status
string

Some status values require special handling.

  • waiting-approval: the user should be directed to the approvalUrl (in _links) by either pop or in an iframe which will be specified in the Display attribute value.
  • offsite: the user was already redirected to the approvalUrl and we are awaiting notification from the 3rd party gateway.
  • timeout (or conn-error): Rebilly will poll the gateway to determine if it was processed. The transaction should be held open until a determination is made. Rebilly will send a notification to the NotificationURL upon resolution of the timeout and conn-error states.
  • waiting-gateway: Rebilly will poll final status and will send a notification to NotificationURL upon completed
Enum: "pending" "sending" "timeout" "conn-error" "never-sent" "waiting-capture" "waiting-gateway" "waiting-refund" "waiting-approval" "offsite" … 5 more
Result
string

Payment result (read-only). A result of unknown means the payment should be held open/pending for future changes. That may happen because of a timeout or because interaction is necessary for further processing. If interaction is necessary, there will be a status of waiting-approval, or if the user has already been redirected to the 3rd party for approval, it would be offsite.

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

The Merchant account used for the payment (read-only).

Acquirer
string

The Acquirer used for the payment (read-only).

ResponseCode
string

A code that maps to a message. The code is a string number between 0 and 1000. See Rebilly response codes (read-only).

ResponseMessage
string

The message mapped from the code (read-only).

ResponseCodeGateway
string

A code from the downstream gateway (read-only).

ResponseMessageGateway
string

The message mapped from the code from the gateway (read-only).

HumanMessage
string

The message appropriate for presentation to a customer, translated into the language supplied in the request (read-only).

GatewayTransactionID
string

The transaction identifier from the gateway (read-only).

Display
string
Default: "iframe"

In the event interaction is required to complete the payment, there will be an approvalUrl field in the _links section of the API response. This field will determine if the approvalUrl should be displayed inline, as an iframe, or as a pop in a new window. If the field has an empty string value, then there is not a fixed requirement for the user-experience. If the value is iframe it is recommended it be displayed as an iframe. If the value is pop it is required it to be displayed as a pop in a new window.

Enum: "pop" "iframe"
CreatedTime
string <date-time>

Payment created time (read-only)

UpdatedTime
string <date-time>

Payment updated time (read-only)

Array of objects (Links)

The links related to resource

AlternativeMethod
required
string (AlternativeMethod)

The name of the alternative method. The value supplied here will determine where the payment is routed.

Enum: "Alipay" "Aircash" "Airpay" "AstroPay Card" "AstroPay-GO" "bank-transfer" "bank-transfer-2" "bank-transfer-3" "bank-transfer-4" "bank-transfer-5" … 271 more
FinancialAccountId
string

The unique financial account id from the payment service.

object

Other alternative payment data intended only to provide additional context that may be available about the payment. This data may not be important but may be valuable to store in the event of an audit or investigation into the payment. This data is not intended to be parsed, and the structure of it is unreliable.

401

Unauthorized

403

Access forbidden

404

Resource was not found

get/orders/{OrderID}
Response samples
application/json
{
  • "PaymentMethod": "alternative",
  • "TransactionID": "123_4567899",
  • "OrderID": "123_4567899",
  • "CasinoID": "123",
  • "GSID": "22",
  • "PlayerID": "123_111222333",
  • "LimitCurrency": "GBP",
  • "LimitAmount": "55.00",
  • "LimitResetTime": "2019-02-12T22:45:00+00:00",
  • "OrderCurrency": "GBP",
  • "OrderAmount": "45.00",
  • "PurchaseCurrency": "GBP",
  • "PurchaseAmount": "55.00",
  • "BillingCurrency": "GBP",
  • "BillingAmount": "45.00",
  • "BillingDescriptor": "My descriptor",
  • "DOB": "2019-08-24",
  • "IpAddress": "127.0.0.1",
  • "Email": "user@example.com",
  • "FirstName": "Arnold",
  • "LastName": "Schwartzenegger",
  • "Address": "31 Guild Street",
  • "Address2": "Apartment 2",
  • "City": "London",
  • "Region": "Westminster",
  • "Country": "GB",
  • "PostalCode": "E8 6XD",
  • "PhoneNumber": "077 8826 0192",
  • "NotificationURL": "string",
  • "RedirectURL": "string",
  • "UserAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.170 Safari/537.36",
  • "Language": "en-US",
  • "ExtraData": {
    },
  • "Status": "completed",
  • "Result": "approved",
  • "GatewayAccountID": "101_WorldPay_GBP_X",
  • "Acquirer": "Natwest",
  • "ResponseCode": "00",
  • "ResponseMessage": "Successful approval",
  • "ResponseCodeGateway": "00",
  • "ResponseMessageGateway": "Approved transaction",
  • "HumanMessage": "Your card has expired. Please update your expiry dates and try again.",
  • "GatewayTransactionID": "11111-22222-33333-44444",
  • "Display": "pop",
  • "CreatedTime": "2019-08-24T14:15:22Z",
  • "UpdatedTime": "2019-08-24T14:15:22Z",
  • "_links": [
    ],
  • "AlternativeMethod": "Alipay",
  • "FinancialAccountId": "string",
  • "PaymentData": {
    }
}