v1

latestOpenAPI 3.0.02026-07-262832203.2 KB
Order

Create a new order

post/v1/orders

Request body

OrderIdstring uuid required

UUID identifying the individual Order.

SessionIdstring uuid

UUID representing the Session

State'AUTHENTICATING' | 'PENDING' | 'PROCESSING' | 'PAYMENTAUTHORIZED' | 'PROCESSED' | 'PROCESSINGFAILED' | 'CANCELLED' | 'DECLINED' required
MerchantReferencestring required

Unique identifier provided by merchant.

BillingProfileIdstring uuid

Corresponds to the BillingProfileId returned in a BillingProfile. Can be passed in to reference an existing billing profile instead of creating a new one. Exactly one of BillingProfile, BillingProfileId or BillingprofileReference are required.

BillingProfileReferencestring

Merchant supplied reference that uniquely maps to a BillingProfile. Can be passed in to reference an existing BillingProfile. Exactly one of BillingProfile, BillingProfileId or BillingprofileReference are required.

Currencystring

Three-character ISO-4217 currency code used to process the payment.

ContractIdstring uuid

Reach-generated ID of an existing contract. Can be supplied in lieu of a Payment object. Will be returned in the response if OpenContract is set to true.

DeviceFingerprintstring
TaxAmountnumber

Tax to be applied to the order. In the consumer currency, max precision of 2 digits. TaxAmount will be added to the TotalAmount.

ViaAgentboolean

Indicates that this order is being made by an agent, and not the end consumer. If false or not present, the order is assumed to be placed by the end consumer.

AcceptLiabilityboolean

If true, the merchant accepts financial liability for this order.

AutoCaptureboolean

If true or the payment method used by the consumer does not support pre-authorization, the payment will be completed. If false or not present, and the payment method supports pre-authorization, the order will be left in the PaymentAuthorized state and the merchant must capture the order using a capture request.

OpenContractboolean

If true, a contract (used for recurring billing, subscriptions, stored payment options, etc.) will be opened if possible. If false or not present, the order will not open a contract.

TaxQuoteIdstring

Unique Tax Quote Id provided by merchant, Id recieved from calling the Reach Quote API.

MetaMeta

Any optional metadata to be included. Can be a simple reference ID or some complex object containing multiple values, as long as it is valid JSON.

UnderReviewboolean

This will be returned as true if a fraud review is in progress for the order. Payment cannot be processed until the review has been completed.

Chargebackboolean

This will be returned as true if a chargeback has been issued against the order. An outstanding chargeback disables the ability to submit a refund against the order.

Reasonstring

Gives a reason for an order to be in a given state.

Expirystring

If the order was created with Capture false, and the payment is authorized, the RFC 3339 time at which this order expires. If further authentication is required, this is the time by which that authentication must be completed.

AdminUrlstring

A link to this order in the Reach admin app. You must have valid credentials to view

Example request

{
  "BillingProfile": {
    "Address": {
      "Street": "123 Main St",
      "City": "Los Angeles",
      "Region": "CA",
      "Country": "US",
      "Postcode": "90001"
    }
  },
  "Payment": {
    "Method": "VISA, IDEAL, BANK",
    "ReturnUrl": "https://example.org/return, https://example.org/return?param=12345&hello=world, https://example.org/return/{SessionId}, https://example.org/{SessionId}/return, https://example.org/return?SessionId={SessionId}",
    "Online": {
      "Locale": "en-us"
    }
  },
  "ShippingDetails": {
    "Address": {
      "Street": "123 Main St",
      "City": "Los Angeles",
      "Region": "CA",
      "Country": "US",
      "Postcode": "90001"
    }
  }
}

Response

Operation successful

OrderIdstring uuid required

UUID identifying the individual Order.

SessionIdstring uuid

UUID representing the Session

State'AUTHENTICATING' | 'PENDING' | 'PROCESSING' | 'PAYMENTAUTHORIZED' | 'PROCESSED' | 'PROCESSINGFAILED' | 'CANCELLED' | 'DECLINED' required
MerchantReferencestring required

Unique identifier provided by merchant.

BillingProfileIdstring uuid

Corresponds to the BillingProfileId returned in a BillingProfile. Can be passed in to reference an existing billing profile instead of creating a new one. Exactly one of BillingProfile, BillingProfileId or BillingprofileReference are required.

BillingProfileReferencestring

Merchant supplied reference that uniquely maps to a BillingProfile. Can be passed in to reference an existing BillingProfile. Exactly one of BillingProfile, BillingProfileId or BillingprofileReference are required.

Currencystring

Three-character ISO-4217 currency code used to process the payment.

ContractIdstring uuid

Reach-generated ID of an existing contract. Can be supplied in lieu of a Payment object. Will be returned in the response if OpenContract is set to true.

DeviceFingerprintstring
TaxAmountnumber

Tax to be applied to the order. In the consumer currency, max precision of 2 digits. TaxAmount will be added to the TotalAmount.

ViaAgentboolean

Indicates that this order is being made by an agent, and not the end consumer. If false or not present, the order is assumed to be placed by the end consumer.

AcceptLiabilityboolean

If true, the merchant accepts financial liability for this order.

AutoCaptureboolean

If true or the payment method used by the consumer does not support pre-authorization, the payment will be completed. If false or not present, and the payment method supports pre-authorization, the order will be left in the PaymentAuthorized state and the merchant must capture the order using a capture request.

OpenContractboolean

If true, a contract (used for recurring billing, subscriptions, stored payment options, etc.) will be opened if possible. If false or not present, the order will not open a contract.

TaxQuoteIdstring

Unique Tax Quote Id provided by merchant, Id recieved from calling the Reach Quote API.

MetaMeta

Any optional metadata to be included. Can be a simple reference ID or some complex object containing multiple values, as long as it is valid JSON.

UnderReviewboolean

This will be returned as true if a fraud review is in progress for the order. Payment cannot be processed until the review has been completed.

Chargebackboolean

This will be returned as true if a chargeback has been issued against the order. An outstanding chargeback disables the ability to submit a refund against the order.

Reasonstring

Gives a reason for an order to be in a given state.

Expirystring

If the order was created with Capture false, and the payment is authorized, the RFC 3339 time at which this order expires. If further authentication is required, this is the time by which that authentication must be completed.

AdminUrlstring

A link to this order in the Reach admin app. You must have valid credentials to view

Example response

{
  "BillingProfile": {
    "Address": {
      "Street": "123 Main St",
      "City": "Los Angeles",
      "Region": "CA",
      "Country": "US",
      "Postcode": "90001"
    }
  },
  "Payment": {
    "Method": "VISA, IDEAL, BANK",
    "ReturnUrl": "https://example.org/return, https://example.org/return?param=12345&hello=world, https://example.org/return/{SessionId}, https://example.org/{SessionId}/return, https://example.org/return?SessionId={SessionId}",
    "Online": {
      "Locale": "en-us"
    }
  },
  "ShippingDetails": {
    "Address": {
      "Street": "123 Main St",
      "City": "Los Angeles",
      "Region": "CA",
      "Country": "US",
      "Postcode": "90001"
    }
  }
}