پرش به مطلب اصلی

مرجع API پرداخت

مرجع کامل اندپوینت‌های API پرداخت. وقتی slug یک لینک پرداخت را دارید و می‌خواهید جزئیات پرداخت را بگیرید، آن را تأیید یا لغو کنید، از این اندپوینت‌ها استفاده کنید.

آدرس پایه​

https://api.orcarail.com/api/v1

دریافت پرداخت با slug​

جزئیات پرداخت یک لینک پرداخت را با slug آن بگیرید. احراز هویت لازم نیست؛ از آن برای نمایش اطلاعات پرداخت پیش از پرداخت مشتری استفاده کنید.

GET /pay/:slug

پارامترهای مسیر​

پارامترنوعالزامیتوضیح
slugstringبلهslug لینک پرداخت (مثلاً pl_abc123)

پاسخ​

جزئیات پرداخت شامل مبلغ، توکن، شبکه و هر فراداده لازم برای نمایش صفحه پرداخت را برمی‌گرداند.

{
"id": 1,
"title": "Payment for services",
"slug": "pl_abc123",
"amount": "0.1",
"tokenId": 1,
"networkId": 1,
"status": "active",
"expiresAt": "2024-12-31T23:59:59.000Z",
"metadata": {},
"createdAt": "2024-01-01T00:00:00.000Z"
}

تأیید پرداخت​

یک payment intent را با slug تأیید کنید و آدرس انتقال به اپ پرداخت میزبانی‌شده را بگیرید. درخواست می‌تواند از هدر Origin یا Referer برای تعیین مبدأ فرانت‌اند در آدرس بازگشت استفاده کند.

POST /pay/:slug/confirm

پارامترهای مسیر​

پارامترنوعالزامیتوضیح
slugstringبلهslug لینک پرداخت

هدرها​

هدرنوعالزامیتوضیح
Originstringخیرمبدأ فرانت‌اند (برای آدرس بازگشت استفاده می‌شود)
Refererstringخیرجایگزین Origin برای مبدأ فرانت‌اند

پاسخ​

{
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "requires_confirmation",
"nextAction": {
"type": "redirect_to_url",
"redirectToUrl": {
"url": "https://pay.orcarail.com/pay/pl_abc123?payment_intent=550e8400-e29b-41d4-a716-446655440000&payment_intent_client_secret=550e8400-e29b-41d4-a716-446655440000_secret_abc123"
}
}
}

مشتری را به nextAction.redirectToUrl.url منتقل کنید تا پرداخت را در صفحه پرداخت میزبانی‌شده کامل کند.

لغو پرداخت​

payment intent مرتبط با slug یک لینک پرداخت را لغو کنید.

POST /pay/:slug/cancel

پارامترهای مسیر​

پارامترنوعالزامیتوضیح
slugstringبلهslug لینک پرداخت

پاسخ​

{
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "canceled",
"updatedAt": "2024-01-01T12:00:00.000Z"
}

موارد استفاده​

  1. دریافت پرداخت — GET /pay/:slug را فراخوانی کنید تا مبلغ، توکن و شبکه را در صفحه‌تان نشان دهید.
  2. شروع پرداخت — POST /pay/:slug/confirm را فراخوانی کنید و کاربر را به آدرس برگشتی منتقل کنید.
  3. لغو — اگر کاربر پرداخت را رها کرد یا باید intent را لغو کنید، POST /pay/:slug/cancel را فراخوانی کنید.

کدهای وضعیت​

کد وضعیتتوضیح
200موفق
400درخواست نامعتبر
404یافت نشد (slug نامعتبر)
500خطای داخلی سرور

همچنین ببینید​