Skip to content

Commit f0e45be

Browse files
author
Magomed
committed
deploy in new server
1 parent e11f170 commit f0e45be

2 files changed

Lines changed: 34 additions & 1 deletion

File tree

internal/bot/messages.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,22 @@ func (m *MessengerBot) CreatePayment(amount, tgUserID, reqMount string) (string,
273273
Metadata: map[string]string{
274274
"user_tg_id": tgUserID,
275275
},
276+
Receipt: entities.Receipt{ // Добавляем чек
277+
Email: tgUserID, // Укажи email пользователя ( в нашем случае userID)
278+
Items: []entities.ReceiptItem{
279+
{
280+
Description: "Подписка на сервис",
281+
Quantity: 1,
282+
Amount: entities.Amount{
283+
Value: amount,
284+
Currency: "RUB",
285+
},
286+
VATCode: 6, // Код НДС (1 = 20%, 2 = 10%, 6 = без НДС)
287+
PaymentMode: "full_payment", // Полная оплата
288+
PaymentSubject: "service", // Тип товара (услуга)
289+
},
290+
},
291+
},
276292
}
277293

278294
jsonData, err := json.Marshal(requestData)

internal/entities/pay_request.go

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
package entities
22

3-
// PaymentRequest представляет тело запроса на создание платежаа
3+
// PaymentRequest представляет тело запроса на создание платежа
44
type PaymentRequest struct {
55
Capture bool `json:"capture"` // Флаг захвата платежа
66
Description string `json:"description"` // Описание платежа
77
Amount Amount `json:"amount"` // Сумма платежа
88
Confirmation Confirmation `json:"confirmation"` // Параметры подтверждения
99
Metadata map[string]string `json:"metadata"` // Метаданные
10+
Receipt Receipt `json:"receipt"` // Данные чека (обязательны для YooKassa)
1011
}
1112

1213
// Amount представляет сумму платежа
@@ -20,3 +21,19 @@ type Confirmation struct {
2021
Type string `json:"type"` // Тип подтверждения (например, "redirect")
2122
ReturnURL string `json:"return_url"` // URL для редиректа после оплаты
2223
}
24+
25+
// Receipt представляет информацию о чеке для YooKassa
26+
type Receipt struct {
27+
Email string `json:"email"` // Email покупателя (обязателен, если нет телефона)
28+
Items []ReceiptItem `json:"items"` // Список товаров/услуг
29+
}
30+
31+
// ReceiptItem представляет отдельную позицию в чеке
32+
type ReceiptItem struct {
33+
Description string `json:"description"` // Описание товара/услуги
34+
Quantity int `json:"quantity"` // Количество
35+
Amount Amount `json:"amount"` // Цена за единицу
36+
VATCode int `json:"vat_code"` // Код НДС (1 - 20%, 2 - 10%, 6 - без НДС)
37+
PaymentMode string `json:"payment_mode"` // Способ оплаты ("full_payment" — полная оплата)
38+
PaymentSubject string `json:"payment_subject"` // Тип товара ("service" — услуга)
39+
}

0 commit comments

Comments
 (0)