Documentation ¶
Index ¶
- Constants
- type AdditionalUserProps
- type Airline
- type Amount
- type AuthorizationDetails
- type CancellationDetails
- type CaptureRequest
- type Card
- type Confirmation
- type Customer
- type Deal
- type DealItem
- type DealListResponse
- type DealRequest
- type DealWebhook
- type FNSReciept
- type IndustryDetails
- type Item
- type Leg
- type ListRequest
- type MarkCodeInfo
- type MarkQuantity
- type Metadata
- type Passenger
- type PayerBankDetails
- type Payment
- type PaymentListResponse
- type PaymentMethod
- type PaymentRequest
- type PaymentWebhook
- type Payout
- type PayoutRequest
- type PersonalData
- type PersonalDataRequest
- type PersonalInfo
- type Receipt
- type ReceiptInfo
- type ReceiptListResponse
- type ReceiptOperationalDetails
- type ReceiptRequest
- type RecieptIndustryDetails
- type Recipient
- type Refound
- type RefoundListResponse
- type RefoundRequest
- type SBPItem
- type SBPList
- type SelfEmployed
- type SelfEmployedID
- type SelfEmployedRequest
- type Settlement
- type Source
- type ThreeDSecure
- type Transfer
- type VATData
- type Webhook
- type WebhookListResponse
- type WebhookRequest
Constants ¶
const ( DealTypeSafeDeal dealType = "safe_deal" DealStatusOpened dealStatus = "opened" DealStatusClosed dealStatus = "closed" FeeMomentSucceeded feeMoment = "payment_succeeded" FeeMomentDealClosed feeMoment = "deal_closed" )
const ( PersonalDataStatusWaiting personalDataStatus = "waiting_for_operation" PersonalDataStatusActive personalDataStatus = "active" PersonalDataStatusCanceled personalDataStatus = "canceled" )
const ( SelfEmployedStatusPending selfEmployedStatus = "pending" SelfEmployedStatusConfirmed selfEmployedStatus = "confirmed" SelfEmployedStatusCanceled selfEmployedStatus = "canceled" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdditionalUserProps ¶
type AdditionalUserProps struct { Name string `json:"name"` // Название Value string `json:"value"` // Значение }
Дополнительный реквизит пользователя
type AuthorizationDetails ¶
type AuthorizationDetails struct { Rrn string `json:"rrn,omitempty"` AuthCode string `json:"auth_code,omitempty"` ThreeDSecure ThreeDSecure `json:"three_d_secure"` }
type CancellationDetails ¶
type CaptureRequest ¶
type CaptureRequest struct { Amount *Amount `json:"amount,omitempty"` Reciept *Receipt `json:"receipt,omitempty"` Airline *Airline `json:"airline,omitempty"` Transfers []Transfer `json:"transfers,omitempty"` Deal *Deal `json:"deal,omitempty"` }
Структура для описания запроса на подтвержение проведения платежа
type Card ¶
type Card struct { Last4 string `json:"last4"` ExpiryYear string `json:"expiry_year"` ExpityMonth string `json:"expiry_month"` CardType string `json:"card_type"` First6 string `json:"first6,omitempty"` IssuerCountry string `json:"issuer_country,omitempty"` IssuerName string `json:"issuer_name,omitempty"` Source string `json:"source,omitempty"` }
Стркутура для описания данных карты
type Confirmation ¶
type Confirmation struct { Type string `json:"type,omitempty"` ConfirmationToken string `json:"confirmation_token,omitempty"` ConfirmationURL string `json:"confirmation_url,omitempty"` ConfirmationData string `json:"confirmation_data,omitempty"` Enforce bool `json:"enforce,omitempty"` ReturnURl string `json:"return_url,omitempty"` }
type Customer ¶
type Customer struct { FullName string `json:"full_name,omitempty"` INN string `json:"inn,omitempty"` Email string `json:"email,omitempty"` Phone string `json:"phone,omitempty"` }
Структура для описания информации о пользователе
type Deal ¶
type Deal struct { ID string `json:"id"` // Идентификатор сделки Type dealType `json:"type"` // Тип сделки FeeMoment feeMoment `json:"fee_moment"` // Момент перечисления вам вознаграждения платформы. Description string `json:"description,omitempty"` // Описание сделки (не более 128 символов). Balance Amount `json:"balance"` // Баланс сделки PayoutBalance Amount `json:"payout_balance"` // Сумма вознаграждения продавца Status dealStatus `json:"status"` // Статус сделки CreatedAt string `json:"created_at"` // Дата создания сделки (UTC, ISO8601) ExpiresAt string `json:"expires_at"` // Время автоматического закрытия сделки. Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные Test bool `json:"test"` // Признак тестовой сделки }
type DealItem ¶
type DealItem struct { ID string `json:"id"` Settlements []Settlement `json:"settlements"` }
Структура для описания сделки
type DealListResponse ¶
type DealRequest ¶
type DealRequest struct { Type dealType `json:"type"` // Тип сделки FeeMoment feeMoment `json:"fee_moment"` // Момент перечисления вам вознаграждения платформы. Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные Description string `json:"description,omitempty"` // Описание сделки (не более 128 символов). }
type DealWebhook ¶
type FNSReciept ¶
type FNSReciept struct { ServiceName string `json:"service_name"` // Описание услуги NpdReceiptID string `json:"npd_receipt_id,omitempty"` // Идентификатор чека в сервисе Url string `json:"url,omitempty"` // Ссылка на зарегистрированный чек Amount *Amount `json:"amount"` // Сумма, указанная в чеке }
Данные чека, зарегистрированного в ФНС.
type IndustryDetails ¶
type Item ¶
type Item struct { Description string `json:"description"` Quantity string `json:"quantity"` Measure string `json:"measure,omitempty"` MarkQuantity *MarkQuantity `json:"mark_quantity,omitempty"` Amount Amount `json:"amount"` VATCode float64 `json:"vat_code"` PaymentSubject string `json:"payment_subject,omitempty"` PaymentMode string `json:"payment_mode,omitempty"` CountryOfOriginCode string `json:"country_of_origin_code,omitempty"` CustomsDeclarationNumber string `json:"customs_declaration_number,omitempty"` Exsize string `json:"exsize,omitempty"` ProductCode string `json:"product_code,omitempty"` MarkCodeInfo *MarkCodeInfo `json:"mark_code_info,omitempty"` MarkMode string `json:"mark_mode,omitempty"` IndustryDetails []IndustryDetails `json:"payment_subject_industry_details,omitempty"` }
Структура для описания элемента в чеке
type ListRequest ¶
type ListRequest struct { CreatedAtGTE time.Time `json:"created_at.gte,omitempty"` CreatedAtGT time.Time `json:"created_at.gt,omitempty"` CreatedAtLTE time.Time `json:"created_at.lte,omitempty"` CreatedAtLT time.Time `json:"created_at.lt,omitempty"` CapturedAtGTE time.Time `json:"captured_at.gte,omitempty"` CapturedAtGT time.Time `json:"captured_at.gt,omitempty"` CapturedAtLTE time.Time `json:"captured_at.lte,omitempty"` CapturedAtLT time.Time `json:"captured_at.lt,omitempty"` PaymentMethod string `json:"payment_method,omitempty"` PaymentID string `json:"payment_id,omitempty"` RefoundID string `json:"refound_id,omitempty"` Status string `json:"status,omitempty"` Limit int `json:"limit,omitempty"` FullTextSearch string `json:"full_text_search"` Cursor string `json:"cursor,omitempty"` }
func (*ListRequest) Query ¶
func (p *ListRequest) Query() string
type MarkCodeInfo ¶
type MarkCodeInfo struct { MarkCodeRaw string `json:"mark_code_raw,omitempty"` Unknown string `json:"unknown,omitempty"` Ean8 string `json:"ean_8,omitempty"` Ean13 string `json:"ean_13,omitempty"` Itf14 string `json:"itf_14,omitempty"` Gs10 string `json:"gs_10,omitempty"` Gs1m string `json:"gs_1m,omitempty"` Short string `json:"short,omitempty"` Fur string `json:"fur,omitempty"` Egais20 string `json:"egais_20,omitempty"` Egais30 string `json:"egais_30,omitempty"` }
type MarkQuantity ¶
type Metadata ¶
Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа).
Ограничения: - максимум 16 ключей, - имя ключа не больше 32 символов, - значение ключа не больше 512 символов
type PayerBankDetails ¶
type PayerBankDetails struct { FullName string `json:"full_name"` ShortName string `json:"short_name"` Address string `json:"address"` Inn string `json:"inn"` BankName string `json:"bank_name"` BankBranch string `json:"bank_branch"` BankBik string `json:"bank_nik"` Account string `json:"account"` Kpp string `json:"kpp,omitempty"` }
Структура для описания данных о банке
type Payment ¶
type Payment struct { ID string `json:"id"` Status string `json:"status"` Paid bool `json:"paid"` Amount Amount `json:"amount"` IncomeAmount *Amount `json:"income_amount,omitempty"` Description string `json:"description,omitempty"` Recipient Recipient `json:"recipient"` PaymentMethod *PaymentMethod `json:"payment_method,omitempty"` CapturedAt string `json:"captured_at,omitempty"` CreatedAt string `json:"created_at"` ExpiresAt string `json:"expires_at,omitempty"` Confirmation *Confirmation `json:"confirmation,omitempty"` Test bool `json:"test"` RefoundedAmount *Amount `json:"refounded_amount,omitempty"` Payed bool `json:"payed"` Refundable bool `json:"refundable"` ReceiptRegistration string `json:"receipt_registration,omitempty"` Metadata Metadata `json:"metadata,omitempty"` CancellationDetails *CancellationDetails `json:"cancellation_details,omitempty"` AuthorizationDetails *AuthorizationDetails `json:"authorization_details"` Transfers []Transfer `json:"transfers,omitempty"` Deal *DealItem `json:"deal,omitempty"` MerchantCustomerID string `json:"merchant_customer_id,omitempty"` }
Информация о платеже возвращаемая сервисом
type PaymentListResponse ¶
type PaymentListResponse struct { Type string `json:"type,omitempty"` Items []Payment `json:"items"` NextCursor string `json:"next_cursor"` }
Ответ на запрос получения списка платежей
type PaymentMethod ¶
type PaymentMethod struct { Type string `json:"type"` // Тип метода оплаты ID string `json:"id"` Saved bool `json:"saved"` Title string `json:"title,omitempty"` Login string `json:"login,omitempty"` Card *Card `json:"card,omitempty"` PayerBankDetails *PayerBankDetails `json:"payer_bank_details,omitempty"` PaymentPurpose string `json:"payment_purpose,omitempty"` VatData *VATData `json:"vat_data,omitempty"` }
Структура для описания метода, используемого для платежа
type PaymentRequest ¶
type PaymentRequest struct { Amount Amount `json:"amount"` Description string `json:"description,omitempty"` Reciept *ReceiptInfo `json:"receipt,omitempty"` Recipient *Recipient `json:"recepient,omitempty"` PaymentToken string `json:"payment_token,omitempty"` PaymentMethodID string `json:"payment_method_id,omitempty"` PaymentMethodData *PaymentMethod `json:"payment_method_data,omitempty"` Confirmation *Confirmation `json:"confirmation,omitempty"` SavePaymentMethod bool `json:"save_payment_method,omitempty"` ClientID string `json:"client_id,omitempty"` Metadata *Metadata `json:"metadata,omitempty"` Airline *Airline `json:"airline,omitempty"` Transfers []Transfer `json:"transfers,omitempty"` Deal *DealItem `json:"deal,omitempty"` MerchantCustomerID string `json:"merchant_customer_id,omitempty"` Capture bool `json:"capture,omitempty"` }
Структура для описания запроса создания платежа
type PaymentWebhook ¶
type Payout ¶
type Payout struct { ID string `json:"id"` // Идентификатор выплаты Amount Amount `json:"amount"` // Сумма выплаты Status string `json:"status"` // Статус PayoutDestination PaymentMethod `json:"payout_destination"` // Платежное средство продавца Description string `json:"description.omitempty"` // Описание транзакции CreatedAt string `json:"created_at"` // Время создания выплаты. Deal *DealItem `json:"deal,omitempty"` // Сделка, в рамках которой нужно провести выплату. SelfEmployed *SelfEmployedID `json:"self_employed,omitempty"` // Данные самозанятого, который получит выплату. Reciept *FNSReciept `json:"reciept,omitempty"` // Данные чека, зарегистрированного в ФНС. CancellationDetails *CancellationDetails `json:"cancellation_details,omitempty"` // Комментарий к статусу canceled Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные, которые нужны вам для работы Test bool `json:"test"` // Признак тестовой операции }
type PayoutRequest ¶
type PayoutRequest struct { Amount Amount `json:"amount"` // Сумма выплаты PayoutDestinationData PaymentMethod `json:"payout_destination_data,omitempty"` // Данные платежного средства, на которое нужно сделать выплату PayoutToken string `json:"payout_token,omitempty"` // Токенизированные данные для выплаты PayoutMethodID string `json:"payment_method_id"` // Идентификатор сохраненного способа оплаты Description string `json:"description,omitempty"` // Описание выплаты Deal *DealItem `json:"deal,omitempty"` // Сделка, в рамках которой нужно провести выплату SelfEmployed *SelfEmployedID `json:"self_employed,omitempty"` // Данные самозанятого, который получит выплату Reciept *FNSReciept `json:"reciept,omitempty"` // Данные чека, зарегистрированного в ФНС PersonalData []string `json:"personal_data"` // Персональные данные получателя выплаты Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные, которые нужны вам для работы }
Структура формирует тело запроса для создания платежа
type PersonalData ¶
type PersonalData struct { ID string `json:"id"` // Идентификатор персональных данных Type string `json:"type"` // Тип персональных данных Status personalDataStatus `json:"status"` // Статус персональных данных CancellationDetails *CancellationDetails `json:"cancellation_details,omitempty"` // Комментарий к статусу canceled CreatedAt string `json:"created_at"` // Время создания персональных данных ExpiresAt string `json:"expires_at,omitempty"` // Срок жизни объекта персональных данных Metadata Metadata `json:"metadata,omitempty"` // Произвольные дополнительные данные }
type PersonalDataRequest ¶
type PersonalDataRequest struct { Type string `json:"type"` // Тип персональных данных FirstName string `json:"first_name"` // Имя пользователя MiddleName string `json:"middle_name,omitempty"` // Отчество пользователя LastName string `json:"last_name"` // Фамилия пользователя Metadata Metadata `json:"metadata,omitempty"` // Произвольные дополнительные данные }
Форма для запроса на сохранение персональных данных в сервисе
type PersonalInfo ¶
type PersonalInfo struct { AccountID string `json:"acoount_id"` Status string `json:"status"` Test bool `json:"test"` FiscalizationEnabled bool `json:"fiscalization_enabled,omitempty"` PaymentMethods []PaymentMethod `json:"payment_methods,omitempty"` Itn string `json:"itn,omitempty"` PayoutMethods []string `json:"payout_methods,omitempty"` Name string `json:"name,omitempty"` PayoutBalance *Amount `json:"payout_balance,omitempty"` }
type Receipt ¶ added in v1.5.0
type Receipt struct { ID string `json:"id"` // Идентификатор чека Type string `json:"type"` // Тип чека в онлайн кассе PaymentID string `json:"payment_id,omitempty"` // Идентификатор платежа RefoundID string `json:"refound_id,omitempty"` // Идентификатор возврата Status string `json:"status"` // Статус доставки данных для чека FiscalDocumentNumber string `json:"fiscal_document_number,omitempty"` // Номер фискального документа FiscalStorageNumber string `json:"fiscal_storage_number,omitempty"` // Номер фискального накопителя FiscalAttribute string `json:"fiscal_attribute,omitempty"` // Признак фискального документа RegisteredAt string `json:"registered_at,omitempty"` // Дата и время формирования чека FiscalProviderID string `json:"fiscal_provider_id,omitempty"` // Идентификатор чека в онлайн-кассе. Items []Item `json:"items"` // Список товаров в чеке Settlements []Settlement `json:"settlements,omitempty"` // Перечень совершенных рассчетов OnBehalfOf string `json:"on_behalf_of"` // Идентификатор магазина, от имени которого нужно отправить чек. TaxSystemCode int `json:"tax_system_code,omitempty"` // Система налогообложения магазина IndustryDetails *RecieptIndustryDetails `json:"receipt_industry_details,omitempty"` // Отраслевой реквизит предмета расчета OperationalDetails *RecieptIndustryDetails `json:"receipt_operational_details,omitempty"` // Операционный реквизит чека }
type ReceiptInfo ¶ added in v1.5.0
type ReceiptInfo struct { Customer *Customer `json:"customer,omitempty"` Items []Item `json:"items,omitempty"` TaxSystemCode int `json:"tax_system_code,omitempty"` RecieptIndustryDetails []RecieptIndustryDetails `json:"receipt_industry_details,omitempty"` ReceiptOperationalDetails *ReceiptOperationalDetails `json:"receipt_operational_details,omitempty"` }
type ReceiptListResponse ¶ added in v1.5.0
type ReceiptRequest ¶ added in v1.5.0
type ReceiptRequest struct { Type string `json:"type"` // Тип чека в онлайн-кассе. PaymentID string `json:"payment_id,omitempty"` // Идентификатор платежа в сервисе RefoundID string `json:"refound_id,omitempty"` // Идентификатор возврата в сервисе Customer Customer `json:"customer"` // Информация о пользователе Items []Item `json:"items"` // Список товаров в чеке Send bool `json:"send"` // Формирование чека в онлайн-кассе сразу после создания объекта чека. TaxSystemCode int `json:"tax_system_code,omitempty"` // Система налогообложения магазина AdditionalUserProps *AdditionalUserProps `json:"additional_user_props,omitempty"` // Дополнительный реквизит пользователя IndustryDetails *RecieptIndustryDetails `json:"receipt_industry_details,omitempty"` // Отраслевой реквизит предмета расчета OperationalDetails *RecieptIndustryDetails `json:"receipt_operational_details,omitempty"` // Операционный реквизит чека Settlements []Settlement `json:"settlements,omitempty"` // Перечень совершенных рассчетов OnBehalfOf string `json:"on_behalf_of"` // Идентификатор магазина, от имени которого нужно отправить чек. }
type RecieptIndustryDetails ¶
type Refound ¶
type Refound struct { ID string `json:"id"` // Идентификатор возврата PaymentID string `json:"payment_id"` // Идентификатор платежа Status string `json:"status"` // Статус возврата CancellationDetails *CancellationDetails `json:"cancellation_details,omitempty"` // Комментарий к возврату CreatedAt string `json:"created_at"` // Время создания возврата Amount Amount `json:"amount"` // Сумма средств возвращенных пользователю Description string `json:"description,omitempty"` // Описание для возврата Sources []Source `json:"sources,omitempty"` // Данные об источниках возврата Deal *DealItem `json:"deal,omitempty"` // Данные о сделке в составе которой происходит возврат }
type RefoundListResponse ¶
type RefoundRequest ¶
type RefoundRequest struct { PaymentID string `json:"payment_id"` // Идентификатор платежа Amount Amount `json:"amount"` // Сумма средств возвращенных пользователю Description string `json:"description,omitempty"` // Описание для возврата Sources []Source `json:"sources,omitempty"` // Данные об источниках возврата Deal *DealItem `json:"deal,omitempty"` // Данные о сделке в составе которой происходит возврат }
type SBPItem ¶
type SBPItem struct { ID string `json:"bank_id"` // Идентификатор банка Name string `json:"name"` // Название банка }
Элемент списка банков участников системы быстрых платежей
type SBPList ¶
type SBPList struct { Type string `json:"type"` Items []SBPItem `json:"items"` // Список банков участников отсортированный по уменьшению идентификатора }
Список банков участвующих в системе быстрых платежей
type SelfEmployed ¶
type SelfEmployed struct { ID string `json:"id"` // Идентификатор самозанятого Status selfEmployedStatus `json:"status"` // Статус самозанятого CreatedAt string `json:"created_at"` // Время создания объекта Itn string `json:"itn,omitempty"` // ИНН самозанятого Phone string `json:"phone,omitempty"` // Телефон самозанятого Confirmation *Confirmation `json:"confirmation,omitempty"` // Сценарий проверки Description string `json:"description,omitempty"` // Описание самозанятого (не более 128 символов) Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные Test bool `json:"test"` // Признак тестовой сделки }
type SelfEmployedID ¶
type SelfEmployedID struct {
ID string `json:"id"`
}
type SelfEmployedRequest ¶
type SelfEmployedRequest struct { Itn string `json:"itn,omitempty"` // ИНН самозанятого Phone string `json:"phone,omitempty"` // Телефон самозанятого Confirmation *Confirmation `json:"confirmation,omitempty"` // Сценарий проверки Description string `json:"description,omitempty"` // Описание самозанятого (не более 128 символов) Metadata Metadata `json:"metadata,omitempty"` // Любые дополнительные данные }
type Settlement ¶
type Source ¶
type Source struct { AccountID string `json:"account_id"` // Идентификатор аккаунта Amount Amount `json:"amount"` // Сумма возврата PaymentFeeAmount *Amount `json:"payment_fee_amount,omitempty"` // Коммисия, которую вы удержали при оплате }
Структура описывает источники, из которых берутся деньги для возврата
type ThreeDSecure ¶
type ThreeDSecure struct {
Applied bool `json:"applied"`
}
type VATData ¶
type VATData struct { Type string `json:"type"` Amount *Amount `json:"amount,omitempty"` Rate string `json:"rate,omitempty"` }
Структура для рассчета налога
type Webhook ¶
type Webhook struct { ID string `json:"id"` // Идентификатор webhook Event string `json:"event"` // Событие, о котором уведомляет ЮKassa URL string `json:"url"` // URL, на который ЮKassa отправляет уведомления }
Структура Webhook содержит информацию о подписке на одно событие
type WebhookListResponse ¶
type WebhookRequest ¶
type WebhookRequest struct { Event string `json:"event"` // Событие, о котором уведомляет ЮKassa URL string `json:"url"` // URL, на который ЮKassa отправляет уведомления }
Структура содержит параметры для запроса на создание Webhook