> For the complete documentation index, see [llms.txt](https://resources.atriptech.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://resources.atriptech.com/help-center/popular-topics/payments-and-billing/atlas-hybrid-payment-solution.md).

# Atlas Hybrid Payment Solution

#### What is Atlas Hybrid Payment Solution?

Atlas offers two flexible payment methods to support how you pay for bookings — Atlas Deposit and VCC Passthrough. Depending on your setup and preferred workflow, you can use them interchangeably to manage transactions with ease.&#x20;

* **Atlas Deposit**&#x20;

Atlas Deposit lets you create and top-up an account with Atlas, which Atlas then uses to pay airlines on your behalf.&#x20;

* Multi-currency support — hold and settle in your currency of choice&#x20;

* Local payment coverage — Atlas provides bank accounts across different countries and regions to meet local payment requirements&#x20;

* Flexible settlement — settle in your preferred currency on a per-transaction basis&#x20;

* All airlines supported&#x20;

* **VCC Passthrough**&#x20;

VCC Passthrough lets you book using your agency or traveller's card, with Atlas passing the card details directly to the airline for ticketing.&#x20;

* Card-direct booking — use your agency or traveller's card without additional funding setup&#x20;
* Loyalty & rebate benefits — your traveller or agency continues to earn card rewards and loyalty points on eligible bookings&#x20;
* Supported airlines — please check out our [Airline Directory](https://atriptech.com/#/airline/list) to view which airlines allow VCC Passthrough or speak to your Atlas account manager to know more.&#x20;

#### Hybrid Payment Solution: Flexible Retries When Payments Fail

Payment failures can happen. To reduce friction and avoid lost bookings, Atlas has introduced the Hybrid Payment Solution.

With Hybrid Payment, **if a VCC Passthrough payment fails**, you can:&#x20;

* **Retry the same payment method** (VCC Passthrough), or&#x20;
* **Switch to a different payment method (Deposit)** and complete the booking without starting from scratch, or&#x20;
* **Use another card for payment (available via API only)**&#x20;

This feature is available on via:&#x20;

* **ATRIP** – where you can manually regenerate order and pay with deposit.&#x20;
* **API** – where you can programmatically retry with the same card, switch to deposit payment method or use another card.

#### ATRIP

Here’s how you can use a different payment method to retry the failed VCC passthrough booking on ATRIP:

* Path: **ATRIP → Bookings**. Locate the order number. Then, click **“Regenerate”** to recreate the order and you will be able to view the new order details.&#x20;

![](/files/jkIpUNAQprqHZHohzjNa)

* Click **“Pay” and the order will be paid by deposit**.&#x20;

![](/files/c2Hnj7Ax4asMO9hzff9v)

#### API

Here’s how you can retry payment for your booking when VCC passthrough failed through API:

**Scenario A: Atlas payment (pay.do) failed**&#x20;

Regardless of the reason for the failure, if the order was not successfully paid for, **you can retry with the same card, switch to deposit mode of payment, or use another card for payment**.

```http
{
  "orderNo": "XXX",
  "supportCreditTransPayment": null,
  "creditCard": null // use this for another card
}
```

**Scenario B** : Atlas payment(pay.do) failed

Cancel order → Regenerate order → Payment with deposit/ Use another card&#x20;

If a payment fails due to a card issue, the system automatically cancels the order and sends a notification detailing the cancellation reason via webhooks.&#x20;

```http
{
  "type": "order.cancelled",
  "data": {
    "orderNo": "{canceled order no}",
    "errorCode": "604", // for example
    "errorMessage": "Payment declined by airline"
  }
}
```

**You can then take the following actions:**

[Regenerate order (regenerateOrder.do)](https://resources.atriptech.com/api-document/other-functions#post-regenerateorder.do):

```http
{
  "originalOrderNo": "{original order no}"
}
```

Then, make a payment with deposit or use another card [(pay.do)](https://resources.atriptech.com/api-document/shopping-and-ticketing#post-pay.do):

```http
{
  "orderNo": "{new order no}",
  "supportCreditTransPayment": null,
  "creditCard": null // use this for another card
}
```
